ansible实验环境的部署

1.实验环境的部署

将主机的内存,处理器改为1,克隆三台虚拟机,配置网络,确保可以通信

Ansible12:192.168.31.12

Liu112:192.168.31.112

Liu122:192.168.31.122

2.Ansible的安装

vim /etc/yum.repos.d/westos.repo

dnf install httpd -y

systemctl enable --now httpd  设定httpd开机自启动

systemctl disable --now firewalld  关闭火墙

mount/iso/rhel-8.2-x86_64-dvd.iso/var/www/html/rhel8.2             把镜像重新挂载/var/www/html/rhel8.2上

指定软件仓库到/var/www/html/rhel8.2上

在www.aliyun.com搜索epel

安装epel配置包企业8,把epel源指定到阿里云上

 dnf list ansible(列出ansible)

搜索sshpass,安装ansible依赖性

dnf install ansible -y   安装ansible 

ansible --version  查看ansible的版本

ansible的基本信息:

/etc/ansible/ansible.conf ##全局配置文件,默认很少修改

/etc/ansible/hosts ##全局主机清单清单文件

3.构建Anisble清单

清单就是ansible控制主机的列表  

检测主控机和被控机之间的的连接

vim /etc/ansible/ansible.cfg  修改配置文件,默认值是true

ansible westos -m ping -k 

1.设定受管主机的组

清单查看:

ansible +清单名 --list-hosts

ansible ungrouped --list-hosts

ansible all --list-hosts

单层清单

嵌套清单

 2.主机规格的范围化操作

通过指定主机名称或IP的范围可以简化Ansible主机清单

 

 3.指定其他清单文件

4.ansible命令指定清单的正则表达式

 

 * ##所有

 : ##逻辑或

:& ##逻辑与 :! ##逻辑非

~ 以关键字开头

4.Ansible配置文件参数详解

ansible 清单中组名称 -m 模块 -u remote_user

1.配置文件的分类与优先级

/etc/ansible/ansible.cfg   主配置文件(优先级最低)

~/.ansible.cfg  用户当前目录中没有ansible.cfg此文件生效

./ansible.cfg     优先级最高

2.常用配置参数

[default]基本信息设定

inventory=

指定清单路径

remote_user=

在受管主机上登陆的用户名称,未指定使用当前用户

ask_pass=

是否提示输入SSH密码,如果公钥登陆设定为false

library=

库文件存放目录

local_tmp=

本机临时命令执行目录

remote_tmp=

远程主机临时py命令文件存放目录

forks=

默认并发数量

host_key_checking=

第一次连接受管主机时是否要输入yes建立host_key

sudo_user=

默认sudo用户

ask_sudo_pass=

每次在受控主机执行ansible命令时是否询问sudo密码

module_name=

默认模块,默认使用command,可以修改为shell

log_path=

日志文件路径

[privilege_escalation]   身份信息设定

become=

连接后是否自动切换用户

become_method=

设定切换用户的方式,通常用sudo

become_user=

在受管主机中切换到的用户,通常为root

become_ask_pass

是否需要为become_method提示输入密码,默认为false

5.构建用户级Ansible操作环境

  1. 免密认证

  • useradd leeansible  建立leeansible用户
  • echo lee | passwd --stdin leeansible  设定密码
  • su - leeansible
  • mkdir .ansible/
  • cp /etc/ansible/ansible.cfg .  把ansible.cfg的内容复制到当前
  • ansible westos -m shell -a 'useradd leeansible' -k -u root             

  • ansible westos -m shell -a 'echo lee |passwd --stdin leeansible ' -k -u root  
  •  切换到root用户然后生成秘钥ssh-keygen

  • ansible westos -m file -a 'path=~/.ssh mode=700 state=directory'  -k  

  • ansible westos -m copy -a 'src=~/.ssh/id_rsa.pub dest=~/.authorized_keys mode=600' -k   (目的是完成免密认证)

  • ansible westos -m ping

  • ansible westos -m shell -a 'whoami'因为当前用户是普通用户,所以会有许多权限的限制
  • ansible westos -m shell -a 'echo "leeansible ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers' -u root -k(sudo授权)

  • ansible westos -m shell -a 'whoami'
  • ansible westos -m shell -a 'whoami' -b

 
2)ansible子配置

  • Vim ansible.cfg

  • vim ~/.ansible/inventory

  • cd .ansible/
  •  ansible westos -m ping

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值