歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> centos6.5上部署集中化管理平台Saltstack!!!

centos6.5上部署集中化管理平台Saltstack!!!

日期:2017/3/1 12:10:34   编辑:關於Linux

項目背景:

通過部署Saltstsck環境,我們可以在成千上萬的服務器上做到批量執行命令,根據不同業務特點我們可以進行配置集中化管理、分發文件、采集服務器數據、軟件包管理。可以搭建我們自己的自動化運維平台,滿足我們的不同場景下的需求。

實驗環境:

vmware workstation 11

centos6.5的系統下

Saltstack服務器:ip:192.168.0.10 防火牆關閉 setenforce 0

Saltstck被控端: ip:192.168.0.44 防火牆關閉 setenforce 0

SecureCRT (ssh遠程連接軟件)

軟件介紹:

Saltstsck官網介紹:

Salt, a new approach to infrastructure management, is easy enough to get running in minutes, scalable enough to manage tens of thousands of servers, and fast enough to communicate with those servers in seconds.

Salt delivers a dynamic communication bus for infrastructures that can be used for orchestration, remote execution, configuration management and much more.

譯文:

Saltstsck,一種新的基礎設施管理的方法,在幾分鐘之內我們就可以部署成功,可擴展到管理成千上萬的服務器,可以在幾秒中內快速的進行服務器間的溝通。

Saltstsck提供了一個動態的通信總線的基礎設施,可用於業務流程,遠程執行,配置管理和更多的功能。

軟件特點:

特性

(1)、部署簡單、方便;

(2)、支持大部分UNIX/Linux及Windows環境;

(3)、主從集中化管理;

(4)、配置簡單、功能強大、擴展性強;

(5)、主控端(master)和被控端(minion)基於證書認證,安全可靠;

(6)、支持API及自定義模塊,可通過Python輕松擴展。

實驗過程:

一、安裝包含軟件包Saltstack的epel源

1、Saltstack服務器端安裝:

[root@real_server01 ~]# rpm -Uvh http://ftp.linux.ncsu.edu/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

Retrieving http://ftp.linux.ncsu.edu/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

Preparing... ########################################### [100%]

package epel-release-6-8.noarch is already installed

2、Saltstack被監控端安裝:

[root@ansible ~]# rpm -Uvh http://ftp.linux.ncsu.edu/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

Retrieving http://ftp.linux.ncsu.edu/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

Preparing... ########################################### [100%]

package epel-release-6-8.noarch is already installed

二、Saltstack服務器端軟件安裝

[root@real_server01 ~]# yum install -y salt-master -y

三、Saltstack被控端軟件安裝

[root@ansible ~]# yum install -y salt-minion

四、Saltstack服務器端配置文件設置

1、綁定master通信IP

wKioL1cEwTWi1727AAEo-mMNEMc262.png2、自動認證

wKioL1cEwgOCluR8AADU5st08Qc076.png

3、指定Saltstack文件根目錄

wKiom1cEwe_AP-VEAACreiQFAQE597.png

五、Saltstack被控端配置文件設置

1、指定master主機IP

wKioL1cEw2nBGC0ZAADNm7IvkOE940.png

2、修改被控端主機識別ID

wKiom1cEw1WiP6nJAADgy5R6Q3E936.png

六,啟動服務

1、服務器端啟動

wKioL1cExEvR-IAoAACjBBssAZ8595.png

2、被控端啟動

wKiom1cEw9zyeUVhAACoIYoax2Y841.png

七、設置ssh信任

http://9399369.blog.51cto.com/9389369/1750915(這是我寫的雙機信任,你可以只做服務器端到被控端的)

八、測試安裝設置是否正確

wKioL1cExZGBzl1LAACgBh9PNQ0364.png

九、利用Saltstack遠程執行命令

wKioL1cExgWTIWR_AAF6vUAk74M732.png

十、查看你主機支持的Saltstack模塊和API

wKiom1cExzrRnUYsAADa939YYoY182.png

十一、獲取被控端ip地址信息

wKiom1cE4Hfiq3mhAACf5ojd53I743.png十二、為所以的被控端安裝mysql數據庫。

wKioL1cE4miQA0L9AAAzXt6e89U504.png

十三、grains詳解

grains是Saltstack的一個重要組件,用來收集被控端主機的基本信息

1、獲取所有主機的grains信息

[root@real_server01 ~]# salt '*' grains.ls

fuchao002:

- SSDs

- biosreleasedate

- biosversion

- cpu_flags

- cpu_model

- cpuarch

- domain

- fqdn

- fqdn_ip4

- fqdn_ip6

- gpus

- host

- hwaddr_interfaces

- id

- init

- ip4_interfaces

- ip6_interfaces

- ip_interfaces

- ipv4

- ipv6

- kernel

- kernelrelease

- locale_info

- localhost

- lsb_distrib_codename

- lsb_distrib_id

- lsb_distrib_release

- machine_id

- manufacturer

- master

- mdadm

- mem_total

- nodename

- num_cpus

- num_gpus

- os

- os_family

- osarch

- oscodename

- osfinger

- osfullname

- osmajorrelease

- osrelease

- osrelease_info

- path

- productname

- ps

- pythonexecutable

- pythonpath

- pythonversion

- saltpath

- saltversion

- saltversioninfo

- selinux

- serialnumber

- server_id

- shell

- virtual

- zmqversion

可以看到手機的主機信息特別多。

2、獲取主機單項grains數據

wKiom1cE5AnwL1wXAADODwaArWk064.png十四、pillar組件

1、修改配置文件/et/salt/master,開啟pillar

wKioL1cE5nXxRYbpAADuQrk7OAw846.png2、重啟服務

wKiom1cE5hvTny9LAAAkB9l5rrs388.png3、查看主機的pillar信息

wKiom1cE5pzylCfPAADhdYqvSf4915.png

4、查看pillar的主目錄

wKiom1cE52ryhyTLAAEzuKXij9k541.png5、創建pillar目錄

[root@real_server01 ~]# install -d /srv/pillar

6、重啟服務

[root@real_server01 pillar]# service salt-master restart

Stopping salt-master daemon: [ OK ]

Starting salt-master daemon: [ OK ]

7、定義入口文件

[root@real_server01 ~]# cd /srv/pillar/ #切換到pillar目錄

[root@real_server01 pillar]# vim top.sls

base:

'*':

- data

[root@real_server01 pillar]# vim data.sls

appname:fuchao1

flow:

maxconn:30000

maxmem:3G

8、校驗pillar

wKioL1cE6sKCoBEmAABHjyegJZw264.png

項目總結:Saltstack相對ansible來說知識點比較多,使用比較復雜,但是它功能更強大!我想大家都知道它有多火爆了。基本上運維工程師都要求對Saltstack有一定的理解和掌握。所以我這篇博文對大家還是有一點兒幫助的。 希望跟大家一起進步!!!

Copyright © Linux教程網 All Rights Reserved