分享

CentOS 8.2上安装部署SaltStack Master和 Minion

 Coder编程 2022-05-19 发布于北京

在本文中,您将学习如何在CentOS 8上安装SaltStack Master和 SaltStack Minion。

环境规格:

SaltStack Master配置

  • CPU -3.4 GHz(2核)

  • 内存-4 GB

  • 储存空间-50 GB

  • 作业系统-CentOS 8.2

  • 主机名– saltstack-master.

  • IP地址-192.168.6.175/24

    SaltStack Minion配置

  • CPU -3.4 GHz(2核)

  • 内存-4 GB

  • 储存空间-50 GB

  • 作业系统-CentOS 8.2

  • 主机名– saltstack-minion.

  • IP地址-192.168.6.190/24

    SaltStack Master和Minion hostname修改

    [root@Master yum.repos.d]# hostnamectl set-hostname saltstack-master.
    [root@Minion yum.repos.d]# hostnamectl set-hostname saltstack-minion.
    
    

    SaltStack Master和Minion hosts修改

    [root@saltstack-master yum.repos.d]# cat /etc/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.168.6.175 saltstack-master.
    192.168.6.190 saltstack-minion.
    
    
    [root@saltstack-minion ~]# cat  /etc/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.168.6.175 saltstack-master.
    192.168.6.190 saltstack-minion.
    
    

第一步:什么是SaltStack Master

SaltStack或Salt是基于Python的开源软件,用于基于事件的IT自动化,远程任务执行和配置管理。SaltStack支持“基础架构即代码”方法来进行数据中心系统和网络的部署和管理,配置自动化,SecOps编排,漏洞修复以及混合云控制。(维基百科提供

SaltStack Master是服务器节点,它是控制所有Salstack Minions的中央服务器。Saltstack Master拥有SaltStack奴才的清单和公钥,并对这些奴才执行远程执行。

第二步:更新SaltStack Master CentOS 8软件包

使用ssh工具以root用户身份与saltstack-master.连接。

将所有现有软件包更新为最新的可用版本。

[root@saltstack-master ~]# dnf update -y
...
Upgraded:
  NetworkManager-1:1.22.8-5.el8_2.x86_64
  NetworkManager-libnm-1:1.22.8-5.el8_2.x86_64
  NetworkManager-team-1:1.22.8-5.el8_2.x86_64
  NetworkManager-tui-1:1.22.8-5.el8_2.x86_64
  bind-export-libs-32:9.11.13-5.el8_2.x86_64
  dbus-1:1.12.8-10.el8_2.x86_64
  dbus-common-1:1.12.8-10.el8_2.noarch
  dbus-daemon-1:1.12.8-10.el8_2.x86_64
  dbus-libs-1:1.12.8-10.el8_2.x86_64
  dbus-tools-1:1.12.8-10.el8_2.x86_64
  dnf-4.2.17-7.el8_2.noarch
  dnf-data-4.2.17-7.el8_2.noarch
  gnutls-3.6.8-11.el8_2.x86_64
  grub2-common-1:2.02-87.el8_2.noarch
  grub2-pc-1:2.02-87.el8_2.x86_64
  grub2-pc-modules-1:2.02-87.el8_2.noarch
  grub2-tools-1:2.02-87.el8_2.x86_64
  grub2-tools-efi-1:2.02-87.el8_2.x86_64
  grub2-tools-extra-1:2.02-87.el8_2.x86_64
  grub2-tools-minimal-1:2.02-87.el8_2.x86_64
  iptables-1.8.4-10.el8_2.1.x86_64
  iptables-ebtables-1.8.4-10.el8_2.1.x86_64
  iptables-libs-1.8.4-10.el8_2.1.x86_64
  kernel-tools-4.18.0-193.14.2.el8_2.x86_64
  kernel-tools-libs-4.18.0-193.14.2.el8_2.x86_64
  libdnf-0.39.1-6.el8_2.x86_64
  libnghttp2-1.33.0-3.el8_2.1.x86_64
  microcode_ctl-4:20191115-4.20200609.1.el8_2.x86_64
  open-vm-tools-11.0.5-3.el8.x86_64
  python3-dnf-4.2.17-7.el8_2.noarch
  python3-hawkey-0.39.1-6.el8_2.x86_64
  python3-libdnf-0.39.1-6.el8_2.x86_64
  python3-perf-4.18.0-193.14.2.el8_2.x86_64
  selinux-policy-3.14.3-41.el8_2.5.noarch
  selinux-policy-targeted-3.14.3-41.el8_2.5.noarch
  systemd-239-31.el8_2.2.x86_64
  systemd-libs-239-31.el8_2.2.x86_64
  systemd-pam-239-31.el8_2.2.x86_64
  systemd-udev-239-31.el8_2.2.x86_64
  yum-4.2.17-7.el8_2.noarch

Installed:
  kernel-4.18.0-193.14.2.el8_2.x86_64
  kernel-core-4.18.0-193.14.2.el8_2.x86_64
  kernel-modules-4.18.0-193.14.2.el8_2.x86_64

Removed:
  kernel-4.18.0-147.5.1.el8_1.x86_64
  kernel-core-4.18.0-147.5.1.el8_1.x86_64
  kernel-modules-4.18.0-147.5.1.el8_1.x86_64

Complete!

我们的CentOS 8软件包已成功更新。

第三步:SaltStack Master上安装Python

SaltStack用Python编写,因此,它需要Python语言支持才能编译和执行SaltStack命令。

Python3在默认的CentOS AppStream中可用,因此,我们可以使用dnf命令安装它。

[root@saltstack-master src]# dnf install -y python3
Last metadata expiration check: 0:16:42 ago on Tue 11 Aug 2020 12:07:17 AM PKT.
Dependencies resolved.
================================================================================
 Package            Arch   Version                              Repo       Size
================================================================================
Installing:
 python36           x86_64 3.6.8-2.module_el8.1.0+245+c39af44f  AppStream  19 k
Installing dependencies:
 python3-pip        noarch 9.0.3-16.el8                         AppStream  19 k
 python3-setuptools noarch 39.2.0-5.el8                         BaseOS    162 k
Enabling module streams:
 python36                  3.6

Transaction Summary
================================================================================
Install  3 Packages

Total download size: 201 k
Installed size: 466 k
Downloading Packages:
(1/3): python3-setuptools-39.2.0-5.el8.noarch.r 658 kB/s | 162 kB     00:00
(2/3): python3-pip-9.0.3-16.el8.noarch.rpm      641  B/s |  19 kB     00:31
(3/3): python36-3.6.8-2.module_el8.1.0+245+c39a 627  B/s |  19 kB     00:31
--------------------------------------------------------------------------------
Total                                           6.2 kB/s | 201 kB     00:32
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                        1/1
  Installing       : python3-setuptools-39.2.0-5.el8.noarch                 1/3
  Installing       : python36-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64    2/3
  Running scriptlet: python36-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64    2/3
  Installing       : python3-pip-9.0.3-16.el8.noarch                        3/3
  Running scriptlet: python3-pip-9.0.3-16.el8.noarch                        3/3
  Verifying        : python3-pip-9.0.3-16.el8.noarch                        1/3
  Verifying        : python36-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64    2/3
  Verifying        : python3-setuptools-39.2.0-5.el8.noarch                 3/3

Installed:
  python3-pip-9.0.3-16.el8.noarch
  python3-setuptools-39.2.0-5.el8.noarch
  python36-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64

Complete!

Python 3.6已安装在CentOS 8服务器上。

第四步:CentOS 8上安装SaltStack官方Yum存储库

尽管可以通过EPEL(企业Linux的额外软件包) yum存储库获得SaltStack软件包。但是,如果要安装最新版本,则应安装SaltStack的官方yum存储库。

使用以下命令在CentOS 8上安装SaltStack官方yum存储库。

[root@saltstack-master yum.repos.d]# wget https://repo./py3/redhat/salt-py3-repo-latest.el8.noarch.rpm
[root@saltstack-master yum.repos.d]# dnf -y install salt-py3-repo-latest.el8.noarch.rpm
Last metadata expiration check: 1 day, 1:25:58 ago on Tue 15 Dec 2020 08:46:52 PM CST.
Dependencies resolved.
============================================================================================================================
 Package                        Architecture            Version                         Repository                     Size
============================================================================================================================
Installing:
 salt-py3-repo                  noarch                  latest-4.el8                    @commandline                  8.9 k

Transaction Summary
============================================================================================================================
Install  1 Package

Total size: 8.9 k
Installed size: 2.0 k
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                    1/1 
  Installing       : salt-py3-repo-latest-4.el8.noarch                                                                  1/1 
  Verifying        : salt-py3-repo-latest-4.el8.noarch                                                                  1/1 
Installed products updated.

Installed:
  salt-py3-repo-latest-4.el8.noarch                                                                                         

Complete!
[root@saltstack-master yum.repos.d]# 

为新安装的yum存储库构建缓存。

[root@saltstack-master yum.repos.d]# dnf makecache
CentOS-8 - Base - mirrors.tongdun.cn                                                        2.1 MB/s | 3.9 kB     00:00    
CentOS-8 - Extras - mirrors.tongdun.cn                                                      1.1 MB/s | 1.5 kB     00:00    
CentOS-8 - AppStream - mirrors.tongdun.cn                                                   2.6 MB/s | 4.3 kB     00:00    
Extra Packages for Enterprise Linux 8 - x86_64                                              3.0 MB/s | 4.7 kB     00:00    
Extra Packages for Enterprise Linux 8 - x86_64 - Debug                                      1.6 MB/s | 3.0 kB     00:00

第五步:CentOS 8上安装SaltStack Master

我们添加了SaltStack yum存储库,现在我们可以使用dnf命令轻松安装SaltStack软件包的最新版本。

安装SaltStack主服务器所需的必要的SaltStack软件包。

[root@saltstack-master yum.repos.d]# dnf install -y salt-master salt-minion salt-ssh salt-syndic salt-cloud salt-api
Last metadata expiration check: 0:00:58 ago on Wed 16 Dec 2020 10:22:18 PM CST.
Dependencies resolved.
============================================================================================================================
 Package                          Architecture   Version                                      Repository               Size
============================================================================================================================
Installing:
 salt-api                         noarch         3002.2-1.el8                                 salt-py3-latest          24 k
 salt-cloud                       noarch         3002.2-1.el8                                 salt-py3-latest          27 k
 salt-master                      noarch         3002.2-1.el8                                 salt-py3-latest         3.1 M
 salt-minion                      noarch         3002.2-1.el8                                 salt-py3-latest          43 k
 salt-ssh                         noarch         3002.2-1.el8                                 salt-py3-latest          25 k
 salt-syndic                      noarch         3002.2-1.el8                                 salt-py3-latest          24 k
Upgrading:
 dnf-plugins-core                 noarch         4.0.12-4.el8_2                               base                     64 k
 python3-dnf-plugins-core         noarch         4.0.12-4.el8_2                               base                    204 k
Installing dependencies:
 libsodium                        x86_64         1.0.18-2.el8                                 epel                    162 k
 libunwind                        x86_64         1.3.1-3.el8                                  epel                     75 k
 openpgm                          x86_64         5.2.122-21.el8                               epel                    180 k
 python3-babel                    noarch         2.5.1-5.el8                                  AppStream               4.8 M
 python3-cheroot                  noarch         8.2.1-1.el8                                  epel                    145 k
 python3-cherrypy                 noarch         18.4.0-1.el8                                 epel                    384 k
 python3-distro                   noarch         1.4.0-2.module_el8.1.0+245+c39af44f          AppStream                37 k
 python3-jaraco                   noarch         6.2-6.el8                                    epel                     11 k
 python3-jaraco-functools         noarch         2.0-4.el8                                    epel                     18 k
 python3-jinja2                   noarch         2.10.1-2.el8_0                               AppStream               538 k
 python3-libcloud                 noarch         2.4.0-1.el8                                  salt-py3-latest         1.4 M
 python3-m2crypto                 x86_64         0.35.2-5.el8                                 epel                    303 k
 python3-markupsafe               x86_64         0.23-19.el8                                  AppStream                39 k
 python3-more-itertools           noarch         7.2.0-3.el8                                  epel                     59 k
 python3-msgpack                  x86_64         0.6.2-1.el8                                  epel                     92 k
 python3-portend                  noarch         2.6-1.el8                                    epel                     16 k
 python3-psutil                   x86_64         5.6.3-5.el8                                  epel                    396 k
 python3-tempora                  noarch         1.14.1-5.el8                                 epel                     29 k
 python3-trustme                  noarch         0.6.0-4.el8                                  epel                     27 k
 python3-zc-lockfile              noarch         2.0-2.el8                                    epel                     23 k
 python3-zmq                      x86_64         19.0.0-1.el8                                 epel                    418 k
 salt                             noarch         3002.2-1.el8                                 salt-py3-latest          10 M
 yum-utils                        noarch         4.0.12-4.el8_2                               base                     66 k
 zeromq                           x86_64         4.3.3-1.el8                                  epel                    478 k

Transaction Summary
============================================================================================================================
Install  30 Packages
Upgrade   2 Packages

Total download size: 24 M
Downloading Packages:
(1/32): yum-utils-4.0.12-4.el8_2.noarch.rpm                                                 3.5 MB/s |  66 kB     00:00    
(2/32): python3-distro-1.4.0-2.module_el8.1.0+245+c39af44f.noarch.rpm                       937 kB/s |  37 kB     00:00    
(3/32): python3-jinja2-2.10.1-2.el8_0.noarch.rpm                                             14 MB/s | 538 kB     00:00    
(4/32): python3-markupsafe-0.23-19.el8.x86_64.rpm                                           2.2 MB/s |  39 kB     00:00    
(5/32): libunwind-1.3.1-3.el8.x86_64.rpm                                                    5.0 MB/s |  75 kB     00:00    
(6/32): libsodium-1.0.18-2.el8.x86_64.rpm                                                   6.6 MB/s | 162 kB     00:00    
(7/32): openpgm-5.2.122-21.el8.x86_64.rpm                                                   7.6 MB/s | 180 kB     00:00    
(8/32): python3-babel-2.5.1-5.el8.noarch.rpm                                                 38 MB/s | 4.8 MB     00:00    
(9/32): python3-cheroot-8.2.1-1.el8.noarch.rpm                                              2.9 MB/s | 145 kB     00:00    
(10/32): python3-jaraco-6.2-6.el8.noarch.rpm                                                5.5 MB/s |  11 kB     00:00    
(11/32): python3-jaraco-functools-2.0-4.el8.noarch.rpm                                      8.3 MB/s |  18 kB     00:00    
(12/32): python3-cherrypy-18.4.0-1.el8.noarch.rpm                                           9.9 MB/s | 384 kB     00:00    
(13/32): python3-msgpack-0.6.2-1.el8.x86_64.rpm                                             7.8 MB/s |  92 kB     00:00    
(14/32): python3-portend-2.6-1.el8.noarch.rpm                                               4.6 MB/s |  16 kB     00:00    
(15/32): python3-more-itertools-7.2.0-3.el8.noarch.rpm                                      2.9 MB/s |  59 kB     00:00    
(16/32): python3-m2crypto-0.35.2-5.el8.x86_64.rpm                                            13 MB/s | 303 kB     00:00    
(17/32): python3-tempora-1.14.1-5.el8.noarch.rpm                                             11 MB/s |  29 kB     00:00    
(18/32): python3-zc-lockfile-2.0-2.el8.noarch.rpm                                           1.7 MB/s |  23 kB     00:00    
(19/32): python3-trustme-0.6.0-4.el8.noarch.rpm                                             1.8 MB/s |  27 kB     00:00    
(20/32): python3-psutil-5.6.3-5.el8.x86_64.rpm                                               16 MB/s | 396 kB     00:00    
(21/32): python3-zmq-19.0.0-1.el8.x86_64.rpm                                                 18 MB/s | 418 kB     00:00    
(22/32): zeromq-4.3.3-1.el8.x86_64.rpm                                                       13 MB/s | 478 kB     00:00    
(23/32): salt-api-3002.2-1.el8.noarch.rpm                                                    12 kB/s |  24 kB     00:01    
(24/32): salt-cloud-3002.2-1.el8.noarch.rpm                                                  22 kB/s |  27 kB     00:01    
(25/32): python3-libcloud-2.4.0-1.el8.noarch.rpm                                               124 kB/s | 1.4 MB     00:11    
(26/32): salt-minion-3002.2-1.el8.noarch.rpm                                                    33 kB/s |  43 kB     00:01    
(27/32): salt-master-3002.2-1.el8.noarch.rpm                                                   322 kB/s | 3.1 MB     00:09    
(28/32): salt-ssh-3002.2-1.el8.noarch.rpm                                                       55 kB/s |  25 kB     00:00    
(29/32): dnf-plugins-core-4.0.12-4.el8_2.noarch.rpm                                             21 MB/s |  64 kB     00:00    
(30/32): python3-dnf-plugins-core-4.0.12-4.el8_2.noarch.rpm                                     38 MB/s | 204 kB     00:00    
(31/32): salt-syndic-3002.2-1.el8.noarch.rpm                                                    40 kB/s |  24 kB     00:00    
(32/32): salt-3002.2-1.el8.noarch.rpm                                                          373 kB/s |  10 MB     00:28    
-------------------------------------------------------------------------------------------------------------------------------
Total                                                                                          833 kB/s |  24 MB     00:29     
warning: /var/cache/dnf/salt-py3-latest-ab32c742cbd8c211/packages/python3-libcloud-2.4.0-1.el8.noarch.rpm: Header V4 RSA/SHA256 Signature, key ID de57bfbe: NOKEY
SaltStack Latest Release Channel Python 3 for RHEL/Centos 8                                    1.7 MB/s | 1.7 kB     00:00    
Importing GPG key 0xDE57BFBE:
 Userid     : "SaltStack Packaging Team <packaging@>"
 Fingerprint: 754A 1A7A E731 F165 D5E6 D4BD 0E08 A149 DE57 BFBE
 From       : /etc/pki/rpm-gpg/saltstack-signing-key
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                       1/1 
  Installing       : python3-more-itertools-7.2.0-3.el8.noarch                                                            1/34 
  Installing       : python3-markupsafe-0.23-19.el8.x86_64                                                                2/34 
  Upgrading        : python3-dnf-plugins-core-4.0.12-4.el8_2.noarch                                                       3/34 
  Upgrading        : dnf-plugins-core-4.0.12-4.el8_2.noarch                                                               4/34 
  Installing       : yum-utils-4.0.12-4.el8_2.noarch                                                                      5/34 
  Installing       : python3-libcloud-2.4.0-1.el8.noarch                                                                  6/34 
  Installing       : python3-zc-lockfile-2.0-2.el8.noarch                                                                 7/34 
  Installing       : python3-trustme-0.6.0-4.el8.noarch                                                                   8/34 
  Installing       : python3-psutil-5.6.3-5.el8.x86_64                                                                    9/34 
  Installing       : python3-msgpack-0.6.2-1.el8.x86_64                                                                  10/34 
  Installing       : python3-m2crypto-0.35.2-5.el8.x86_64                                                                11/34 
  Installing       : python3-jaraco-6.2-6.el8.noarch                                                                     12/34 
  Installing       : python3-jaraco-functools-2.0-4.el8.noarch                                                           13/34 
  Installing       : python3-cheroot-8.2.1-1.el8.noarch                                                                  14/34 
  Installing       : python3-tempora-1.14.1-5.el8.noarch                                                                 15/34 
  Installing       : python3-portend-2.6-1.el8.noarch                                                                    16/34 
  Installing       : python3-cherrypy-18.4.0-1.el8.noarch                                                                17/34 
  Installing       : openpgm-5.2.122-21.el8.x86_64                                                                       18/34 
  Installing       : libunwind-1.3.1-3.el8.x86_64                                                                        19/34 
  Installing       : libsodium-1.0.18-2.el8.x86_64                                                                       20/34 
  Installing       : zeromq-4.3.3-1.el8.x86_64                                                                           21/34 
  Installing       : python3-zmq-19.0.0-1.el8.x86_64                                                                     22/34 
  Installing       : python3-distro-1.4.0-2.module_el8.1.0+245+c39af44f.noarch                                           23/34 
  Installing       : python3-babel-2.5.1-5.el8.noarch                                                                    24/34 
  Installing       : python3-jinja2-2.10.1-2.el8_0.noarch                                                                25/34 
  Installing       : salt-3002.2-1.el8.noarch                                                                            26/34 
  Installing       : salt-master-3002.2-1.el8.noarch                                                                     27/34 
  Running scriptlet: salt-master-3002.2-1.el8.noarch                                                                     27/34 
  Installing       : salt-api-3002.2-1.el8.noarch                                                                        28/34 
  Running scriptlet: salt-api-3002.2-1.el8.noarch                                                                        28/34 
  Installing       : salt-cloud-3002.2-1.el8.noarch                                                                      29/34 
  Installing       : salt-syndic-3002.2-1.el8.noarch                                                                     30/34 
  Running scriptlet: salt-syndic-3002.2-1.el8.noarch                                                                     30/34 
  Installing       : salt-minion-3002.2-1.el8.noarch                                                                     31/34 
  Running scriptlet: salt-minion-3002.2-1.el8.noarch                                                                     31/34 
  Installing       : salt-ssh-3002.2-1.el8.noarch                                                                        32/34 
  Cleanup          : dnf-plugins-core-4.0.12-3.el8.noarch                                                                33/34 
  Cleanup          : python3-dnf-plugins-core-4.0.12-3.el8.noarch                                                        34/34 
  Running scriptlet: python3-dnf-plugins-core-4.0.12-3.el8.noarch                                                        34/34 
  Verifying        : yum-utils-4.0.12-4.el8_2.noarch                                                                      1/34 
  Verifying        : python3-babel-2.5.1-5.el8.noarch                                                                     2/34 
  Verifying        : python3-distro-1.4.0-2.module_el8.1.0+245+c39af44f.noarch                                            3/34 
  Verifying        : python3-jinja2-2.10.1-2.el8_0.noarch                                                                 4/34 
  Verifying        : python3-markupsafe-0.23-19.el8.x86_64                                                                5/34 
  Verifying        : libsodium-1.0.18-2.el8.x86_64                                                                        6/34 
  Verifying        : libunwind-1.3.1-3.el8.x86_64                                                                         7/34 
  Verifying        : openpgm-5.2.122-21.el8.x86_64                                                                        8/34 
  Verifying        : python3-cheroot-8.2.1-1.el8.noarch                                                                   9/34 
  Verifying        : python3-cherrypy-18.4.0-1.el8.noarch                                                                10/34 
  Verifying        : python3-jaraco-6.2-6.el8.noarch                                                                     11/34 
  Verifying        : python3-jaraco-functools-2.0-4.el8.noarch                                                           12/34 
  Verifying        : python3-m2crypto-0.35.2-5.el8.x86_64                                                                13/34 
  Verifying        : python3-more-itertools-7.2.0-3.el8.noarch                                                           14/34 
  Verifying        : python3-msgpack-0.6.2-1.el8.x86_64                                                                  15/34 
  Verifying        : python3-portend-2.6-1.el8.noarch                                                                    16/34 
  Verifying        : python3-psutil-5.6.3-5.el8.x86_64                                                                   17/34 
  Verifying        : python3-tempora-1.14.1-5.el8.noarch                                                                 18/34 
  Verifying        : python3-trustme-0.6.0-4.el8.noarch                                                                  19/34 
  Verifying        : python3-zc-lockfile-2.0-2.el8.noarch                                                                20/34 
  Verifying        : python3-zmq-19.0.0-1.el8.x86_64                                                                     21/34 
  Verifying        : zeromq-4.3.3-1.el8.x86_64                                                                           22/34 
  Verifying        : python3-libcloud-2.4.0-1.el8.noarch                                                                 23/34 
  Verifying        : salt-3002.2-1.el8.noarch                                                                            24/34 
  Verifying        : salt-api-3002.2-1.el8.noarch                                                                        25/34 
  Verifying        : salt-cloud-3002.2-1.el8.noarch                                                                      26/34 
  Verifying        : salt-master-3002.2-1.el8.noarch                                                                     27/34 
  Verifying        : salt-minion-3002.2-1.el8.noarch                                                                     28/34 
  Verifying        : salt-ssh-3002.2-1.el8.noarch                                                                        29/34 
  Verifying        : salt-syndic-3002.2-1.el8.noarch                                                                     30/34 
  Verifying        : dnf-plugins-core-4.0.12-4.el8_2.noarch                                                              31/34 
  Verifying        : dnf-plugins-core-4.0.12-3.el8.noarch                                                                32/34 
  Verifying        : python3-dnf-plugins-core-4.0.12-4.el8_2.noarch                                                      33/34 
  Verifying        : python3-dnf-plugins-core-4.0.12-3.el8.noarch                                                        34/34 
Installed products updated.

Upgraded:
  dnf-plugins-core-4.0.12-4.el8_2.noarch                     python3-dnf-plugins-core-4.0.12-4.el8_2.noarch                    

Installed:
  libsodium-1.0.18-2.el8.x86_64                                          libunwind-1.3.1-3.el8.x86_64                          
  openpgm-5.2.122-21.el8.x86_64                                          python3-babel-2.5.1-5.el8.noarch                      
  python3-cheroot-8.2.1-1.el8.noarch                                     python3-cherrypy-18.4.0-1.el8.noarch                  
  python3-distro-1.4.0-2.module_el8.1.0+245+c39af44f.noarch              python3-jaraco-6.2-6.el8.noarch                       
  python3-jaraco-functools-2.0-4.el8.noarch                              python3-jinja2-2.10.1-2.el8_0.noarch                  
  python3-libcloud-2.4.0-1.el8.noarch                                    python3-m2crypto-0.35.2-5.el8.x86_64                  
  python3-markupsafe-0.23-19.el8.x86_64                                  python3-more-itertools-7.2.0-3.el8.noarch             
  python3-msgpack-0.6.2-1.el8.x86_64                                     python3-portend-2.6-1.el8.noarch                      
  python3-psutil-5.6.3-5.el8.x86_64                                      python3-tempora-1.14.1-5.el8.noarch                   
  python3-trustme-0.6.0-4.el8.noarch                                     python3-zc-lockfile-2.0-2.el8.noarch                  
  python3-zmq-19.0.0-1.el8.x86_64                                        salt-3002.2-1.el8.noarch                              
  salt-api-3002.2-1.el8.noarch                                           salt-cloud-3002.2-1.el8.noarch                        
  salt-master-3002.2-1.el8.noarch                                        salt-minion-3002.2-1.el8.noarch                       
  salt-ssh-3002.2-1.el8.noarch                                           salt-syndic-3002.2-1.el8.noarch                       
  yum-utils-4.0.12-4.el8_2.noarch                                        zeromq-4.3.3-1.el8.x86_64                             

Complete!
[root@saltstack-master yum.repos.d]# 

在这里,我们还将在SaltStack Master上安装salt- minion软件包,因为Minion会收集和发送SaltStack Master服务器的系统指标,即使在同一服务器上也是如此。请参考我们的下一篇文章,[如何在CentOS 8上安装SaltStack Minion]

第六步:CentOS 8上配置SaltStack Master

SaltStack的配置文件位于/etc/salt目录中。

默认配置足够安静,无法启动SaltStack Master服务器,但是我们需要在启动服务之前调整SaltStack Minion配置。

编辑SaltStack Minion配置文件。

[root@saltstack-master-01 ~]# vi /etc/salt/minion

在此文件中找到以下指令。

#master: salt

并用以下指令替换它。

master: saltstack-master.

master指令向SaltStack Minion告知正在使用的SaltStack Master服务器。SaltStack主主机名必须是可解析的。您可以通过使用本地DNS解析器(即/ etc / hosts文件)来执行此操作,也可以为网络配置权威的DNS服务器

启用并启动SaltStack Master和Minion服务。

[root@saltstack-master yum.repos.d]# systemctl enable --now salt-master salt-minion
Created symlink /etc/systemd/system/multi-user.target.wants/salt-master.service → /usr/lib/systemd/system/salt-master.service.
Created symlink /etc/systemd/system/multi-user.target.wants/salt-minion.service → /usr/lib/systemd/system/salt-minion.service.
[root@saltstack-master yum.repos.d]# 
[root@saltstack-master yum.repos.d]# systemctl status  salt-master salt-minion
● salt-master.service - The Salt Master Server
   Loaded: loaded (/usr/lib/systemd/system/salt-master.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2020-12-16 22:37:51 CST; 11s ago
     Docs: man:salt-master(1)
           file:///usr/share/doc/salt/html/contents.html
           https://docs./en/latest/contents.html
 Main PID: 320436 (salt-master)
    Tasks: 32 (limit: 23840)
   Memory: 200.3M
   CGroup: /system.slice/salt-master.service
           ├─320436 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320442 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320474 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320475 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320478 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320479 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320480 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320481 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320482 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320483 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320484 /usr/bin/python3.6 /usr/bin/salt-master
           ├─320485 /usr/bin/python3.6 /usr/bin/salt-master
           └─320492 /usr/bin/python3.6 /usr/bin/salt-master

Dec 16 22:37:50 saltstack-master. systemd[1]: Starting The Salt Master Server...
Dec 16 22:37:51 saltstack-master. systemd[1]: Started The Salt Master Server.

● salt-minion.service - The Salt Minion
   Loaded: loaded (/usr/lib/systemd/system/salt-minion.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2020-12-16 22:37:52 CST; 10s ago
     Docs: man:salt-minion(1)
           file:///usr/share/doc/salt/html/contents.html
           https://docs./en/latest/contents.html
 Main PID: 320473 (salt-minion)
    Tasks: 8 (limit: 23840)
   Memory: 69.1M
   CGroup: /system.slice/salt-minion.service
           ├─320473 /usr/bin/python3.6 /usr/bin/salt-minion
           ├─320616 /usr/bin/python3.6 /usr/bin/salt-minion
           └─320677 /usr/bin/python3.6 /usr/bin/salt-minion

Dec 16 22:37:51 saltstack-master. systemd[1]: Starting The Salt Minion...
Dec 16 22:37:52 saltstack-master. systemd[1]: Started The Salt Minion

[root@saltstack-master yum.repos.d]# netstat -anplt| grep 45
tcp        0      0 0.0.0.0:4505            0.0.0.0:*               LISTEN      320474/python3.6    
tcp        0      0 0.0.0.0:4506            0.0.0.0:*               LISTEN      320480/python3.6


第七步:SaltStack Master配置CentOS 8防火墙

SaltStack master使用默认端口4505/tcp4506/tcp。因此,我们需要允许传入流量进入CentOS 8防火墙中的这两个端口。

[root@saltstack-master yum.repos.d]# firewall-cmd --permanent --add-port={4505,4506}/tcp
success
[root@saltstack-master yum.repos.d]# firewall-cmd --reload
success

第八步:管理SaltStack公钥

初始连接时,SaltStack奴才将其公共密钥发送给SaltStack主服务器。主人必须接受此公钥,以允许Minion与SaltStack主人进行通信。

列出所有SaltStack公共密钥。

[root@saltstack-master ~]# salt-key -L
Accepted Keys:
Denied Keys:
Unaccepted Keys:
saltstack-master.
Rejected Keys:
[root@saltstack-master ~]# 

当前,只有一个不接受的公共密钥。使用以下命令接受此公钥。

[root@saltstack-master ~]# salt-key -A
The following keys are going to be accepted:
Unaccepted Keys:
saltstack-master.
Proceed? [n/Y] y
Key for minion saltstack-master. accepted.
[root@saltstack-master ~]# 

在所有SaltStack奴才上执行ping命令。

[root@saltstack-master ~]# salt '*' test.ping
saltstack-master.:
    True
[root@saltstack-master ~]# 

检查所有SaltStackd当前的版本。

[root@saltstack-master ~]# salt '*' test.version
saltstack-master.:
    3002.2

如何在CentOS 8上安装SaltStack minion。

第九步:什么是SaltStack Minion

SaltStackSalt是基于Python的开源软件,用于基于事件的IT自动化,远程任务执行和配置管理。SaltStack支持“基础架构即代码”方法来进行数据中心系统和网络的部署和管理,配置自动化,SecOps编排,漏洞修复以及混合云控制。(礼貌:维基百科

SaltStack minion是安装在受管节点上的代理软件,用于在该节点上执行命令并将其报告回SaltStack主服务器。

第十步:更新SaltStack MinionCentOS 8软件包

使用ssh工具以root用户身份与saltstack-minion.连接。

最佳做法是在安装新组件之前更新CentOS 8上的软件包。因此,执行以下dnf命令来更新所有CentOS 8软件包。

[root@saltstack-minion ~]# dnf update -y
...
Upgraded:
  NetworkManager-1:1.22.8-5.el8_2.x86_64
  NetworkManager-libnm-1:1.22.8-5.el8_2.x86_64
  NetworkManager-team-1:1.22.8-5.el8_2.x86_64
  NetworkManager-tui-1:1.22.8-5.el8_2.x86_64
  bind-export-libs-32:9.11.13-5.el8_2.x86_64
  dbus-1:1.12.8-10.el8_2.x86_64
  dbus-common-1:1.12.8-10.el8_2.noarch
  dbus-daemon-1:1.12.8-10.el8_2.x86_64
  dbus-libs-1:1.12.8-10.el8_2.x86_64
  dbus-tools-1:1.12.8-10.el8_2.x86_64
  dnf-4.2.17-7.el8_2.noarch
  dnf-data-4.2.17-7.el8_2.noarch
  gnutls-3.6.8-11.el8_2.x86_64
  grub2-common-1:2.02-87.el8_2.noarch
  grub2-pc-1:2.02-87.el8_2.x86_64
  grub2-pc-modules-1:2.02-87.el8_2.noarch
  grub2-tools-1:2.02-87.el8_2.x86_64
  grub2-tools-efi-1:2.02-87.el8_2.x86_64
  grub2-tools-extra-1:2.02-87.el8_2.x86_64
  grub2-tools-minimal-1:2.02-87.el8_2.x86_64
  iptables-1.8.4-10.el8_2.1.x86_64
  iptables-ebtables-1.8.4-10.el8_2.1.x86_64
  iptables-libs-1.8.4-10.el8_2.1.x86_64
  kernel-tools-4.18.0-193.14.2.el8_2.x86_64
  kernel-tools-libs-4.18.0-193.14.2.el8_2.x86_64
  libdnf-0.39.1-6.el8_2.x86_64
  libnghttp2-1.33.0-3.el8_2.1.x86_64
  microcode_ctl-4:20191115-4.20200609.1.el8_2.x86_64
  open-vm-tools-11.0.5-3.el8.x86_64
  python3-dnf-4.2.17-7.el8_2.noarch
  python3-hawkey-0.39.1-6.el8_2.x86_64
  python3-libdnf-0.39.1-6.el8_2.x86_64
  python3-perf-4.18.0-193.14.2.el8_2.x86_64
  selinux-policy-3.14.3-41.el8_2.5.noarch
  selinux-policy-targeted-3.14.3-41.el8_2.5.noarch
  systemd-239-31.el8_2.2.x86_64
  systemd-libs-239-31.el8_2.2.x86_64
  systemd-pam-239-31.el8_2.2.x86_64
  systemd-udev-239-31.el8_2.2.x86_64
  yum-4.2.17-7.el8_2.noarch

Installed:
  kernel-4.18.0-193.14.2.el8_2.x86_64
  kernel-core-4.18.0-193.14.2.el8_2.x86_64
  kernel-modules-4.18.0-193.14.2.el8_2.x86_64

Removed:
  kernel-4.18.0-147.5.1.el8_1.x86_64
  kernel-core-4.18.0-147.5.1.el8_1.x86_64
  kernel-modules-4.18.0-147.5.1.el8_1.x86_64

Complete!

第十一步:SaltStack Minion上安装Python

SaltStack是基于Python的软件,因此它需要Python语言支持才能编译和执行SaltStack命令。

Python 3.6在默认的CentOS 8 AppStream中可用,因此,我们可以使用dnf命令轻松安装它。

[root@saltstack-minion ~]# dnf install -y python3
Last metadata expiration check: 0:13:43 ago on Tue 11 Aug 2020 11:59:50 PM PKT.
Dependencies resolved.
================================================================================
 Package            Arch   Version                              Repo       Size
================================================================================
Installing:
 python36           x86_64 3.6.8-2.module_el8.1.0+245+c39af44f  AppStream  19 k
Installing dependencies:
 python3-pip        noarch 9.0.3-16.el8                         AppStream  19 k
 python3-setuptools noarch 39.2.0-5.el8                         BaseOS    162 k
Enabling module streams:
 python36                  3.6

Transaction Summary
================================================================================
Install  3 Packages

Total download size: 201 k
Installed size: 466 k
Downloading Packages:
(1/3): python3-setuptools-39.2.0-5.el8.noarch.r 553 kB/s | 162 kB     00:00
(2/3): python3-pip-9.0.3-16.el8.noarch.rpm       50 kB/s |  19 kB     00:00
(3/3): python36-3.6.8-2.module_el8.1.0+245+c39a  38 kB/s |  19 kB     00:00
--------------------------------------------------------------------------------
Total                                           121 kB/s | 201 kB     00:01
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                        1/1
  Installing       : python3-setuptools-39.2.0-5.el8.noarch                 1/3
  Installing       : python36-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64    2/3
  Running scriptlet: python36-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64    2/3
  Installing       : python3-pip-9.0.3-16.el8.noarch                        3/3
  Running scriptlet: python3-pip-9.0.3-16.el8.noarch                        3/3
  Verifying        : python3-pip-9.0.3-16.el8.noarch                        1/3
  Verifying        : python36-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64    2/3
  Verifying        : python3-setuptools-39.2.0-5.el8.noarch                 3/3

Installed:
  python3-pip-9.0.3-16.el8.noarch
  python3-setuptools-39.2.0-5.el8.noarch
  python36-3.6.8-2.module_el8.1.0+245+c39af44f.x86_64

Complete!

第十二步:CentOS 8上安装SaltStack官方Yum存储库

尽管SaltStack软件包可通过EPEL(企业Linux的额外软件包) yum存储库获得。但是,如果您想安装最新版本的SaltStack软件包,则必须按照以下步骤安装SaltStack官方yum存储库。

[root@saltstack-minion ~]# wget https://repo./py3/redhat/salt-py3-repo-latest.el8.noarch.rpm

[root@saltstack-minion ~]# dnf -y install  salt-py3-repo-latest.el8.noarch.rpm
[root@saltstack-minion ~]# dnf -y install  salt-py3-repo-latest.el8.noarch.rpm
Last metadata expiration check: 0:26:49 ago on Wed 16 Dec 2020 10:19:04 PM CST.
Dependencies resolved.
===============================================================================================================================
 Package                         Architecture             Version                         Repository                      Size
===============================================================================================================================
Installing:
 salt-py3-repo                   noarch                   latest-4.el8                    @commandline                   8.9 k

Transaction Summary
===============================================================================================================================
Install  1 Package

Total size: 8.9 k
Installed size: 2.0 k
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                       1/1 
  Installing       : salt-py3-repo-latest-4.el8.noarch                                                                     1/1 
  Verifying        : salt-py3-repo-latest-4.el8.noarch                                                                     1/1 
Installed products updated.

Installed:
  salt-py3-repo-latest-4.el8.noarch                                                                                            

Complete!

为新安装的yum存储库构建缓存。

[root@saltstack-minion ~]# dnf makecache
CentOS-8 - Base - mirrors.tongdun.cn                                                           1.6 MB/s | 3.9 kB     00:00    
CentOS-8 - Extras - mirrors.tongdun.cn                                                         865 kB/s | 1.5 kB     00:00    
CentOS-8 - AppStream - mirrors.tongdun.cn                                                      2.5 MB/s | 4.3 kB     00:00    
Extra Packages for Enterprise Linux 8 - x86_64                                                 2.5 MB/s | 4.7 kB     00:00    
Extra Packages for Enterprise Linux 8 - x86_64 - Debug                                         1.6 MB/s | 3.0 kB     00:00    
Extra Packages for Enterprise Linux 8 - x86_64 - Source                                        1.9 MB/s | 3.5 kB     00:00    
SaltStack Latest Release Channel Python 3 for RHEL/Centos 8                                     26 kB/s | 224 kB     00:08    
Metadata cache created.
[root@saltstack-minion ~]# 

第十三步:CentOS 8上安装SaltStack Minion

我们已经添加了SaltStack官方yum存储库,现在我们可以使用dnf命令安装SaltStack软件包。

[root@saltstack-minion ~]# dnf install -y salt-minion
Last metadata expiration check: 0:00:22 ago on Wed 16 Dec 2020 10:46:31 PM CST.
Dependencies resolved.
===============================================================================================================================
 Package                           Architecture    Version                                      Repository                Size
===============================================================================================================================
Installing:
 salt-minion                       noarch          3002.2-1.el8                                 salt-py3-latest           43 k
Upgrading:
 dnf-plugins-core                  noarch          4.0.12-4.el8_2                               base                      64 k
 python3-dnf-plugins-core          noarch          4.0.12-4.el8_2                               base                     204 k
Installing dependencies:
 libsodium                         x86_64          1.0.18-2.el8                                 epel                     162 k
 libunwind                         x86_64          1.3.1-3.el8                                  epel                      75 k
 openpgm                           x86_64          5.2.122-21.el8                               epel                     180 k
 python3-babel                     noarch          2.5.1-5.el8                                  AppStream                4.8 M
 python3-distro                    noarch          1.4.0-2.module_el8.1.0+245+c39af44f          AppStream                 37 k
 python3-jinja2                    noarch          2.10.1-2.el8_0                               AppStream                538 k
 python3-m2crypto                  x86_64          0.35.2-5.el8                                 epel                     303 k
 python3-markupsafe                x86_64          0.23-19.el8                                  AppStream                 39 k
 python3-msgpack                   x86_64          0.6.2-1.el8                                  epel                      92 k
 python3-psutil                    x86_64          5.6.3-5.el8                                  epel                     396 k
 python3-zmq                       x86_64          19.0.0-1.el8                                 epel                     418 k
 salt                              noarch          3002.2-1.el8                                 salt-py3-latest           10 M
 yum-utils                         noarch          4.0.12-4.el8_2                               base                      66 k
 zeromq                            x86_64          4.3.3-1.el8                                  epel                     478 k

Transaction Summary
===============================================================================================================================
Install  15 Packages
Upgrade   2 Packages

Total download size: 18 M
Downloading Packages:
(1/17): python3-distro-1.4.0-2.module_el8.1.0+245+c39af44f.noarch.rpm                           13 MB/s |  37 kB     00:00    
(2/17): yum-utils-4.0.12-4.el8_2.noarch.rpm                                                     15 MB/s |  66 kB     00:00    
(3/17): python3-markupsafe-0.23-19.el8.x86_64.rpm                                               18 MB/s |  39 kB     00:00    
(4/17): libsodium-1.0.18-2.el8.x86_64.rpm                                                       23 MB/s | 162 kB     00:00    
(5/17): libunwind-1.3.1-3.el8.x86_64.rpm                                                        18 MB/s |  75 kB     00:00    
(6/17): python3-jinja2-2.10.1-2.el8_0.noarch.rpm                                                21 MB/s | 538 kB     00:00    
(7/17): openpgm-5.2.122-21.el8.x86_64.rpm                                                       16 MB/s | 180 kB     00:00    
(8/17): python3-msgpack-0.6.2-1.el8.x86_64.rpm                                                  11 MB/s |  92 kB     00:00    
(9/17): python3-m2crypto-0.35.2-5.el8.x86_64.rpm                                                20 MB/s | 303 kB     00:00    
(10/17): python3-psutil-5.6.3-5.el8.x86_64.rpm                                                  18 MB/s | 396 kB     00:00    
(11/17): python3-zmq-19.0.0-1.el8.x86_64.rpm                                                    17 MB/s | 418 kB     00:00    
(12/17): python3-babel-2.5.1-5.el8.noarch.rpm                                                   45 MB/s | 4.8 MB     00:00    
(13/17): zeromq-4.3.3-1.el8.x86_64.rpm                                                         9.4 MB/s | 478 kB     00:00    
(14/17): dnf-plugins-core-4.0.12-4.el8_2.noarch.rpm                                             28 MB/s |  64 kB     00:00    
(15/17): python3-dnf-plugins-core-4.0.12-4.el8_2.noarch.rpm                                     54 MB/s | 204 kB     00:00    
(16/17): salt-minion-3002.2-1.el8.noarch.rpm                                                   6.2 kB/s |  43 kB     00:06    
[MIRROR] salt-3002.2-1.el8.noarch.rpm: Curl error (28): Timeout was reached for https://repo./py3/redhat/8/x86_64/latest/salt-3002.2-1.el8.noarch.rpm [Operation too slow. Less than 1000 bytes/sec transferred the last 30 seconds]
[MIRROR] salt-3002.2-1.el8.noarch.rpm: Curl error (28): Timeout was reached for https://repo./py3/redhat/8/x86_64/latest/salt-3002.2-1.el8.noarch.rpm [Operation too slow. Less than 1000 bytes/sec transferred the last 30 seconds]
(17/17): salt-3002.2-1.el8.noarch.rpm                                                           23 kB/s |  10 MB     07:54    
-------------------------------------------------------------------------------------------------------------------------------
Total                                                                                           40 kB/s |  18 MB     07:54     
warning: /var/cache/dnf/salt-py3-latest-ab32c742cbd8c211/packages/salt-3002.2-1.el8.noarch.rpm: Header V4 RSA/SHA256 Signature, key ID de57bfbe: NOKEY
SaltStack Latest Release Channel Python 3 for RHEL/Centos 8                                    1.7 MB/s | 1.7 kB     00:00    
Importing GPG key 0xDE57BFBE:
 Userid     : "SaltStack Packaging Team <packaging@>"
 Fingerprint: 754A 1A7A E731 F165 D5E6 D4BD 0E08 A149 DE57 BFBE
 From       : /etc/pki/rpm-gpg/saltstack-signing-key
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                       1/1 
  Installing       : python3-markupsafe-0.23-19.el8.x86_64                                                                1/19 
  Upgrading        : python3-dnf-plugins-core-4.0.12-4.el8_2.noarch                                                       2/19 
  Upgrading        : dnf-plugins-core-4.0.12-4.el8_2.noarch                                                               3/19 
  Installing       : yum-utils-4.0.12-4.el8_2.noarch                                                                      4/19 
  Installing       : python3-psutil-5.6.3-5.el8.x86_64                                                                    5/19 
  Installing       : python3-msgpack-0.6.2-1.el8.x86_64                                                                   6/19 
  Installing       : python3-m2crypto-0.35.2-5.el8.x86_64                                                                 7/19 
  Installing       : openpgm-5.2.122-21.el8.x86_64                                                                        8/19 
  Installing       : libunwind-1.3.1-3.el8.x86_64                                                                         9/19 
  Installing       : libsodium-1.0.18-2.el8.x86_64                                                                       10/19 
  Installing       : zeromq-4.3.3-1.el8.x86_64                                                                           11/19 
  Installing       : python3-zmq-19.0.0-1.el8.x86_64                                                                     12/19 
  Installing       : python3-distro-1.4.0-2.module_el8.1.0+245+c39af44f.noarch                                           13/19 
  Installing       : python3-babel-2.5.1-5.el8.noarch                                                                    14/19 
  Installing       : python3-jinja2-2.10.1-2.el8_0.noarch                                                                15/19 
  Installing       : salt-3002.2-1.el8.noarch                                                                            16/19 
  Installing       : salt-minion-3002.2-1.el8.noarch                                                                     17/19 
  Running scriptlet: salt-minion-3002.2-1.el8.noarch                                                                     17/19 
  Cleanup          : dnf-plugins-core-4.0.12-3.el8.noarch                                                                18/19 
  Cleanup          : python3-dnf-plugins-core-4.0.12-3.el8.noarch                                                        19/19 
  Running scriptlet: python3-dnf-plugins-core-4.0.12-3.el8.noarch                                                        19/19 
  Verifying        : yum-utils-4.0.12-4.el8_2.noarch                                                                      1/19 
  Verifying        : python3-babel-2.5.1-5.el8.noarch                                                                     2/19 
  Verifying        : python3-distro-1.4.0-2.module_el8.1.0+245+c39af44f.noarch                                            3/19 
  Verifying        : python3-jinja2-2.10.1-2.el8_0.noarch                                                                 4/19 
  Verifying        : python3-markupsafe-0.23-19.el8.x86_64                                                                5/19 
  Verifying        : libsodium-1.0.18-2.el8.x86_64                                                                        6/19 
  Verifying        : libunwind-1.3.1-3.el8.x86_64                                                                         7/19 
  Verifying        : openpgm-5.2.122-21.el8.x86_64                                                                        8/19 
  Verifying        : python3-m2crypto-0.35.2-5.el8.x86_64                                                                 9/19 
  Verifying        : python3-msgpack-0.6.2-1.el8.x86_64                                                                  10/19 
  Verifying        : python3-psutil-5.6.3-5.el8.x86_64                                                                   11/19 
  Verifying        : python3-zmq-19.0.0-1.el8.x86_64                                                                     12/19 
  Verifying        : zeromq-4.3.3-1.el8.x86_64                                                                           13/19 
  Verifying        : salt-3002.2-1.el8.noarch                                                                            14/19 
  Verifying        : salt-minion-3002.2-1.el8.noarch                                                                     15/19 
  Verifying        : dnf-plugins-core-4.0.12-4.el8_2.noarch                                                              16/19 
  Verifying        : dnf-plugins-core-4.0.12-3.el8.noarch                                                                17/19 
  Verifying        : python3-dnf-plugins-core-4.0.12-4.el8_2.noarch                                                      18/19 
  Verifying        : python3-dnf-plugins-core-4.0.12-3.el8.noarch                                                        19/19 
Installed products updated.

Upgraded:
  dnf-plugins-core-4.0.12-4.el8_2.noarch                     python3-dnf-plugins-core-4.0.12-4.el8_2.noarch                    

Installed:
  libsodium-1.0.18-2.el8.x86_64                                            libunwind-1.3.1-3.el8.x86_64                        
  openpgm-5.2.122-21.el8.x86_64                                            python3-babel-2.5.1-5.el8.noarch                    
  python3-distro-1.4.0-2.module_el8.1.0+245+c39af44f.noarch                python3-jinja2-2.10.1-2.el8_0.noarch                
  python3-m2crypto-0.35.2-5.el8.x86_64                                     python3-markupsafe-0.23-19.el8.x86_64               
  python3-msgpack-0.6.2-1.el8.x86_64                                       python3-psutil-5.6.3-5.el8.x86_64                   
  python3-zmq-19.0.0-1.el8.x86_64                                          salt-3002.2-1.el8.noarch                            
  salt-minion-3002.2-1.el8.noarch                                          yum-utils-4.0.12-4.el8_2.noarch                     
  zeromq-4.3.3-1.el8.x86_64                                               

Complete!
[root@saltstack-minion ~]# 

第十四步:CentOS 8上配置SaltStack Minion

SaltStack minion的默认配置可以正常工作,除了我们需要告诉Minion有关SaltStack Master服务器。

因此,使用vim编辑器编辑SaltStack minion配置文件。

[root@saltstack-minion ~]# vi /etc/salt/minion

在其中找到以下指令。

#master: salt

并将上述指令替换为以下指令。

master: saltstack-master.

其中saltstack-master.是我们前面中配置的SaltStack主服务器。

启用并启动salt-minion服务。

[root@saltstack-minion ~]# systemctl enable --now salt-minion
Created symlink /etc/systemd/system/multi-user.target.wants/salt-minion.service → /usr/lib/systemd/system/salt-minion.service.
[root@saltstack-minion ~]# 

第十五步:SaltStack主服务器中添加SaltStack Minion

使用PuTTYroot用户身份与saltstack-master.连接。

显示SaltStack主服务器已知的所有公共密钥的列表。

[root@saltstack-master ~]# salt-key -L
Accepted Keys:
saltstack-master.
Denied Keys:
Unaccepted Keys:
saltstack-minion.
Rejected Keys:
[root@saltstack-master ~]# 

您会看到,有一个不可接受的密钥,即saltstack-minion.。这是我们的SaltStack的公钥。

使用以下命令接受此密钥。

[root@saltstack-master ~]# salt-key -A
The following keys are going to be accepted:
Unaccepted Keys:
saltstack-minion.
Proceed? [n/Y] y
Key for minion saltstack-minion. accepted.
[root@saltstack-master ~]# 

第十六步:SaltStack Minion上的命令的远程执行安装HTTP服务

我们已添加到SaltStack Master库存中。我们现在可以执行命令了。

【1】为了演示,我们正在saltstack-minion.上远程安装Apache Web服务器。

[root@saltstack-master ~]# salt 'saltstack-minion.' cmd.run 'dnf install -y httpd'
saltstack-minion.:
    Last metadata expiration check: 0:15:45 ago on Wed Dec 16 22:46:31 2020.
    Dependencies resolved.
    ================================================================================
     Package          Arch   Version                                Repo       Size
    ================================================================================
    Installing:
     httpd            x86_64 2.4.37-21.module_el8.2.0+494+1df74eae  AppStream 1.7 M
    Installing dependencies:
     apr              x86_64 1.6.3-9.el8                            AppStream 125 k
     apr-util         x86_64 1.6.1-6.el8                            AppStream 105 k
     centos-logos-httpd
                      noarch 80.5-2.el8                             base       24 k
     httpd-filesystem noarch 2.4.37-21.module_el8.2.0+494+1df74eae  AppStream  36 k
     httpd-tools      x86_64 2.4.37-21.module_el8.2.0+494+1df74eae  AppStream 103 k
     mod_http2        x86_64 1.11.3-3.module_el8.2.0+486+c01050f0.1 AppStream 156 k
    Installing weak dependencies:
     apr-util-bdb     x86_64 1.6.1-6.el8                            AppStream  25 k
     apr-util-openssl x86_64 1.6.1-6.el8                            AppStream  27 k
    Enabling module streams:
     httpd                   2.4                                                   
    
    Transaction Summary
    ================================================================================
    Install  9 Packages
    
    Total download size: 2.3 M
    Installed size: 6.0 M
    Downloading Packages:
    (1/9): centos-logos-httpd-80.5-2.el8.noarch.rpm 1.8 MB/s |  24 kB     00:00    
    (2/9): apr-util-bdb-1.6.1-6.el8.x86_64.rpm      5.6 MB/s |  25 kB     00:00    
    (3/9): apr-1.6.3-9.el8.x86_64.rpm               6.5 MB/s | 125 kB     00:00    
    (4/9): apr-util-1.6.1-6.el8.x86_64.rpm          4.9 MB/s | 105 kB     00:00    
    (5/9): apr-util-openssl-1.6.1-6.el8.x86_64.rpm  6.0 MB/s |  27 kB     00:00    
    (6/9): httpd-filesystem-2.4.37-21.module_el8.2. 3.4 MB/s |  36 kB     00:00    
    (7/9): httpd-tools-2.4.37-21.module_el8.2.0+494 5.6 MB/s | 103 kB     00:00    
    (8/9): mod_http2-1.11.3-3.module_el8.2.0+486+c0  11 MB/s | 156 kB     00:00    
    (9/9): httpd-2.4.37-21.module_el8.2.0+494+1df74  35 MB/s | 1.7 MB     00:00    
    --------------------------------------------------------------------------------
    Total                                            33 MB/s | 2.3 MB     00:00     
    Running transaction check
    Transaction check succeeded.
    Running transaction test
    Transaction test succeeded.
    Running transaction
      Preparing        :                                                        1/1 
      Installing       : apr-1.6.3-9.el8.x86_64                                 1/9 
      Running scriptlet: apr-1.6.3-9.el8.x86_64                                 1/9 
      Installing       : apr-util-bdb-1.6.1-6.el8.x86_64                        2/9 
      Installing       : apr-util-openssl-1.6.1-6.el8.x86_64                    3/9 
      Installing       : apr-util-1.6.1-6.el8.x86_64                            4/9 
      Running scriptlet: apr-util-1.6.1-6.el8.x86_64                            4/9 
      Installing       : httpd-tools-2.4.37-21.module_el8.2.0+494+1df74eae.x8   5/9 
      Running scriptlet: httpd-filesystem-2.4.37-21.module_el8.2.0+494+1df74e   6/9 
      Installing       : httpd-filesystem-2.4.37-21.module_el8.2.0+494+1df74e   6/9 
      Installing       : centos-logos-httpd-80.5-2.el8.noarch                   7/9 
      Installing       : mod_http2-1.11.3-3.module_el8.2.0+486+c01050f0.1.x86   8/9 
      Installing       : httpd-2.4.37-21.module_el8.2.0+494+1df74eae.x86_64     9/9 
      Running scriptlet: httpd-2.4.37-21.module_el8.2.0+494+1df74eae.x86_64     9/9 
      Verifying        : centos-logos-httpd-80.5-2.el8.noarch                   1/9 
      Verifying        : apr-1.6.3-9.el8.x86_64                                 2/9 
      Verifying        : apr-util-1.6.1-6.el8.x86_64                            3/9 
      Verifying        : apr-util-bdb-1.6.1-6.el8.x86_64                        4/9 
      Verifying        : apr-util-openssl-1.6.1-6.el8.x86_64                    5/9 
      Verifying        : httpd-2.4.37-21.module_el8.2.0+494+1df74eae.x86_64     6/9 
      Verifying        : httpd-filesystem-2.4.37-21.module_el8.2.0+494+1df74e   7/9 
      Verifying        : httpd-tools-2.4.37-21.module_el8.2.0+494+1df74eae.x8   8/9 
      Verifying        : mod_http2-1.11.3-3.module_el8.2.0+486+c01050f0.1.x86   9/9 
    Installed products updated.
    
    Installed:
      apr-1.6.3-9.el8.x86_64                                                        
      apr-util-1.6.1-6.el8.x86_64                                                   
      apr-util-bdb-1.6.1-6.el8.x86_64                                               
      apr-util-openssl-1.6.1-6.el8.x86_64                                           
      centos-logos-httpd-80.5-2.el8.noarch                                          
      httpd-2.4.37-21.module_el8.2.0+494+1df74eae.x86_64                            
      httpd-filesystem-2.4.37-21.module_el8.2.0+494+1df74eae.noarch                 
      httpd-tools-2.4.37-21.module_el8.2.0+494+1df74eae.x86_64                      
      mod_http2-1.11.3-3.module_el8.2.0+486+c01050f0.1.x86_64                       
    
    Complete!

【2】在saltstack-minion上启用并启动Apache服务。

[root@saltstack-master ~]# salt 'saltstack-minion.' cmd.run 'systemctl enable --now httpd.service'
saltstack-minion.:
    Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service -> /usr/lib/systemd/system/httpd.service.
[root@saltstack-master ~]# 

【3】在saltstack-minion-01的Linux防火墙中允许http服务。

[root@saltstack-master ~]#salt 'saltstack-minion.' cmd.run 'firewall-cmd --add-service=http'
saltstack-minion.:
    success

【4】使用curl命令访问新配置的Web服务器。

[root@saltstack-master ~]# curl -I http://saltstack-minion.
HTTP/1.1 403 Forbidden
Date: Wed, 16 Dec 2020 15:07:32 GMT
Server: Apache/2.4.37 (centos)
Content-Location: index.html.zh-CN
Vary: negotiate,accept-language
TCN: choice
Last-Modified: Fri, 14 Jun 2019 03:37:43 GMT
ETag: "fa6-58b405e7d6fc0;5b696296e2c08"
Accept-Ranges: bytes
Content-Length: 4006
Content-Type: text/html; charset=UTF-8
Content-Language: zh-cn

[root@saltstack-master ~]# curl -I http://192.168.6.190
HTTP/1.1 403 Forbidden
Date: Wed, 16 Dec 2020 15:08:07 GMT
Server: Apache/2.4.37 (centos)
Content-Location: index.html.zh-CN
Vary: negotiate,accept-language
TCN: choice
Last-Modified: Fri, 14 Jun 2019 03:37:43 GMT
ETag: "fa6-58b405e7d6fc0;5b696296e2c08"
Accept-Ranges: bytes
Content-Length: 4006
Content-Type: text/html; charset=UTF-8
Content-Language: zh-cn


Apache Web服务器已安装在我们的SaltStack minion上。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多