1. 程式人生 > >saltStack運維工具的部署及master遷移實現的過程詳解

saltStack運維工具的部署及master遷移實現的過程詳解

伺服器端:192.168.3.87
客戶端:192.168.3.86、192.168.3.108


1.salt伺服器端安裝 192.168.3.87

rpm -Uvh http://mirrors.yun-idc.com/epel/6Server/x86_64/epel-release-6-8.noarch.rpm
yum install -y salt-master

2.安裝minion客戶端
rpm -Uvh http://mirrors.yun-idc.com/epel/6Server/x86_64/epel-release-6-8.noarch.rpm
yum install -y salt-minion


報錯:
--> Finished Dependency Resolution
Error: Package: salt-2015.5.10-2.el6.noarch (epel)
           Requires: PyYAML
Error: Package: salt-2015.5.10-2.el6.noarch (epel)
           Requires: m2crypto
Error: Package: salt-2015.5.10-2.el6.noarch (epel)
           Requires: python-requests
Error: Package: salt-2015.5.10-2.el6.noarch (epel)
           Requires: python-jinja2
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest


解決辦法:
將所有的本地源刪除,只保留系統和epel源,重新安裝即可

3.客戶端配置salt master dns解析
echo "192.168.3.87 salt" >>/etc/hosts

啟動服務端
service salt-master start


可以將服務端debug功能開啟
vim /etc/salt/master
log_level: debug


netstat -lnt
可以看到4506和4505兩個埠已經開始監聽
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:57718               0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:4505                0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:4506                0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN 


客戶端的salt檔案列表
tree /etc/salt
/etc/salt
├── minion
├── minion.d
│   └── _schedule.conf
├── minion_id
└── pki
    └── minion
        ├── minion_master.pub
        ├── minion.pem
        └── minion.pub




列出所有的客戶端
salt-key -L
Accepted Keys:
Denied Keys:
Unaccepted Keys:
centossz008
Rejected Keys:
新增指定客戶端
[
[email protected]
test]# salt-key -a centossz008 
The following keys are going to be accepted:
Unaccepted Keys:
centossz008
Proceed? [n/Y] y
Key for minion centossz008 accepted.


新增指定客戶端無需確認
salt-key -A 192.168.3.108 -y
The following keys are going to be accepted:
Unaccepted Keys:
192.168.3.108
Key for minion 192.168.3.108 accepted.


測試連通性
salt '*' test.ping
192.168.3.108:
    True
centossz008:
    True


批量執行命令:
檢視時間
salt '*' cmd.run date
時間同步
salt '*' cmd.run 'ntpdate -u ntp.org'


舉例
1.修改客戶端的主機名由centossz008更名為minion_client01
hostname minion_client01


vim /etc/sysconfig/network
HOSTNAME=minion_client01


刪除客戶端之前儲存的相關認證資訊
rm -rf minion_id pki


服務端刪除原有認證
salt-key -d centossz008 -y
Deleting the following keys:
Accepted Keys:
centossz008
Key for minion centossz008 deleted.


重啟客戶端後在服務端重新認證
salt-key -A -y
The following keys are going to be accepted:
Unaccepted Keys:
minion_client01.DHCP
Key for minion minion_client01.DHCP accepted.


salt '*' cmd.run 'grep salt /etc/hosts'
minion_client01.DHCP:
    192.168.3.87 salt
192.168.3.108:
    192.168.3.87 salt


2.更換salt-master主機
當master主機效能承載不了大批量機器的的時候,需要更換主機
原有主機:192.168.3.87
目標主機:192.168.3.54


①在目標master主機3.54上安裝salt-master


rpm -Uvh http://mirrors.yun-idc.com/epel/6Server/x86_64/epel-release-6-8.noarch.rpm
yum install -y salt-master
Loaded plugins: fastestmirror, security
Determining fastest mirrors


報錯:
Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again


執行:
yum-config-manager --disable epel-testing
把epel-testing這個庫從yum庫裡面禁用掉
發現是啟用了/etc/yum.conf中的代理,取消即可


②將原主機中/etc/salt下的pki目錄打包拷貝到目標機3.54的/etc/salt目錄下
tar zcvf pki.tar.gz pki
scp pki.tar.gz
[email protected]
:/etc/salt


③目標master中解壓pki目錄
tar -zxvf pki.tar.gz


tree pki
pki
└── master
    ├── master.pem
    ├── master.pub
    ├── minions
    │   ├── 192.168.3.108
    │   └── minion_client01.DHCP
    ├── minions_autosign
    ├── minions_denied
    ├── minions_pre
    └── minions_rejected


啟動服務
service salt-master star


④在原master主機中執行命令將minion客戶端中的hosts檔案改為新的master主機
# salt '*' cmd.run "grep salt /etc/hosts"
minion_client01.DHCP:
    192.168.3.87 salt
192.168.3.108:
    192.168.3.87 salt


salt '*' cmd.run "sed -i 's#192.168.3.87#192.168.3.54#' /etc/hosts"
minion_client01.DHCP:
192.168.3.108:


重啟minion服務
salt '*' service.restart salt-minion
此時發現原主機已經無法執行命令了
[
[email protected]
salt]# salt '*' cmd.run "grep salt /etc/hosts"
192.168.3.108:
    Minion did not return. [No response]
minion_client01.DHCP:
    Minion did not return. [No response]


在新的master上執行命令測試,發現ok,說明主機成功遷移


salt '*' cmd.run date
192.168.3.108:
    Sun Aug  7 10:43:04 CST 2016
minion_client01.DHCP:
    Sun Aug  7 10:43:04 CST 2016


伺服器端修改埠


syndic_master_port: 8506
publish_port: 9036

相關推薦

saltStack工具部署master遷移實現過程

伺服器端:192.168.3.87 客戶端:192.168.3.86、192.168.3.108 1.salt伺服器端安裝 192.168.3.87 rpm -Uvh http://mirrors.yun-idc.com/epel/6Server/x86_64/epel-r

【搭建Saltstack工具

目錄 所謂Salt 開始搭建 配置接受金鑰 salt命令 YAML詳解 目標定位字串 state模組定義主機狀態 Salt採集靜態資訊之GrainsSalt @(Saltstack) *** 所謂Salt Saltstack是由thomas Hatch於2011年

遠端伺服器部署應用(一)--傳統部署方式還是自動化工具部署

接觸自動化運維工具也有半年了,就此做一個總結。如果有不妥之處,歡迎各位牛人批評指正。 到底該不該放棄傳統的伺服器指令碼部署或者手動部署方式,投入自動化運維工具的懷抱? 雖然現在使用自動化運維工具已經成為主流趨勢,但是對於一個之前都是採用傳統方式部署程式碼,又

順序表的基本操作C語言實現版)

我們學習了順序表及初始化的過程,本節學習有關順序表的一些基本操作,以及如何使用 C 語言實現它們。 順序表插入元素 向已有順序表中插入資料元素,根據插入位置的不同,可分為以下 3 種情況: 插入到順序表的表頭; 在表的中間位置插入元素; 尾隨順序表中已有元素,作為順序表中的最後一個元素; 雖然資

Oracle資料庫:impdp匯入資料庫expdp匯出資料過程

1.建立資料庫(可使用預設的資料庫,此步驟可省略) 2.在資料庫中建立表空間,最好與匯出的資料庫的表空間相同名稱,參考http://jingyan.baidu.com/article/5225f26b036c47e6fa0908e4.html 建立表空間的SQL命令(PLSQL下操作):create

自動化工具---SaltStack安裝部署簡單案例

com 常用模塊 分類 fire thead 批量部署 配置 出現 nio SaltStack原理 SaltStack由Master(服務端)和Minion(客戶端)組成,Master和Minion之間通過ZeroMQ(消息隊列)進行通訊,Master和Minion分別監

自動化工具SaltStack部署案例

一、基礎介紹 1、簡介 SaltStack是一個伺服器基礎架構集中化管理平臺,具備配置管理、遠端執行、監控等功能,一般可以理解為簡化版的puppet和加強版的func。SaltStack基於Python語言實現,結合輕量級訊息佇列(ZeroMQ)與Python第

自動化工具SaltStack詳細部署【轉】

lib64 time 兩個 功能 .so odi 組件 部分 srv ==========================================================================================一、基礎介紹======

自動化工具SaltStack-1、SaltStack介紹安裝

自動生成 模塊 模糊匹配 mini 說明 pac roc redhat 通信 1、SaltStack簡介 官方網址:http://www.saltstack.com官方文檔:http://docs.saltstack.comGitHub:https:github.com/s

Saltstack自動化工具 實戰與部署

caf 主動推送 n-k 分鐘 啟動服務 ade 個人觀點 ots 處理 自動化工具比較Puppet也許是四款工具中最深入人心的。就可用操作、模塊和用戶界面而言,它是最全面的。Puppet呈現了數據中心協調的全貌,幾乎涵蓋每一個運行系統,為各大操作系統提供了深入的工具。初始

部署 SaltStack 自動化工具,並簡易批量安裝 httpd 服務

SaltStack 介紹  SaltStack 是一個基於 Python 開發的一套架構配置管理工具,採用 C/S模式,server端就是salt的master,client端就是minion,minion與master之間通過ZeroMQ訊息佇列通訊。master監聽4505和4506埠,4505為mas

自動化工具----saltstack安裝配置

Saltstack 一.環境準備 https://mirrors.aliyun.com/repo/Centos-7.repo https://mirrors.aliyun.com/repo/epel-7.repo 需要以上兩個阿里雲的repo還有本機自身的centos7映象的repo。  

Saltstack自動化工具(一鍵部署高可用負載均衡叢集)

在上篇部落格中我們利用salt推送了一臺主機上的haproxy為了實現高可用和負載均衡,我們再使用一臺虛擬機器server4搭建叢集 server1和server4組成高可用和負載均衡叢集 在server4 做好底層配置: 在server4上安裝minion,更改配置檔

Saltstack自動化工具 ---- Salt一鍵部署 、一鍵部署原始碼安裝ngixn

Salt,,一種全新的基礎設施管理方式,部署輕鬆,在幾分鐘內可執行起來,擴充套件性好,很容易管理上萬臺伺服器,速度夠快,伺服器之間秒級通訊。 salt底層採用動態的連線匯流排, 使其可以用於編配, 遠端執行, 配置管理等等. 1、安裝配置 [[email&

Saltstack(自動化環境部署

管理工具 虛擬機 service master 服務端 Saltstack介紹Saltstack是一個新的基礎設施管理工具。目前處於快速發展階段,可以看做是強化的Func+弱化的Puppet的組合。間接的反映出了saltstack的兩大功能:遠程執行和配置管理。Saltstack使用Pyt

Azure Stack技術深入淺出系列3: Azure Stack工具Azure Stack Tools的使用實戰

azure stack 雲計算 微軟 azure源自 Azure 的 Azure stack 作為一款業界唯一的和領先的公有雲平臺一致的混合雲平臺,能夠幫助企業客戶從自有數據中心交付 Azure 雲服務。作為《Azure Stack 技術深入淺出系列》的第三篇文章,本文將介紹 Azure Stack 部署完成

saltstack自動化工具搭建個人筆記

技術分享 install size 為什麽 數據 font status 程序包 -c 至於為什麽選擇saltstack,因為Puppet、Chef基於Ruby開發,而ansible、saltstack基於python開發,便於後期二次,良好的可移植性。 又,ansible

自動化工具-pdsh工具安裝配置簡單使用講解

stat 運維 條件 ati etc amp gen nodes ogl 1、先決條件: 安裝pssh工具的主機針對遠程主機需要配置免秘鑰認證: ssh-keygen -t rsa ssh-copy-id [remotehost] 2、下載pssh工具安裝介質: https

自動化工具-mussh工具安裝配置簡單使用講解

cal 解壓 -i remote --help 1.0 host port href 1、先決條件: 安裝pssh工具的主機針對遠程主機需要配置免秘鑰認證: ssh-keygen -t rsa ssh-copy-id [remotehost] 2、下載mussh工具安裝介質

Linux的企業-自動化工具Saltstack(grains、pillar)

saltstack grains、pillar jinja、haproy+keeplived配置內容接上篇redhat6.5server1 172.25.29.1 salt-master server2 172.25.29.2 salt-minion haproy+keeplivedserver3 172