ansible 切换用户问题
admin
2023-03-04 09:21:24
0

ansible 切换用户问题

​ 在实际生产环境中,应用程序的用户为不允许用户直接登陆,即为登陆用户user1 ,操作应用程序为user2,需要完成对应用程序的启动关闭,需要登陆user1 切换user2 操作应用程序。

​ 在ansible 实际应用中怎么解决此类问题呢,通过多方查看资料发现可以ansible_become这个参数可以完美的解决这个问题。

配置文件修改为一下

[pro1]
192.168.0.226   ansible_ssh_user=user1  ansible_ssh_pass='passwd' ansible_become=true ansible_become_user=user2  ansible_become_pass='passwd'
[pro2]
10.111.36.72  ansible_ssh_user=manager  ansible_ssh_pass='O5e2#L9w'

注释如下:

ansible_user # ssh用户
ansible_ssh_pass # 密码
ansible_port # ssh端口
ansible_become # true or false,是否切换用户
ansible_become_method # 切换用户使用的方法,如sudo、su
ansible_become_user # 要切换的用户
ansible_become_pass # 切换用户是需要的密码

注意:
这里还有一个非常重要的问题!!!
博主今天遇到了!!!
就是同一台主机,同一个用户登陆操作不同的应用程序
user1 可以正常登陆 正常操作应用程序
user1 可以正常登陆 切换user2 操作应用程序
这里就出现了冲突矛盾的问题!!!
在ansible 应用组里面 即使指定了组 但是user1 执行任何程序的时候还是会自动切换成user2 用户!!

需要怎么如何解决这个问题呢????
通过查看资料以及好友的帮助有两条解决问题的方法:

方法一:

在hosts 文件中不使用bcome 参数,在语句中进行附加

ansible-playbook /etc/ansible/pro1.yml -e "ansible_become='yes'ansible_become=true ansible_become_user='user2' ansible_become_pass='passwd'"

方法二:

这里博主是使用了方法二,因为密码有特殊字符不好处理。

当查看主机的时候发现主机有多网卡,于是就把pro2的ip地址改成另一个内网地址,经过测试,两个项目都能正常使用了!!!

总结:

经过测试,ansible_become=true 这个参数,对同一个主机地址,同一个用户都会有效果,即使指定不同的分组,优先级甚是高!解决问题方法的思路很多种,有时候换一下角度考虑,问题就能迎刃而解。

相关内容

热门资讯

山西一学生在黄土崩塌中遇难:中... 据央视新闻:7月24日18时49分,山西省洪洞县好义村发生黄土崩塌,造成一户民宅被掩埋,造成5人死亡...
“日本已有半年看不到大熊猫了” 今年1月27日,双胞胎大熊猫“晓晓”和“蕾蕾”从日本返回中国。25日,日本共同社发文感慨:到本月27...
江苏:以应用带产业给力交通“智... 胥大伟 7月23日,江苏省政府举行“人工智能+交通运输”路演会。会上发布了《江苏省“人工智能+交通运...
中国AI成功救场后,OpenA... 近日,美国人工智能公司OpenAI的模型在安全测试中失控“越狱”,攻击了全球最大AI开源平台Hugg...
新华社出图|这就是“千年瓷都”... 在中国乃至世界版图上这座城市都是独一无二一捧泥一窑火一条路让这里被世界认识更令世界倾心“中国瓷”这就...
洗衣机放不掉水怎么修 当你的洗衣机不能放水时,你可能会感到很不方便。这可能是由于以下几种原因: 1. 水龙头未打开:检查...
洗衣机放不出水是什么原因   1、原因:可能是家里或者小区停水了,导致的不出水;  解决办法:应测试家里其他水龙头是否可以正常...
杭州知存算力申请存储电路专利,... 国家知识产权局信息显示,杭州知存算力科技有限公司申请一项名为“存储电路、控制方法、控制装置、存算系统...
tcl洗衣机放不出水是怎么回事 1.首先要看洗衣机是双缸半自动,还是全自动的。2.半自动好办,一般都是拉簧线松了,把后盖打开,有个黑...
诺奖得主用AI凭空造出基因剪刀... 新智元报道 AI造出了一把自然界从未存在的基因剪刀。 而且,比几十亿年进化打磨出来的那把还好使。 ...