自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一篇讓你快速熟悉ansible和使用

開發(fā) 前端
ansible是一款開源自動化工具,基于python paramiko模塊開發(fā),分布式,無需客戶端

 一篇讓你快速熟悉ansible和使用

#基本概述

ansible是一款開源自動化工具,基于python paramiko模塊開發(fā),分布式,無需客戶端

官網(wǎng)網(wǎng)址:https://www.ansible.com

官方文檔:https://docs.ansible.com/ansible/latest/user_guide/become.html 

#應(yīng)用場景

批量執(zhí)行和分發(fā)任務(wù)

#如:同時在1000臺服務(wù)器上安裝apache服務(wù),并在安裝后啟動服務(wù)

#如:將某一個文件一次性拷貝到1000臺服務(wù)器上 

#特點

部署簡單,只需要在ansible控制端部署

默認使用SSH協(xié)議進行管理主從集中化管理配置簡單,擴展性強支持API及自定義模塊,可通過python擴展通過playbooks劇本來定制強大的配置

#架構(gòu)圖

一篇讓你快速熟悉ansible和使用

#安裝

1.設(shè)置epel倉庫(ansible倉庫默認不在yum倉庫中,所以要啟用epel倉庫)

yum install epel-release -y

2.使用yum進行安裝

yum install ansible -y

3.查看版本

Ansible --version 

#ansible命令參數(shù)

  1. ansible - Define and run a single task 'playbook' against a set of hosts  
  2. #針對一組主機定義并運行單個任務(wù)“劇本” 
  3. ansible命令語法:ansible [-i:主機文件] [-f:批次] [組名] [-m 模塊名稱] [-a:模塊參數(shù)] 

#ansible常用參數(shù)

  1. -v,–verbose               #  詳細模式,如果命令執(zhí)行成功,輸出詳細的結(jié)果 (-vv –vvv -vvvv) 
  2. -i PATH, -inventory=PATH  #  指定 host 文件的路徑,默認是在 /etc/ansible/hosts inventory  [ˈɪnvəntri]  庫存 -f NUM,-forks=NUM       # NUM 是指定一個整數(shù),默認是 5 ,指定 fork 開啟同步進程的個數(shù)。 
  3. -m NAME,-module-name=NAM    #   指定使用的 module 名稱,默認使用 command模塊 
  4. -a,MODULE_ARGS              #指定 module 模塊的參數(shù) 
  5. -k,-ask-pass                #提示輸入 ssh 的密碼,而不是使用基于 ssh 的密鑰認證 -sudo                       # 指定使用 sudo 獲得 root 權(quán)限 -K,-ask-sudo-pass           #提示輸入 sudo 密碼,與 -sudo 一起使用 -u USERNAME,-user=USERNAME  # 指定移動端的執(zhí)行用戶 -C,–check                   #測試此命令執(zhí)行會改變什么內(nèi)容,不會真正的去執(zhí)行 

#ansible查看幫助

  1. ansible-doc -l           #列出所有的模塊列表 
  2. ansible-doc -s 模塊名    #查看指定模塊的參數(shù) 
  3. ansible-doc 模塊名 #查看指定模塊的詳細參數(shù) 
  4. #示例:ansible-doc yum | ansible-dco firewalld 

#基本使用

#實驗拓撲圖

一篇讓你快速熟悉ansible和使用

一:定義主機清單(有兩種方式:一種基于端口,用戶名密碼,一種基于SSH密鑰)

1、基于端口、用戶名、密碼定義清單

  1. 格式:ansible_ssh_port:指定ssh端口  ansible_ssh_user:指定用戶  ansible_ssh_pass:指定密碼 ssh_sudo_pass:指明sudo時候的密碼 

2、基于SSH密鑰來訪問定義清單

  1. 在ansible服務(wù)端生成秘鑰,并且復(fù)制公鑰到節(jié)點中 
  2. #ssh-keygen  一直回車#一鍵生成  ssh-keygen -f ~/.ssh/id_rsa -P '' -q 
  3. 使用ssh-copy-id命令復(fù)制ansible公鑰到節(jié)點  ssh-copy-id  root@192.168.186.142 
  4. ​#使用sshpass批量分發(fā)密鑰到服務(wù)器[root@game scripts]# cat scp_isa.sh  
  5. #!/bin/baship=(130 131 132 133
  6. for i in ${ip[@]} 
  7. do 
  8.     sshpass -p"Skills39" ssh-copy-id -i /root/.ssh/id_rsa.pub "-o StrictHostKeyChecking=no" root@192.168.228.$i  
  9. done​#服務(wù)端查看效果[root@game ~]# cat /root/.ssh/known_hosts  
  10. 192.168.228.130 ecdsa-sha2-nistp256 AAAAE2VjZHNhL.....AuHi+n9iVPC0Of9D/MKK8lWuGHg= 
  11. 192.168.228.131 ecdsa-sha2-nistp256 AAAAE2VjZHNh...d8FX4mqoYCp43E2knM9t8YAZGg/k08= 
  12. 192.168.228.132 ecdsa-sha2-nistp256 AAAAE2VjZHNhL....y6U2tCs+SU/Sg+rGR8E76lqC316Q= 
  13. 192.168.228.133 ecdsa-sha2-nistp256 AAAAE2....iTuiJ+0VNOYrhh2gqW36XJVlW1+p6pj2dbo= 
  14. ​#服務(wù)端測試面密鑰登錄ssh 192.168.228.130 
  15. ​#配置清單#/etc/ansible/hosts  [db-server]  192.168.186.142 
  16.   192.168.186.135 
  17. #網(wǎng)段范圍寫法  [all]  192.168.228.[130:133
  18.     #如果寫主機名,需要在/etc/hosts里面寫  [a]  k8s-master#/etc/hosts[root@game ~]# cat /etc/hosts 
  19. 192.168.228.130 k8s-master 

二:在ansible服務(wù)端運行命令

  1. #提示: 
  2. #首次運行如果不進行什么修改的話會提出警告,可以按照將deprecation改為False[DEPRECATION WARNING]: The TRANSFORM_INVALID_GROUP_CHARS settings is set to allow bad characters in group names by default,  
  3. this will change, but still be user configurable on deprecation. This feature will be removed in version 2.10. Deprecation  
  4. warnings can be disabled by setting deprecation_warnings=False in ansible.cfg. 
  5. [WARNING]: Invalid characters were found in group names but not replaced, use -vvvv to see details 
  6. #[root@k8s-master ~]# vim /etc/ansible/ansible.cfg 
  7. deprecation_warnings=False 

1、使用ping檢查k8s-node節(jié)點機器的連通性

  1. [root@k8s-master ~]# ansible k8s-node -m ping 
  2. #提示:也可以指定hosts文件,但是默認就是讀取那個文件,所以不指定也是可以的 # ansible -i /etc/ansible/hosts k8s-node -m ping192.168.86.133 | SUCCESS => { 
  3.     "ansible_facts": { 
  4.         "discovered_interpreter_python""/usr/bin/python" 
  5.     },     "changed"false,  
  6.     "ping""pong" 
  7. }192.168.86.132 | SUCCESS => { 
  8.     "ansible_facts": { 
  9.         "discovered_interpreter_python""/usr/bin/python" 
  10.     },     "changed"false,  
  11.     "ping""pong" 

2、檢查ansible節(jié)點的運行時間

  1. [root@k8s-master ~]# ansible k8s-node -m command -a 'uptime' 
  2. 192.168.86.133 | CHANGED | rc=0 >> 
  3.  23:16:34 up 5 min,  2 users,  load average: 0.000.030.03 
  4. 192.168.86.132 | CHANGED | rc=0 >> 
  5.  23:16:34 up 31 min,  2 users,  load average: 0.000.010.04 

3、檢查節(jié)點的內(nèi)核版本

  1. [root@k8s-master ~]# ansible k8s-node -a 'uname -r' 
  2. 192.168.86.132 | CHANGED | rc=0 >> 
  3. 3.10.0-1062.el7.x86_64 
  4. 192.168.86.133 | CHANGED | rc=0 >> 
  5. 3.10.0-1062.el7.x86_64 

 

責任編輯:張燕妮 來源: 今日頭條
相關(guān)推薦

2022-11-24 06:58:44

Ansible

2021-09-14 07:26:26

組合問題循環(huán)

2021-08-26 13:22:46

雪花算法隨機數(shù)

2020-04-03 09:00:21

系統(tǒng)架構(gòu)代碼

2024-04-12 09:01:08

2021-01-26 06:58:03

AnsibleCeph集群運維

2022-08-29 08:00:11

哈希表數(shù)組存儲桶

2022-02-11 08:45:28

通信協(xié)議CAN

2014-05-14 11:15:02

歷史起源iOSAndroid

2022-03-04 21:06:46

spring事務(wù)失效

2022-08-09 08:00:55

AWS安全API

2019-09-11 08:52:24

MVCMVPMVVM

2025-01-17 07:00:00

2022-02-24 07:56:42

開發(fā)Viteesbuild

2020-06-23 16:28:25

Nginx負載均衡服務(wù)器

2021-02-19 19:35:53

SVG 形狀元素

2020-07-28 17:27:53

Nginx 負載均衡模塊

2023-11-01 15:52:35

2021-04-07 13:28:21

函數(shù)程序員異步

2017-11-02 14:06:40

點贊
收藏

51CTO技術(shù)棧公眾號