SaltStack使用チュートリアル(一):インストールと簡単な構成で使用


紹介する
      このチュートリアルは私が中秋節の休みにやったことで、saltstackを勉強します.
      SaltStackの名前は故郷のアメリカ塩城です.
      SaltStackは私たちのために千万台の機械を大量に管理する基礎ツールであり、開拓しても便利です.SaltStackは、動的な編集、構成管理、リモート実行コマンドなどを行うことができます.
      Saltstackはマスターとminionを含み、マスターは制御端であり、minionは管理ノードである.
      ここではまずくだらないことを言わないで、簡単にインストールを紹介します(以下のsaltは私たちが言ったSaltStackです).
ここには2つのノードがあります
salt-master:10.0.0.11
salt-minion:10.0.0.21
 
ここではまず2つのノードにepelソースをインストールし、saltネットワークのインストールを便利にします.
[root@salt-master ~] rpm -ivh http://mirrors.ustc.edu.cn/centos/6/extras/x86_64/Packages/epel-release-6-8.noarch.rpm
 
 
10.0.0.11(master)ノード操作
salt-masterをインストールし、しばらく構成する必要はありません.
[root@salt-master ~]# hostname
salt-master
[root@salt-master ~]# yum -y install salt salt-master  salt-minion
    salt-minion
[root@salt-master ~]#  egrep -v '^#|^$' /etc/salt/minion
master: 10.0.0.11
[root@salt-master ~]# /etc/init.d/salt-minion start
Starting salt-minion daemon:                               [  ]

 
 
 
10.0.0.21ノード操作
インストール構成salt-minion
[root@salt-minion1 ~]# hostname
salt-minion1
[root@salt-master ~]# yum -y install salt salt-minion
[root@salt-master ~]#  egrep -v '^#|^$' /etc/salt/minion
master: 10.0.0.11
[root@salt-minion1 ~]#  /etc/init.d/salt-minion start
Starting salt-minion daemon:                               [  ]

 
 
 
10.0.0.11(master)ノード操作
salt-masterが受信した鍵を表示します.それぞれ「10.0.0.11」と「10.0.021」です.masterはこれらの鍵を介して
 salt-key -L     現在のキーの表示
                -A  クライアントからの鍵をすべて受け入れる
               --accept=example.com    指定した鍵を受け入れる
 
[root@salt-master ~]# salt-key -L
Accepted Keys:
Denied Keys:
Unaccepted Keys:
salt-master
salt-minion1
Rejected Keys:
 
[root@salt-master ~]# salt-key -A
The following keys are going to be accepted:
Unaccepted Keys:
salt-master
salt-minion1
Proceed? [n/Y] y
Key for minion salt-master accepted.
Key for minion salt-minion1 accepted.

 
 
salt-masterが各minionノードを制御できるかどうかを確認します(各ノードのIPを表示します)
[root@salt-master~]# salt '*' network.ip_addrs
salt-master:
    - 10.0.0.11
salt-minion1:
    - 10.0.0.21

salt-master構成の追加
         さっきsalt-minionをsalt-master管理に加入しただけで、ボスが従業員を募集したように、ボスは従業員に番号を送ることができます.もしボスがいくつかのステップと繰り返しの命令があれば、ボスは一般的にメールとドキュメントを使って従業員に操作させます.
salt-masterは,sls構成管理minion上で命令を繰り返すサービス状態などを書く.ここでは、まず構成する必要があります.
        
[root@salt-master srv]# mkdir -p /srv/salt/base
 master            
[root@salt-master ~]# vim /etc/salt/master
 file_roots:
   base:
     - /srv/salt/base
[root@salt-master ~]# /etc/init.d/salt-master restart
Stopping salt-master daemon:                               [  ]
Starting salt-master daemon:                               [  ]

          salt-masterのデフォルトでは、上で指定した構成ディレクトリのtop.slsが読み込まれます.(これはmasterプロファイルの下のstate_top:top.slsで決定されました)
slsプロファイルの書き込みルールは、ステータスIDが行の先頭から、実行モジュールまたはホストの前に2つのスペースを追加し、その他の属性もレベルごとに2つのスペースを追加することです.
同意行ではない.
次のように書きます.
     
[root@salt-master base]# tree
.
├── system
│   ├── files
│   │   └── hosts
│   └── hosts.sls
└── top.sls
 
2 directories, 3
files
[root@salt-master base]# cat top.sls               
base:                      
  "*":                    
    - system.hosts        
                          
 
[root@salt-master
base]# cat system/hosts.sls
/etc/hosts:                
  file.managed:           
    - source: salt://system/files/hosts 
    - mode: 644            
    - user: root           
    - group: root
               
[root@salt-master system]# salt 'salt-minion1' state.highstate          
          
salt-minion1:                                                        
----------
          ID: /etc/hosts                                    
    Function: file.managed                              
      Result: True                                                   
     Comment: File /etc/hosts updated          
     Started: 14:15:55.120499                       
    Duration: 24.284 ms                                  
     Changes:                                                  
              ----------
              diff:
                  --- 
                  +++ 
                  @@ -1,2 +1,4 @@
                   127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
                   ::1         localhost localhost.localdomain localhost6 localhost6.localdomain
                  +salt-master 10.0.0.11                   
                  +salt-minion1 10.0.0.21
 
Summary
------------
Succeeded: 1 (changed=1)                               
Failed:    0                                                           
------------
Total states run:     1

このセクションの最後の実行の詳細は、次の章「SaltStack使用チュートリアル(2):ディレクトリとファイル管理」を参照してください.