【Linux】【Services】【SaaS】Docker+kubernetes(4. 用ansible管理機器和軟件)
阿新 • • 發佈:2018-01-05
實現 service SDR https 輸出 公司 keygen /etc slave
1. 簡介
1.1. 公司環境使用的puppet,但是我更喜歡ansible,原因有二,第一,我是紅帽的忠粉:),第二,我對python比較熟悉
1.2. ansible官方網站:https://www.ansible.com/
1.3. ansible中文文檔網站:http://www.ansible.com.cn/
2. 環境
2.1. ansible:ansible-2.4.2.0-1.el7
3. 安裝
3.1. 直接yum就好
yum install ansible
4. 配置
4.1. 生成ssh key
ssh-keygen -t rsa
4.2. 在10.30.2.81這臺DNS服務器上把服務器列表取出來
cat /var/named/hccos.cn.zone |grep 172|awk ‘{print $1,$4}‘|sed "s/ 172/.hccos.cn #172/g"
4.3. 把上一步輸出的機器列表粘貼在/etc/ansible/hosts裏面,給分到default組裏面
[default] hctjosinfra01.hccos.cn #172.16.0.81 hctjosinfra02.hccos.cn #172.16.0.82 hctjosetcd01.hccos.cn #172.16.0.83 hctjosetcd02.hccos.cn #172.16.0.84 hctjosetcd03.hccos.cn #172.16.0.85 hctjcephmon01.hccos.cn #172.16.0.86 hctjcephmon02.hccos.cn #172.16.0.87 hctjcephmon03.hccos.cn #172.16.0.88 hctjcephadm01.hccos.cn #172.16.0.89 hctjosk8smaster01.hccos.cn #172.16.0.90 hctjosk8sslave01.hccos.cn #172.16.0.91 hctjosk8sslave02.hccos.cn #172.16.0.92 hctjcephblock01.hccos.cn #172.16.0.93 hctjcephblock02.hccos.cn #172.16.0.94 hctjosk8snode01.hccos.cn #172.16.0.95 hctjosk8snode02.hccos.cn #172.16.0.96 hctjosk8snode03.hccos.cn #172.16.0.97 hctjosk8snode04.hccos.cn #172.16.0.98 hctjosadm01.hccos.cn #172.16.0.99 hctjosmysql01.hccos.cn #172.16.0.25 hctjosmysql02.hccos.cn #172.16.0.26 hctjosmysql03.hccos.cn #172.16.0.27 hctjoscache01.hccos.cn #172.16.0.45 hctjoscache02.hccos.cn #172.16.0.46 hctjoscache03.hccos.cn #172.16.0.47 hctjosdr01.hccos.cn #172.16.0.48 hctjosdr02.hccos.cn #172.16.0.49
4.4. 吧ssh-key拷貝的目標主機上實現免密碼登錄
for i in $(grep hctj /etc/ansible/hosts |grep -o "#.*"|cut -d# -f2); do ssh-copy-id $i; done
4.5. 在/etc/ansible下吧架構搭起來
[root@hctjosadm01 etc]# tree /etc/ansible/ /etc/ansible/ ├── ansible.cfg ├── hosts ├── main.yaml └── roles ├── cache │ └── cache.yaml ├── ceph │ └── ceph.yaml ├── default │ ├── default.yaml ├── dr │ └── dr.yaml ├── etcd │ └── etcd.yaml ├── k8s │ └── k8s.yaml └── mysql └── mysql.yaml 8 directories, 11 files
4.6. 編輯main.yaml
【Linux】【Services】【SaaS】Docker+kubernetes(4. 用ansible管理機器和軟件)