中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

自動化運維 ansble

發布時間:2020-07-31 08:35:26 來源:網絡 閱讀:251 作者:wx5a98a78793203 欄目:系統運維

1.安裝配置ansble

yum install epel-release -y #安裝epel倉庫
yum install ansible -y

2.配置主機清單

vim /etc/ansible/hosts
[web-proxy]
#分組
192.168.1.112 ansible_ssh_port=22 ansible_ssh_user=root ansible_ssh_pass=yxy7714707@
#IP ssh的端口 ssh賬戶和密碼
[web-server]
192.168.1.12 ansible_ssh_port=22 ansible_ssh_user=root ansible_ssh_pass=yxy7714707@
192.168.1.13 ansible_ssh_port=22 ansible_ssh_user=root ansible_ssh_pass=yxy7714707@

3.測試

ansible all -m ping
自動化運維 ansble
綠色說明成功了
自動化運維 ansble
這種報錯是應為,第一次ssh連接,對方主機的指紋不在這臺電腦上,用ssh先連接下即可
anisble命令語法: ansible [-i 主機文件] [-f 批次] [組名] [-m 模塊名稱] [-a 模塊參數]
-i 可選擇主機清單,不指定默認到/etc/ansible/hosts找 后面跟生效范圍,可以選擇單個ip(單臺主機)或者一組主機或者all(該清單里的所有主機)。 -m 模塊(可以理解為命令) -a模塊參數

4.ansible-playbook 簡單小腳本

vim web.yml #寫自動化腳本

  • hosts: web-server
    #應用生效的組
    vars:
    IP: "{{ ansible_ens33['ipv4']['address']}}"
    #把需要下發機器的ip賦值給IP這個變量,應用不同機器時,這個值會根據機器的實際ip改變
    port: 233
    #賦值233 給port這個變量,變量也可以在/etc/ansible/hosts文件里賦值
    remote_user: root
    tasks:
    • name: 安裝nginx
      yum: name=nginx state=latest
    • name: 復制nginx配置文件,如果執行了擇觸發,下面的動作 重啟nginx
      copy: src=/etc/nginx/nginx.conf dest=/etc/nginx/nginx.conf
    • name: 修改nginx的的監聽IP
      lineinfile: dest=/etc/nginx/nginx.conf regexp='listen 80 default_server;' line='listen {{port}} default_server;'
      #regexp里面是正則匹配,記住如果匹配的字符有高亮要加轉義,line里面是要替換的字符,{{port}}是調用的變量,
      notify:
      #觸發器,只有上面那個命令執行了才會調用以下腳本
    • cq nginx
      #表示如果上面那個語句執行了,就調用cq nginx指令,該指令在下面,handlers里定義的
    • name: 復制index主頁文件
      copy: src=/usr/share/nginx/html/index.html dest=/usr/share/nginx/html/index.html
    • name: 輸入IP地址到index.html中
      lineinfile: dest=/usr/share/nginx/html/index.html regexp="192.168.0.0" line="{{IP}}:{{port}}"
    • name: 啟動nginx服務
      service: name=nginx state=started
      handlers:
    • name: cq nginx
      service: name=nginx state=restarted
      #PS yml腳本 格式及其嚴格,請嚴格按照上述格式書寫

ansible-playbook web.yml #運行腳本
自動化運維 ansble
8個命令全部OK,表示全部執行成功
自動化運維 ansble
訪問其中一臺的233端口,發現已經有內容了,內容還是根據參數里變量自己生成的。

5.反代腳本,ansible模板的使用

cp /etc/nginx/nginx.conf nginx.conf.j2
#復制一個nginx配置文件,修改成模板
vim nginx.conf.j2
自動化運維 ansble
增加后端web 組
自動化運維 ansble
把端口改成{{port}} ,等會傳遞的時候直接用變量替換
vim proxy.yml #編寫自動化安裝反代腳本

- hosts: web-proxy
  #生效范圍,web-proxy組
  vars:
    port: 666
    #賦值233 給port這個變量,變量也可以在/etc/ansible/hosts文件里賦值
  remote_user: root
  tasks:
  - name: 安裝nginx
    yum: name=nginx state=latest
  - name: 傳遞模板文件
    template: src=/root/ansible/nginx.conf.j2 dest=/etc/nginx/nginx.conf
    #把模板文件傳遞過去,里面的端口我已經換成了{{prot}},傳遞的過程會直接替換成上面的變量參數666
  - name: 啟動nginx服務
    service: name=nginx state=started

ansible-playbook proxy.yml #運行腳本
自動化運維 ansble
這是我第二次運行,4個OK,命令全部執行成功,ansible具有冪等性,已經在目標狀態了,ansible不會再次運行的
自動化運維 ansble
自動化運維 ansble
F5 刷新,可以均衡負載,反代成功

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武山县| 青海省| 宾川县| 桐庐县| 金阳县| 灵宝市| 佳木斯市| 大安市| 壶关县| 承德市| 长顺县| 阿拉善右旗| 全椒县| 平安县| 深州市| 漳浦县| 济源市| 长顺县| 和政县| 汉沽区| 收藏| 桦甸市| 松原市| 抚顺县| 阿尔山市| 正蓝旗| 苏尼特左旗| 克什克腾旗| 榆社县| 建水县| 沂南县| 托克托县| 安顺市| 湘阴县| 宁夏| 米脂县| 华宁县| 高尔夫| 广宁县| 紫云| 福清市|