2019-08-21 ansible安装及主机清单

昨日补充

远程服务的配置文件

/etc/ssh/sshd_config   ssh服务端配置文件
/etc/ssh/ssh_config    ssh客户端配置文件

ssh服务端配置文件说明

Port 22 ssh服务的端口号
ListenAddress 0.0.0.0 ssh服务监听的地址
PS:服务监听的地址必须是本机系统有的IP地址
PermitEmtyPassword no 是否允许空密码登录
PermitRootLogin yes 是否允许root用户登录
PasswordAuthentication yes 是否允许密码登录
GSSAPIAuthentication yes 是否允许GSSAPI认证,影响ssh的连接效率
useDNS yes 是否允许DNS反向解析,影响ssh的连接效率

ssh的防范措施

1 .尽量使用秘钥认证,不要使用密码认证(密码要满足一定复杂度.定期修改)
2 .架构中的服务器,尽量不要配外网IP
3 .ssh服务只监听内网IP
4 .硬件防火墙的防护,根据业务情况,做访问控制 ACL安全策略(路由器) ASA(思科硬件防火墙)
5 .监控系统重要文件和目录是否被修改
6 .锁定系统重要文件
(1) 用户方面 /etc/passwd /etc/shadow /etc/group /etc/groupshadow
(2) 服务程序方面 /etc/profile.d /etc/rc.local cron(定时任务文件)
(3) 系统相关的: /etc/profile ~/.bashrc ~//bash_profile

批量管理服务的介绍

并行管理多台主机

a .实现批量分发数据
b .实现批量部署软件
c .实现批量收集信息(资产管理)
d .实现批量自动化管理 代码上线,服务重启

ansible软件的优点

a .安装部署简单
b .无daemon,修改配置,无需重启服务
c .不需要客户端,linux基于ssh通信
d .功能强大

ansible的部署过程

管理端

1)配置epel源
wget -O /etc/yum.repos.d/epel.repo     http://mirrors.aliyun.com/repo/Centos-7.repo
2)安装ansible
yum -y install ansible

被管理端

确认selinux和防火墙是否关闭

配置anisble软件的主机清单inventory

配置文件/etc/ansible/hosts
方法一:直接写入ip地址
vim /etc/ansible/hosts
172.16.1.31
172.16.1.41
172.16.1.7
方法二:写入主机组
vim /etc/ansible/hosts
[rsync_server]
172.16.1.41
[rsync_client]
172.16.1.31
172.16.1.8
方法三:嵌套写入主机组
vim /etc/ansible/hosts
[rsync:children]   #":children"是嵌入式主机组的固定格式
rsync_server
rsync_client
[rsync_server]
172.16.1.41
[rsync_client]
172.16.1.31
172.16.1.8

方法四:写入主机参数信息(内置变量)
vim /etc/ansible/hosts
[rsync_server]
172.16.1.41  ansible_user=root ansible_password=123456 ansible_port=22
[rsync_client]
172.16.1.31
172.16.1.8
==================================================================
ansible_user 连接远程端的用户
ansible_password 远程端用户的密码
anisble_port 连接的端口号
ansible_host 连接远程主机的ip地址,可以用来设置别名
方法五:组变量
vim /etc/ansible/hosts
[rsync_server]
172.16.1.41
[rsync_client]
172.16.1.31
172.16.1.8
[rsync_server:vars]    #":vars"是设置组变量的固定格式
anisble_user=root
anisble_password=123456
ansible_port=222
方法六:使用匹配符号信息
[rsync_server]
172.16.1.[1:4]   #表示172.16.1.1~172.16.1.4中所有主机
web-[a:e].odlboy.edu  #表示web-a.oldboy.edu~web-e.oldboy.edu中所有主机

ansible模块
如何学习模块

1 .简单理解模块的使用
2 .查看模块的详细说明
3 .掌握模块的参数使用方法(根据样例学习参数)

ansible返回颜色的含义

绿色: 对主机信息进行查看,操作执行成功
黄色: 对主机做出了改变
粉色: 给出的一些警告信息,忠告和建议
红色: 报错提示信息

1 .command模块,ansible的默认模块,但不支持一些特殊符号的使用如;,>,>>,|
[root@m01 ~]# ansible all -m command -a "hostname"
172.16.1.41 | CHANGED | rc=0 >>
backup
172.16.1.31 | CHANGED | rc=0 >>
nfs01
172.16.1.7 | CHANGED | rc=0 >>
web01
2. shell模块,ansible的万能模块,相当于bash
[root@m01 ~]# ansible all -m shell -a "cd /tmp;pwd"
172.16.1.31 | CHANGED | rc=0 >>
/tmp
172.16.1.41 | CHANGED | rc=0 >>
/tmp
172.16.1.7 | CHANGED | rc=0 >>
/tmp

3.script模块,允许在远程端执行脚本文件,不需要把脚本复制到远程端,也不需要给脚本加入执行权限
[root@m01 /server/scripts]# ll ansible_test.sh 
-rw-r--r-- 1 root root 26 Aug 21 15:58 ansible_test.sh
[root@m01 /server/scripts]# ansible all -m script -a "ansible_test.sh"
172.16.1.41 | CHANGED => {
    "changed": true, 
    "rc": 0, 
    "stderr": "Shared connection to 172.16.1.41 closed.\r\n", 
    "stderr_lines": [
        "Shared connection to 172.16.1.41 closed."
    ], 
    "stdout": "", 
    "stdout_lines": []
}
172.16.1.31 | CHANGED => {
    "changed": true, 
    "rc": 0, 
    "stderr": "Shared connection to 172.16.1.31 closed.\r\n", 
    "stderr_lines": [
        "Shared connection to 172.16.1.31 closed."
    ], 
    "stdout": "", 
    "stdout_lines": []
}
172.16.1.7 | CHANGED => {
    "changed": true, 
    "rc": 0, 
    "stderr": "Shared connection to 172.16.1.7 closed.\r\n", 
    "stderr_lines": [
        "Shared connection to 172.16.1.7 closed."
    ], 
    "stdout": "", 
    "stdout_lines": []
}

作业

1.如下参数的作用

    ansible_become        是否进行强制升级
    ansible_become_method  升级的方法sudo或su
    ansible_become_user    升级成什么用户
    ansible_become_password  su或sudo的密码
[root@m01 /server/scripts]# cat /etc/ansible/hosts
[oldboy]
172.16.1.41 ansible_ssh_user=oldboy ansible_ssh_pass=123456 ansible_become_password=123456 ansible_become_user=root ansible_become=yes ansible_become_method=su
172.16.1.31 
172.16.1.7 ansible_ssh_user=oldboy ansible_ssh_pass=123456 ansible_become_password=123456 ansible_become_user=root ansible_become=yes ansible_become_method=sudo
[root@m01 /server/scripts]# ansible 172.16.1.7 -a "whoami"
172.16.1.7 | CHANGED | rc=0 >>
root
[root@m01 /server/scripts]# ansible 172.16.1.41 -a "whoami"
172.16.1.41 | CHANGED | rc=0 >>
root

2 . 以下两个模块的作用

 expect – Executes a command and responds to prompts
 telnet – Executes a low-down and dirty telnet command
expect个人理解:执行命令command,是使用responses给出的响应进行免交互????
telnet 模块及telnet命令,user登录的用户名,password登录的密码
host登录的主机IP如果不指定默认远程用户ip,command执行的命令(必须有的)?command执行的命令,所见即所得?,一般用来连接网络设备使用
[root@m01 /server/scripts]# ansible web01 -m telnet -a "command=whoami user=oldboy password=12345"
web01 | CHANGED => {
   "changed": true, 
   "output": [
       "\u001b[0mwhoami\r\noldboy\r\n\u001b[34;1m[oldboy\u001b[35;1m@\u001b[31;1mweb01 ~]$ "
   ]
}

3.免交互式 输入yes或no

ansible利用域名管理主机时, 每次都需要有yes/no确认, 如何实现免交互 
1)vim /etc/ssh/ssh_config
 35    StrictHostKeyChecking no
2)vim /etc/ansilbe/ansible.cfg
 71 host_key_checking = False

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 210,914评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 89,935评论 2 383
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,531评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,309评论 1 282
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,381评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,730评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,882评论 3 404
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,643评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,095评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,448评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,566评论 1 339
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,253评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,829评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,715评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,945评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,248评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,440评论 2 348

推荐阅读更多精彩内容