因为Saltstack自己的repo源是在国外,在国内服务器yum安装Saltstack的时候下载软件包就非常慢,很多情况下还经常下载失败,其实软件包总大小只有10M左右,如果这样安装多台minion客户端就需要耗费不少时间;当然国内也有不少EPEL源提供yum安装Saltstack,但是测试了几个,发现安装的Saltstack都不是最新版。

所以,决定自己搭建一个Saltstack的repo软件源,供内部多台客户端安装minion用,在此记录一下搭建过程,以便后期挪用:

1、准备一台服务器做repo软件源的服务器

1
主机IP:192.168.0.130     操作系统:CentOS 6.8 x64

2、去Saltstack官网找对应操作系统的repo源进行yum安装,我这边操作系统都为CentOS 6.8,所以选择安装了CentOS 6的repo源

1
yum install https://repo.saltstack.com/yum/redhat/salt-repo-latest-1.el6.noarch.rpm

3、创建要存放rpm软件的目录

1
# mkdir /yumsalt

4、安装createrepo和yum-utils工具,主要用作下载官方的repo源对应的软件包和制作独立软件源仓库的命令。

1
# yum install createrepo yum-utils -y

5、yum repolist查看saltstack的仓库标识,因为之前安装过官网的repo源,找出saltstack的仓库标示为salt-latest

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@master /]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirror.premi.st
* extras: mirrors.aliyun.com
* updates: mirrors.163.com
repo id repo name status
base CentOS-6 - Base 6,696
epel Extra Packages for Enterprise Linux 6 - x86_64 12,345
extras CentOS-6 - Extras 64
salt-latest SaltStack Latest Release Channel for RHEL/Centos 6 120
updates CentOS-6 - Updates 959

6、将salt-latest仓库里源对应的rpm软件包下载至/yumsalt目录

1
# reposync -r salt-latest /yumsalt

因为官方的repo源是在国外的,建议这台服务器连接国外VPN来下载,漫长的等待....总共会下载87个rpm包,大概22M

下载完毕,查看/yumsalt目录中已下载的目录文件,salt-latest目录中就是下载的rpm包

1
2
3
[root@localhost /]# ll /yumsalt/
total 24
drwxr-xr-x. 2 root root 12288 Mar 10 14:30 salt-latest

7、将整个/yumsalt做出一个独立的仓库

1
# createrepo /yumsalt/

再次查看/yumsalt目录,会发现多了repodata,这是仓库的索引目录

1
2
3
4
[root@localhost /]# ll /yumsalt/
total 24
drwxr-xr-x. 2 root root 4096 Mar 10 14:33 repodata
drwxr-xr-x. 2 root root 12288 Mar 10 14:30 salt-latest

8、建立一个完整的repo仓库文件

1
2
3
4
5
6
7
# rm -rf /etc/yum.repos.d/salt-latest.repo    //先删除官网的仓库文件,已经用完了..
# vi /etc/yum.repos.d/salt-new.repo
[salt]
name=salt
baseurl=file:///yumsalt/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/saltstack-signing-key

saltstack-signing-key是验证key文件,yum安装salt时需要验证软件包的,这个在安装官网repo源的时候自动下载到/etc/pki/rpm-gpg目录了。

9、尝试在本机yum安装salt-master和salt-minion,如果以上步骤都正确,那么已经可以用本地的repo仓库安装saltstack了

1
yum install salt-master salt-minion -y

注:如不想在本机直接测试安装saltstack,可以忽略第8、9步

10、发布本机自建repo仓库

本机已经可以用了,但是想让其他客户端服务器也能用这个本机上的repo源安装saltstack,就需要把本机的repo仓库通过Apache服务发布出去

安装Apache

1
# yum install httpd -y

创建软链接:

1
# ln -sv /yumsalt/ /var/www/html/salt

启动httpd服务,并设置为开机自启动

1
2
# service httpd start
# chkconfig httpd on

到/yumsalt仓库目录,vi新建一个repo仓库文件,供客户端服务器下载调用(请修改下面IP为自己本地repo源服务器的IP)

1
2
3
4
5
6
7
8
[root@localhost yumsalt]# pwd
/yumsalt
[root@localhost yumsalt]# vi salt-new.repo
[salt]
name=salt
baseurl=http://192.168.0.130/salt/
gpgcheck=1
gpgkey=http://192.168.0.130/salt/saltstack-signing-key

复制saltstack-signing-key到/yumsalt/目录下

1
# cp /etc/pki/rpm-gpg/saltstack-signing-key /yumsalt/

再查看/yumsalt目录,应该有下面2个目录和2个文件

1
2
3
4
5
6
[root@localhost /]# ll /yumsalt/
total 24
drwxr-xr-x. 2 root root 4096 Mar 10 14:33 repodata
drwxr-xr-x. 2 root root 12288 Mar 10 14:30 salt-latest
-rw-r--r-- 1 root root 116 Mar 10 15:13 salt-new.repo
-rw-r--r-- 1 root root 1744 Mar 10 15:01 saltstack-signing-key

再用浏览器访问:http://192.168.0.130/salt/,出现下面界面,说明repo源仓库发布成功

11、客户端使用发布的repo源安装salt-minion

进入/etc/yum.repos.d目录,下载repo源服务器上repo源

1
2
3
[root@mail yum.repos.d]# pwd
/etc/yum.repos.d
[root@mail yum.repos.d]# wget http://192.168.0.130/salt/salt-new.repo

OK....现在客户端服务器已经可以使用发布的自建仓库源yum install salt-minion -y安装了

自建Saltstack的repo软件源仓库的更多相关文章

  1. 为 Virtual Box 中的 CentOS 6.6 配置本地DVD光盘做yum软件源

    因为virtual box 中的centos配置host-only共享win7上网,配置失败,所以只能使用Centos的 DVD 光盘来配置yum软件源.不然就没得完了. 1. 首先要在virtual ...

  2. yum管理——搭建iso镜像私有yum源仓库(1)

    在服务器上一般是没有光驱的,那么我们怎么制作iso本地repo镜像源仓库? 通过本地iso镜像,copy到linux系统中一个目录中,进行伪文件系统挂载,执行如下命令: 挂载:mount -o loo ...

  3. Linux软件源apt 仓库 包 的概念

    概念介绍: 软件源是debian系的概念,把软件放在一个pool里面,用一条命令就可以自动从指定服务器下载并安装. 源列表是/etc/apt/sources.list,里面写了你所用的服务器地址 (其 ...

  4. yum源仓库的三种搭建方式

    yum源的三种搭建方式 一.  本地yum仓库的搭建 1.1.获取软件包资源 将iso镜像挂载在本地目录中,此次挂载目录为/var/www/html/repo/,此目录本身不存在,需要创建.软件宝资源 ...

  5. 自制 yum 源仓库

    转自:https://www.cnblogs.com/marility/p/7278374.html 背景 客户服务器为内网机器,centos7系统,且无法与外网连接.需要部署对应的LANMP环境及其 ...

  6. 自行制作yum源仓库

    背景 客户服务器为内网机器,centos7系统,且无法与外网连接.需要部署对应的LANMP环境及其它软件 解决思路 1.在阿里云服务器,利用阿里云的yum源仓库,下载对应软件及关联软件. 2.在客户机 ...

  7. CENTOS YUM软件源

    CentOS 7.0 使用 YUM 安装 MySQL 报错 问题现象 CentOS 7.0 使用 YUM 安装 MySQL 时出现类似如下错误信息: File contains no section ...

  8. linux软件源配置

     实操(虚拟机安装): 下载VMware,然后按照如下教程安装虚拟机: https://jingyan.baidu.com/article/c275f6ba07e269e33d756714.html ...

  9. 为RHEL6配置软件源 YUM安装

    为RHEL6配置软件源(一)更改yum由于 redhat的yum在线更新是收费的,如果没有注册的话不能使用,如果要使用,需将redhat的yum卸载后,重启安装,再配置其他源,以下为详细过程:1.删除 ...

随机推荐

  1. Flask应用部署

    1. 介绍 前面介绍了<Linux下Nginx使用>, 但是Nginx是一个提供静态文件访问的web服务 首先我们介绍一下Web服务器, 应用服务器和应用框架的关系 客户端: 浏览器或者a ...

  2. 常见协议基础知识总结--DHCP协议

    DHCP动态主机配置协议,简单点说,就是提供了自动获取ip地址的功能,基于四层的UDP协议: 以下描述此协议的整个工作流程: (1) 客户端发送discovery报文,二三层广播报文,源ip地址全0: ...

  3. 网络知识===cookie 、session、JSESSIONID的区别

    cookie .session ? 让我们用几个例子来描述一下cookie和session机制之间的区别与联系.笔者曾经常去的一家咖啡店有喝5杯咖啡免费赠一杯咖啡的优惠,然而一次性消费5杯咖啡的机会微 ...

  4. 时间戳 JS PHP MYSQL

    Unix 时间戳  Unix timestamp ('1970-01-01 00:00:00' GMT 之后的秒数) JS var strtime = '2014-04-23 18:55:49:123 ...

  5. win32 读取文本文件,并进行字符串分割和存储

    //分割字符      char *p;//p存放临时行指针 q存放临时每一行的列指针      char *hang[100]={0};//存储第一行      char *lie[300]={0} ...

  6. processEngine.getRuntimeService().createProcessInstanceQuery().processInstanceId(“ 132501”).active().singleResult();

    JAVA: processEngine.getRuntimeService().createProcessInstanceQuery().processInstanceId(“ 132501”).ac ...

  7. hdu 5191(思路题)

    Building Blocks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)T ...

  8. 使用 gulp 编译 Sass

    无论是 node-sass 还是 ruby-sass 使用 npm 安装都非常的慢,甚至会装不上.及其不利于团队协作.建议使用 less 作为 css 预处理器. 如果因为 less 不支持自定义函数 ...

  9. MySQL 使用硬链接配合truncate 删除2.2T的表

    1 创建tmp 表并 rename 表 mysql> rename table ep to ep_bak; Query OK, 0 rows affected (0.07 sec) mysql& ...

  10. ubantu对pycharm创建快捷方式

    如果你刚开始没有建立快捷方式自己建立一个快捷方式,方法如下 终端输入:sudo gedit /usr/share/applications/Pycharm.desktop粘贴模板: [Desktop ...