部署搭建 Saltstack(centos6.6)

SaltStack介紹html

官網:https://docs.saltstack.com/en/latest/python

中國saltstack用戶組http://www.saltstack.cn/mysql

下圖是它的子系統和擴展插件:linux

工做流:nginx

 

 

Saltstack 分服務端master和客戶端minion,安裝Saltstack前先安裝epelgit

阿里源:http://www.javashuo.com/tag/mirrors.aliyun.com
epel安裝介紹:http://mirrors.aliyun.com/help/epel
sql

1、安裝mongodb

1)安裝master(服務端)
yum install -y salt-master

2)安裝minion(客戶端)
yum install -y salt-minion

3)開機啓動master(服務端)
chkconfig salt-master on

4)開機啓動minion(客戶端)
chkconfig salt-minion on
shell

 

2、配置數據庫

1)修改master配置文件
vim /etc/salt/master

  • 找到file_roots這行,放開註釋

 備註:base前面2個空格,- /srv/salt 前面4個空格

  • 找到pillar_roots這行,放開註釋

2)啓動master

/etc/init.d/salt-master start

3)修改monion配置文件

vim /etc/salt/minion

找到master,將ip改爲服務端地址

備註:冒號和ip地址間必定要有一個空格

找到id,將名稱作個標識

4)啓動minion

/etc/init.d/salt-minion start

 

3、配置認證

1)在master上執行salt-key

根據上圖在Unaccepted Keys中能夠看到minion配置的id信息

salt-key -A

容許Unaccepted Keys中全部的minion被信任

salt-key -a 10.10.83.163 ,指定10.10.83.163這臺minion被信任

說明:-a :accept ,-A:accept-all,-d:delete,-D:delete-all

再次執行salt-key,能夠從下圖中看到2臺minion被信任。

 

3、命令

目標 模塊 返回

1)salt '*' test.ping 檢查全部主機狀態

salt '10.10.83.163' test.ping 檢查10.10.83.163主機狀態

2)salt '*' cmd.run 'df -h' 檢查全部主機硬盤狀態

備註:cmd是一個模塊,run是一個方法(作過開發會容易理解)

3)mkdir /srv/{salt,piller}

Pillar是Salt用來分發全局變量到全部minions的一個接口。編寫的管理文件須要以sls作後綴

cd /srv/salt/

建立host_files.sls文件,內容以下

 

統計files目錄下建立123.txt,內容127.0.0.1 localhost

執行 salt '*' state.sls host_files

查看10.10.83.162和10.10.83.163兩臺主機下/etc/hosts已變動爲123.txt中內容。

4)salt-cp '*' /etc/hosts /etc/

複製一個本地文件的拷貝到全部匹配的Salt Minion中給定的目標。

 

模塊名

描述

aliases

管理aliases file信息

alternatives

salt.modules.alternatives

apache

管理apace模塊

apt

APT(Advanced Packaging Tool)支持

archive

壓縮(archive)支持

at

at支持

augeas_cfg

經過augeas管理配置文件

bluez

管理Bluetooth(使用Bluez)

brew

Mac OS X的Homebrew支持

butterkvm

指定butter雲組件路由

cassandra

Cassandra NoSQL數據庫模塊

cmdmod

A module for shelling out

config

返回配置信息

cp

minion端salt-cp支持

cron

cron支持

daemontools

daemontools服務模塊

data

管理minion本地持久化的數據結構

debconfmod

Debconf支持

debian_service

Debian系列系統服務支持

disk

管理磁盤信息

djangomod

管理django站點

dnsmasq

管理dnqmasq模塊

dnsutil

dns通用管理工具

dpkg

用於支持DEB 分發版本的包管理

ebuild

另一個包管理

eix

eix 支持

event

Fire events on the minion, events can be fired up to the master

extfs

管理ex2/3/4文件系統]]

file

管理minion的文件信息,設置或讀取文件屬組、權限等

fressbsdjail

管理FreeBSD jail環境

freebsdmod

管理FreeBSD 內核

freebsdpkg

FreeBSD package管理支持

freebsdservice

管理FreeBSD服務

freebsd_sysctl

FreeBSD sysctl管理支持

gem

管理ruby gem

gentoolkitmod

Gentoolkit支持

gentoo_service

管理gentoo服務

git

git SCM支持

glance

Module for handling openstack glance calls.

grains

grains數據控制

groupadd

管理Linux和OpenBSD組

grub_legacy

GRUB Legacy支持

guestfs

經過libguestfs管理虛擬機鏡像

hg

Mercurial SCM支持

hosts

管理hosts文件

img

虛擬機鏡像管理

iptables

iptables支持

keyboard

posix-like系統鍵盤管理模塊

key

minion key信息支持

keystone

openstack keystone調用管理

kmod

Linux內核管理模塊

kvm_hyper

Provide the hyper module for kvm hypervisors

launchctl

Mac OSX launchd/launchctl管理支持

layman

Layman支持

ldapmod

ldap管理支持

linux_acl

Linux文件訪問控制支持

lvm

Linux LVM2支持

linux_sysctl

Linux sysctl管理支持

locale

posix-like系統locale支持

locate

locate工具管理

logrotate

logrotate管理支持

makeconf

Support for modifying make.conf under Gentoo

mdadm

使用mdadm工具管理RAID arrary

mongodb

mongodb管理支持

monit

monit模塊

moosefs

moosefs管理支持

mount

管理UNIX mount及fstab文件

muniu

Run munin plugins/checks from salt and format the output as data

mysql

mysql管理支持

network

收集和管理網絡信息

nfs3

NFS3管理模塊

nginx

nginx管理

nova

openstack nova調用管理

npm

Manage and query NPM packages

nzbget

nzbget支持

openbsdpkg

OpenBSD包管理

openbsdservice

OpenBSD服務管理

osxdesktop

Mac OS X implementations of various commands in the "desktop" interface

pacman

Arch pacman管理

pam

pam管理

parted

posix-like系統分區管理parted支持

pecl

PHP pecl擴展支持

pillar

minion pillar數據管理

pip

系統python或virtualenv pip管理

pkgng

pkgng支持

pkg_resource

Resources needed by pkg providers

pkgutil

Solaris Pkgutil支持

postgres

Postgres數據庫管理支持

poudriere

poudriere支持

ps

A salt interface to psutil, a system and process library

publish

Publish a command from a minion to a target

puppet

puppet管理支持

pw_group

FreeBSD組管理

pw_user

FreeBSD用戶管理

qemu_img

qemu鏡像命令管理

qemu_nbd

qemu命令管理

quotaposix-like系統quota管理

rabbitmq

rabbitmq管理

reg

Windows註冊表管理

ret

Module to integrate with the returner system and retrieve data sent to a salt

rh_ip

RHEL/Fedora網絡管理

rh_service

類RHEL服務管理

rpm

rpm支持

rvm

Manage ruby installations and gemsets with RVM, the Ruby Version Manager

s3

Amazon S3支持

saltutil

The Saltutil module is used to manage the state of the salt minion itself

selinux

selinux調用管理

service

服務管理

shadow

管理shadow文件

smf

Solaris 10和11服務管理模塊

solaris_group

Solaris組管理

solarispkg

Solaris包管理

solaris_shadow

Solaris shadow文件管理

solaris_user

Solaris用戶管理

solr

solr模塊支持

sqlite3

SQLite3支持

ssh

管理ssh客戶端

state

管理minion state

status

返回minion各類狀態

supervisord

Provide the service module for supervisord

svn

Subversion SCM

sysbench

sysbench支持

sysmod

he sys module provides information about the available functions on the minion

systemd

systemd服務管理

system

支持關機、重啓等

test

Module for running arbitrary tests

timezone

posix-like系統timezone管理

tls

SSL/TLS模塊

tomcat

tomcat支持

upstart

Module for the management of upstart systems

virt

libvirt管理支持

virtualenv

建立python virtualenv環境

win_disk

收集Windows磁盤信息

win_file

管理Windows minion文件信息

win_groupadd

管理Windows組

win_network

管理Windows網絡信息

win_pkg

Windows包管理

win_service

Windows服務管理

win_shadow

Windows shadow管理

win_status

返回Windows minion各類信息

win_useradd

Windows用戶管理

yumpkg5

YUM支持

yumpkg

YUM支持

zpool

ZFS支持

zypper

OpenSUSE zypper包管理支持

 

部署搭建參考:http://msiyuetian.blog.51cto.com/8637744/1745785

相關文章
相關標籤/搜索