-
四、 ansible.cfg与默认配置
/etc/ansible/ansible.cfg文件中定义了ansible的主机的默认配置部分,如默认是否需要输入密码、是否开启sudo认证、action_plugins插件的位置、hosts主机组的位置、是否开启log功能、默认端口、key文件位置等等。
#inventory = /etc/ansible/hosts 该参数表示资源清单inventory文件的位置,资源清单就是一些Ansible需要连接管理的主机列表
#library = /usr/share/my_modules/ Ansible的操作动作,无论是本地或远程,都使用一小段代码来执行,这小段代码称为模块,这个library参数就是指向存放Ansible模块的目录
#module_utils = /usr/share/my_module_utils/
#remote_tmp = ~/.ansible/tmp 指定远程执行的路径
#local_tmp = ~/.ansible/tmp ansible管理节点的执行路径
#forks = 5 forks 设置默认情况下Ansible最多能有多少个进程同时工作,默认设置最多5个进程并行处理。具体需要设置多少个,可以根据控制主机的性能和被管理节点的数量来确定。
#poll_interval = 15 轮询间隔
#sudo_user = root sudo使用的默认用户 ,默认是root
#ask_sudo_pass = True 是否需要用户输入sudo密码
#ask_pass = True 是否需要用户输入连接密码
#remote_port = 22 这是指定连接对端节点的管理端口,默认是22,除非设置了特殊的SSH端口,不然这个参数一般是不需要修改的
#module_lang = C 这是默认模块和系统之间通信的计算机语言,默认为’C’语言.
host_key_checking = False 跳过ssh首次连接提示验证部分,False表示跳过。
#timeout = 10 连接超时时间
#module_name = command 指定ansible默认的执行模块
#nocolor = 1 默认ansible会为输出结果加上颜色,用来更好的区分状态信息和失败信息.如果你想关闭这一功能,可以把’nocolor’设置为‘1’:
#private_key_file=/path/to/file.pem 在使用ssh公钥私钥登录系统时候,使用的密钥路径
查看全部 -
指定主机范围
可在/etc/ansible/hosts文件中,指定主机的范围,示例如下:
[web]
www[01:50].ixdba.net
[db]
db[a:f].ixdba.net
3.3、主机变量
以下是Hosts部分中经常用到的变量部分:
ansible_ssh_host #用于指定被管理的主机的真实IP
ansible_ssh_port #用于指定连接到被管理主机的ssh端口号,默认是22
ansible_ssh_user #ssh连接时默认使用的用户名
ansible_ssh_pass #ssh连接时的密码
ansible_sudo_pass #使用sudo连接用户时的密码
ansible_sudo_exec #如果sudo命令不在默认路径,需要指定sudo命令路径
ansible_ssh_private_key_file #秘钥文件路径,秘钥文件如果不想使用ssh-agent管理时可以使用此选项
ansible_shell_type #目标系统的shell的类型,默认sh
ansible_connection #SSH 连接的类型:local , ssh , paramiko,在 ansible1.2之前默认是 paramiko ,后来智能选择,优先使用基于ControlPersist 的ssh
ansible_pythoninterpreter #用来指定python解释器的路径,默认为/usr/bin/python 同样可以指定ruby 、perl的路径
ansible_interpreter #其他解释器路径,用法与ansible_python_interpreter类似,这里””可以是ruby或perl等其它语言
例子1:
[web]
192.168.78.11 http_port=80
192.168.78.12 http_port=80
还可以改成这样:
[web]
192.168.78.11
192.168.78.12
[web:vars]
http_port=80
例子2:
[webhost]
host1
host2
[dbhost]
host2
host3
[allhosts:children]
webhost
Dbhost
主机组可以包含主机组,主机的变量可以通过继承关系,继承到最高等级的组的变量。定义主机组之间的继承关系我们使用”:children”来表示
查看全部 -
ansible主机和组的配置
3.1、简单的主机和组
ansible的配置文件位于/etc/ansible目录下,主要有ansible.cfg、hosts文件。本节重点介绍主机与组定义文件/etc/ansible/hosts.
/etc/ansible/hosts最简单的格式如下:
www.ixdba.net
[webservers]
ixdba1.net
ixdba2.net
[dbservers]
db.ixdba1.net
db.ixdba2.net
中括号中的名字代表组名,可以根据需求将庞大的主机分成具有标识的组,如上面分了两个组webservers和dbservers组;
主机(hosts)部分可以使用域名、主机名、IP地址表示;当然使用前两者时,也需要主机能反解析到相应的IP地址,一般此类配置中多使用IP地址;
未分组的机器需保留在hosts的顶部。
查看全部 -
ansible的安装
这里的安装环境是centos7.5版本操作系统,首先需要安装第三方epel源:
[root@ACA8D5EF ~]# yum install epel-release
Ansible依赖python环境,同时,Ansible已经是RHEL/Centos的一个组成部分,因此推荐通过yum安装ansible:
[root@ACA8D5EF ~]# yum install ansible
检查是否安装正确
ansible sa -m ping
查看全部 -
检查项
修改SSH配置文件 (主从配置)
vi /etc/ssh/sshd_config
开放四个配置 (主从配置)
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PermitRootLogin yes
重启服务
配置项
cd ~/.ssh
ssh-keygen -t rsa
cat id_rsa.pub----公钥内容
:添加目标节点的SSH认证信息
#ssh-copy-id root@目标节点IP
把产生的公钥复制到从节点的authorized_keys
vim ~/.ssh/authorized_keys
查看全部 -
检查项
修改SSH配置文件 (主从配置)
vi /etc/ssh/sshd_config
开放四个配置 (主从配置)
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PermitRootLogin yes
重启服务
配置项
cd ~/.ssh
ssh-keygen -t rsa
cat id_rsa.pub----公钥内容
:添加目标节点的SSH认证信息
#ssh-copy-id root@目标节点IP
把产生的公钥复制到从节点的authorized_keys
vim ~/.ssh/authorized_keys
ansible的安装
这里的安装环境是centos7.5版本操作系统,首先需要安装第三方epel源:
[root@ACA8D5EF ~]# yum install epel-release
Ansible依赖python环境,同时,Ansible已经是RHEL/Centos的一个组成部分,因此推荐通过yum安装ansible:
[root@ACA8D5EF ~]# yum install ansible
检查是否安装正确
ansible sa -m ping
ansible主机和组的配置
3.1、简单的主机和组
ansible的配置文件位于/etc/ansible目录下,主要有ansible.cfg、hosts文件。本节重点介绍主机与组定义文件/etc/ansible/hosts.
/etc/ansible/hosts最简单的格式如下:
www.ixdba.net
[webservers]
ixdba1.net
ixdba2.net
[dbservers]
db.ixdba1.net
db.ixdba2.net
中括号中的名字代表组名,可以根据需求将庞大的主机分成具有标识的组,如上面分了两个组webservers和dbservers组;
主机(hosts)部分可以使用域名、主机名、IP地址表示;当然使用前两者时,也需要主机能反解析到相应的IP地址,一般此类配置中多使用IP地址;
未分组的机器需保留在hosts的顶部。
3.2、指定主机范围
可在/etc/ansible/hosts文件中,指定主机的范围,示例如下:
[web]
www[01:50].ixdba.net
[db]
db[a:f].ixdba.net
3.3、主机变量
以下是Hosts部分中经常用到的变量部分:
ansible_ssh_host #用于指定被管理的主机的真实IP
ansible_ssh_port #用于指定连接到被管理主机的ssh端口号,默认是22
ansible_ssh_user #ssh连接时默认使用的用户名
ansible_ssh_pass #ssh连接时的密码
ansible_sudo_pass #使用sudo连接用户时的密码
ansible_sudo_exec #如果sudo命令不在默认路径,需要指定sudo命令路径
ansible_ssh_private_key_file #秘钥文件路径,秘钥文件如果不想使用ssh-agent管理时可以使用此选项
ansible_shell_type #目标系统的shell的类型,默认sh
ansible_connection #SSH 连接的类型:local , ssh , paramiko,在 ansible1.2之前默认是 paramiko ,后来智能选择,优先使用基于ControlPersist 的ssh
ansible_pythoninterpreter #用来指定python解释器的路径,默认为/usr/bin/python 同样可以指定ruby 、perl的路径
ansible_interpreter #其他解释器路径,用法与ansible_python_interpreter类似,这里””可以是ruby或perl等其它语言
例子1:
[web]
192.168.78.11 http_port=80
192.168.78.12 http_port=80
还可以改成这样:
[web]
192.168.78.11
192.168.78.12
[web:vars]
http_port=80
例子2:
[webhost]
host1
host2
[dbhost]
host2
host3
[allhosts:children]
webhost
Dbhost
主机组可以包含主机组,主机的变量可以通过继承关系,继承到最高等级的组的变量。定义主机组之间的继承关系我们使用”:children”来表示.
四、 ansible.cfg与默认配置
/etc/ansible/ansible.cfg文件中定义了ansible的主机的默认配置部分,如默认是否需要输入密码、是否开启sudo认证、action_plugins插件的位置、hosts主机组的位置、是否开启log功能、默认端口、key文件位置等等。
#inventory = /etc/ansible/hosts 该参数表示资源清单inventory文件的位置,资源清单就是一些Ansible需要连接管理的主机列表
#library = /usr/share/my_modules/ Ansible的操作动作,无论是本地或远程,都使用一小段代码来执行,这小段代码称为模块,这个library参数就是指向存放Ansible模块的目录
#module_utils = /usr/share/my_module_utils/
#remote_tmp = ~/.ansible/tmp 指定远程执行的路径
#local_tmp = ~/.ansible/tmp ansible管理节点的执行路径
#forks = 5 forks 设置默认情况下Ansible最多能有多少个进程同时工作,默认设置最多5个进程并行处理。具体需要设置多少个,可以根据控制主机的性能和被管理节点的数量来确定。
#poll_interval = 15 轮询间隔
#sudo_user = root sudo使用的默认用户 ,默认是root
#ask_sudo_pass = True 是否需要用户输入sudo密码
#ask_pass = True 是否需要用户输入连接密码
#remote_port = 22 这是指定连接对端节点的管理端口,默认是22,除非设置了特殊的SSH端口,不然这个参数一般是不需要修改的
#module_lang = C 这是默认模块和系统之间通信的计算机语言,默认为’C’语言.
host_key_checking = False 跳过ssh首次连接提示验证部分,False表示跳过。
#timeout = 10 连接超时时间
#module_name = command 指定ansible默认的执行模块
#nocolor = 1 默认ansible会为输出结果加上颜色,用来更好的区分状态信息和失败信息.如果你想关闭这一功能,可以把’nocolor’设置为‘1’:
#private_key_file=/path/to/file.pem 在使用ssh公钥私钥登录系统时候,使用的密钥路径
查看全部 -
检查项
修改SSH配置文件 (主从配置)
vi /etc/ssh/sshd_config
开放四个配置 (主从配置)
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PermitRootLogin yes
重启服务
配置项
cd ~/.ssh
ssh-keygen -t rsa
cat id_rsa.pub----公钥内容
:添加目标节点的SSH认证信息
#ssh-copy-id root@目标节点IP
把产生的公钥复制到从节点的authorized_keys
vim ~/.ssh/authorized_keys
ansible的安装
这里的安装环境是centos7.5版本操作系统,首先需要安装第三方epel源:
[root@ACA8D5EF ~]# yum install epel-release
Ansible依赖python环境,同时,Ansible已经是RHEL/Centos的一个组成部分,因此推荐通过yum安装ansible:
[root@ACA8D5EF ~]# yum install ansible
检查是否安装正确
ansible sa -m ping
ansible主机和组的配置
3.1、简单的主机和组
ansible的配置文件位于/etc/ansible目录下,主要有ansible.cfg、hosts文件。本节重点介绍主机与组定义文件/etc/ansible/hosts.
/etc/ansible/hosts最简单的格式如下:
www.ixdba.net
[webservers]
ixdba1.net
ixdba2.net
[dbservers]
db.ixdba1.net
db.ixdba2.net
中括号中的名字代表组名,可以根据需求将庞大的主机分成具有标识的组,如上面分了两个组webservers和dbservers组;
主机(hosts)部分可以使用域名、主机名、IP地址表示;当然使用前两者时,也需要主机能反解析到相应的IP地址,一般此类配置中多使用IP地址;
未分组的机器需保留在hosts的顶部。
3.2、指定主机范围
可在/etc/ansible/hosts文件中,指定主机的范围,示例如下:
[web]
www[01:50].ixdba.net
[db]
db[a:f].ixdba.net
3.3、主机变量
以下是Hosts部分中经常用到的变量部分:
ansible_ssh_host #用于指定被管理的主机的真实IP
ansible_ssh_port #用于指定连接到被管理主机的ssh端口号,默认是22
ansible_ssh_user #ssh连接时默认使用的用户名
ansible_ssh_pass #ssh连接时的密码
ansible_sudo_pass #使用sudo连接用户时的密码
ansible_sudo_exec #如果sudo命令不在默认路径,需要指定sudo命令路径
ansible_ssh_private_key_file #秘钥文件路径,秘钥文件如果不想使用ssh-agent管理时可以使用此选项
ansible_shell_type #目标系统的shell的类型,默认sh
ansible_connection #SSH 连接的类型:local , ssh , paramiko,在 ansible1.2之前默认是 paramiko ,后来智能选择,优先使用基于ControlPersist 的ssh
ansible_pythoninterpreter #用来指定python解释器的路径,默认为/usr/bin/python 同样可以指定ruby 、perl的路径
ansible_interpreter #其他解释器路径,用法与ansible_python_interpreter类似,这里””可以是ruby或perl等其它语言
例子1:
[web]
192.168.78.11 http_port=80
192.168.78.12 http_port=80
还可以改成这样:
[web]
192.168.78.11
192.168.78.12
[web:vars]
http_port=80
例子2:
[webhost]
host1
host2
[dbhost]
host2
host3
[allhosts:children]
webhost
Dbhost
主机组可以包含主机组,主机的变量可以通过继承关系,继承到最高等级的组的变量。定义主机组之间的继承关系我们使用”:children”来表示.
四、 ansible.cfg与默认配置
/etc/ansible/ansible.cfg文件中定义了ansible的主机的默认配置部分,如默认是否需要输入密码、是否开启sudo认证、action_plugins插件的位置、hosts主机组的位置、是否开启log功能、默认端口、key文件位置等等。
#inventory = /etc/ansible/hosts 该参数表示资源清单inventory文件的位置,资源清单就是一些Ansible需要连接管理的主机列表
#library = /usr/share/my_modules/ Ansible的操作动作,无论是本地或远程,都使用一小段代码来执行,这小段代码称为模块,这个library参数就是指向存放Ansible模块的目录
#module_utils = /usr/share/my_module_utils/
#remote_tmp = ~/.ansible/tmp 指定远程执行的路径
#local_tmp = ~/.ansible/tmp ansible管理节点的执行路径
#forks = 5 forks 设置默认情况下Ansible最多能有多少个进程同时工作,默认设置最多5个进程并行处理。具体需要设置多少个,可以根据控制主机的性能和被管理节点的数量来确定。
#poll_interval = 15 轮询间隔
#sudo_user = root sudo使用的默认用户 ,默认是root
#ask_sudo_pass = True 是否需要用户输入sudo密码
#ask_pass = True 是否需要用户输入连接密码
#remote_port = 22 这是指定连接对端节点的管理端口,默认是22,除非设置了特殊的SSH端口,不然这个参数一般是不需要修改的
#module_lang = C 这是默认模块和系统之间通信的计算机语言,默认为’C’语言.
host_key_checking = False 跳过ssh首次连接提示验证部分,False表示跳过。
#timeout = 10 连接超时时间
#module_name = command 指定ansible默认的执行模块
#nocolor = 1 默认ansible会为输出结果加上颜色,用来更好的区分状态信息和失败信息.如果你想关闭这一功能,可以把’nocolor’设置为‘1’:
#private_key_file=/path/to/file.pem 在使用ssh公钥私钥登录系统时候,使用的密钥路径
查看全部 -
检查项
修改SSH配置文件 (主从配置)
vi /etc/ssh/sshd_config
开放四个配置 (主从配置)
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PermitRootLogin yes
重启服务
配置项
cd ~/.ssh
ssh-keygen -t rsa
cat id_rsa.pub----公钥内容
:添加目标节点的SSH认证信息
#ssh-copy-id root@目标节点IP
把产生的公钥复制到从节点的authorized_keys
vim ~/.ssh/authorized_keys
ansible的安装
这里的安装环境是centos7.5版本操作系统,首先需要安装第三方epel源:
[root@ACA8D5EF ~]# yum install epel-release
Ansible依赖python环境,同时,Ansible已经是RHEL/Centos的一个组成部分,因此推荐通过yum安装ansible:
[root@ACA8D5EF ~]# yum install ansible
检查是否安装正确
ansible sa -m ping
ansible主机和组的配置
3.1、简单的主机和组
ansible的配置文件位于/etc/ansible目录下,主要有ansible.cfg、hosts文件。本节重点介绍主机与组定义文件/etc/ansible/hosts.
/etc/ansible/hosts最简单的格式如下:
www.ixdba.net
[webservers]
ixdba1.net
ixdba2.net
[dbservers]
db.ixdba1.net
db.ixdba2.net
中括号中的名字代表组名,可以根据需求将庞大的主机分成具有标识的组,如上面分了两个组webservers和dbservers组;
主机(hosts)部分可以使用域名、主机名、IP地址表示;当然使用前两者时,也需要主机能反解析到相应的IP地址,一般此类配置中多使用IP地址;
未分组的机器需保留在hosts的顶部。
3.2、指定主机范围
可在/etc/ansible/hosts文件中,指定主机的范围,示例如下:
[web]
www[01:50].ixdba.net
[db]
db[a:f].ixdba.net
3.3、主机变量
以下是Hosts部分中经常用到的变量部分:
ansible_ssh_host #用于指定被管理的主机的真实IP
ansible_ssh_port #用于指定连接到被管理主机的ssh端口号,默认是22
ansible_ssh_user #ssh连接时默认使用的用户名
ansible_ssh_pass #ssh连接时的密码
ansible_sudo_pass #使用sudo连接用户时的密码
ansible_sudo_exec #如果sudo命令不在默认路径,需要指定sudo命令路径
ansible_ssh_private_key_file #秘钥文件路径,秘钥文件如果不想使用ssh-agent管理时可以使用此选项
ansible_shell_type #目标系统的shell的类型,默认sh
ansible_connection #SSH 连接的类型:local , ssh , paramiko,在 ansible1.2之前默认是 paramiko ,后来智能选择,优先使用基于ControlPersist 的ssh
ansible_pythoninterpreter #用来指定python解释器的路径,默认为/usr/bin/python 同样可以指定ruby 、perl的路径
ansible_interpreter #其他解释器路径,用法与ansible_python_interpreter类似,这里””可以是ruby或perl等其它语言
例子1:
[web]
192.168.78.11 http_port=80
192.168.78.12 http_port=80
还可以改成这样:
[web]
192.168.78.11
192.168.78.12
[web:vars]
http_port=80
例子2:
[webhost]
host1
host2
[dbhost]
host2
host3
[allhosts:children]
webhost
Dbhost
主机组可以包含主机组,主机的变量可以通过继承关系,继承到最高等级的组的变量。定义主机组之间的继承关系我们使用”:children”来表示.
四、 ansible.cfg与默认配置
/etc/ansible/ansible.cfg文件中定义了ansible的主机的默认配置部分,如默认是否需要输入密码、是否开启sudo认证、action_plugins插件的位置、hosts主机组的位置、是否开启log功能、默认端口、key文件位置等等。
#inventory = /etc/ansible/hosts 该参数表示资源清单inventory文件的位置,资源清单就是一些Ansible需要连接管理的主机列表
#library = /usr/share/my_modules/ Ansible的操作动作,无论是本地或远程,都使用一小段代码来执行,这小段代码称为模块,这个library参数就是指向存放Ansible模块的目录
#module_utils = /usr/share/my_module_utils/
#remote_tmp = ~/.ansible/tmp 指定远程执行的路径
#local_tmp = ~/.ansible/tmp ansible管理节点的执行路径
#forks = 5 forks 设置默认情况下Ansible最多能有多少个进程同时工作,默认设置最多5个进程并行处理。具体需要设置多少个,可以根据控制主机的性能和被管理节点的数量来确定。
#poll_interval = 15 轮询间隔
#sudo_user = root sudo使用的默认用户 ,默认是root
#ask_sudo_pass = True 是否需要用户输入sudo密码
#ask_pass = True 是否需要用户输入连接密码
#remote_port = 22 这是指定连接对端节点的管理端口,默认是22,除非设置了特殊的SSH端口,不然这个参数一般是不需要修改的
#module_lang = C 这是默认模块和系统之间通信的计算机语言,默认为’C’语言.
host_key_checking = False 跳过ssh首次连接提示验证部分,False表示跳过。
#timeout = 10 连接超时时间
#module_name = command 指定ansible默认的执行模块
#nocolor = 1 默认ansible会为输出结果加上颜色,用来更好的区分状态信息和失败信息.如果你想关闭这一功能,可以把’nocolor’设置为‘1’:
#private_key_file=/path/to/file.pem 在使用ssh公钥私钥登录系统时候,使用的密钥路径
查看全部 -
puppet用ruby写的查看全部
-
调用ansible模块
查看全部 -
runner
查看全部 -
密码设置文件
查看全部 -
开启的线程数
查看全部 -
ansible插件
查看全部 -
SaltStack概念
1、一个配置管理系统,能够维护预定义状态的远程节点
2、一个分布式远程执行系统,用来在远程节点上执行命令和查询数据。
查看全部
举报