问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

问下统信的服务器操作系统这个工具的配置方法?

发布网友 发布时间:2024-09-07 04:30

我来回答

1个回答

热心网友 时间:2024-11-22 23:53

准备环境
适用版本:■UOS服务器操作系统d版
适用架构:■ARM64、AMD64、MIPS64
网络:连接互联网情况下进行
本次测试环境如下:

测试环境
注:请根据实际情况操作该文方法进行配置。
功能描述
ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。Ansible架构相对比较简单,仅需通过SSH连接客户机执行任务即可
安装与配置
一、安装ansible工具
1、直接 命令安装
apt install ansible -y

命令安装
2、验证安装结果
通过ansible --version验证安装结果

验证安装结果
如果命令可以正常执行,则表示ansible安装成功
3、配置ssh免密登录
在ansible-server(以下简称server)上配置对ansible-client(以下简称client)的免密登录,本次实现为实现批量操作,在server中也配置针对自己主机的免密登录。
生成密钥 ssh-keygen

生成密钥
拷贝密钥至client
ssh-copy-id root@192.168.247.154

拷贝密钥至client
拷贝密钥至server主机
ssh-copy-id root@192.168.247.131

贝密钥至server主机
二、Ansible使用
1、主机清单配置
Ansible 管理主机信息的配置文件,相当于系统 Hosts 文件的功能,默认存放在 /etc/ansible/hosts。在 hosts 文件中,通过分组来组织设备。实验配置如下:

2、ansible命令
Ansible 的维护命令大多数是以 ansible 开头,在终端输入 ansible 后连续按两次Tab键,会补全所有跟 ansible 相关的命令。

(1)ansible命令说明:
ansible 是生产环境中使用非常频繁的命令之一,主要用于临时性的维护,如查看web服务器组磁盘使用情况、复制一个文件到其他机器等。类似这些没有规律的、临时需要做的任务,我们成为非固化需求,临时一次性操作,语法如下:
ansible [options]
-v(—verbose):输出详细的执行过程信息,可以得到执行过程所有信息;
-i PATH(—inventory=PATH):指定inventory信息,默认为/etc/ansible/hosts;
-f NUM(—forks=NUM):并发线程数,默认为5个线程;
—private-key=PRIVATE_KEY_FILE:指定密钥文件;
-m NAME,—mole-name=NAME:指定执行使用的模块;
-M DIRECTORY(—mole-path=DIRECTORY) :指定模块存放路径,默认为/usr/share/ansible;
-a ARGUMENTS(—args=ARGUMENTS):指定模块参数;
-u USERNAME(—user=USERNAME):指定远程主机以USERNAME运行命令;
-l subset(—limit=SUBSET):*运行主机;
①检查所有主机是否存活,执行命令如下:
ansible all -m ping

②列出web组主机列表,执行命令如下:

③批量显示web组中的磁盘使用空间,执行命令如下:
ansible web -m command -a "df -hT"

(2)ansible-doc
ansible-doc用来查询ansible模块文档的说明,类似于man命令,针对每个模块都有详细的用法说明及应用案例介绍,语法如下:
ansible-doc ping

(3)ansible-playbook
Ansible-playbook是日常应用中使用频率最高的命令,类似于Linux中的sh或source命令,用来执行系列任务。其工作机制:通过读取预先编写好的playbook文件实现集中处理任务。ansible-playbook命令后跟yml格式的playbook文件,playbook文件存放了要执行的任务代码,命令使用方式如下:
Ansible-playbook playbook.yml

3、ansible模块
(1)command模块
command模块在远程主机执行命令,不支持管道、重定向等shell的特性。常用的参数如下:
chdir:在远程主机上运行命令前要提前进入的目录;
creates:在命令运行时创建一个文件,如果文件已存在,则不会执行创建任务;
removes:在命令运行时移除一个文件,如果文件不存在,则不会执行移除任务;
executeable:指明运行命令的shell程序;
示范:
ansible all -m command -a "ls -lst /data"

(2)shell模块
shell模块在远程主机执行命令,相当于调用远程主机的Shell进程,然后在该Shell下打开一个子Shell运行命令。和command模块的区别是它支持Shell特性:如管道、重定向等。
示范:
ansible all -m shell -a "ping www.baidu.com -c 2 "

ansible all -m shell -a “echo hello world >/data/1.txt”

(3)copy模块
copy模块用于复制指定主机文件到远程主机的指定位置。常见的参数如下:
dest:指出复制文件的目标目录位置,使用绝对路径。如果源是目录,则目标也要是目录,如果目标文件已存在,会覆盖原有内容;
src:指出源文件的路径,可以使用相对路径和绝对路径,支持直接指定目录。如果源是目录,则目标也要是目录;
mode:指出复制时,目标文件的权限,可选;
owner:指出复制时,目标文件的属主,可选;
group:指出复制时目标文件的属组,可选;
content:指出复制到目标主机上的内容,不能和src一起使用,相当于复制content指明的数据到目标文件中;
示范:
ansible web -m copy -a "src=/etc/hosts dest=/data/server.hosts mode=777 "

说明:将本机的/etc/hosts文件复制到web分组的控制端,并修改权限为777
(4)apt模块
apt模块基于apt机制,对远程主机管理程序包。常用的参数如下:
name:程序包名称,可以带上版本号。若不指明版本,则默认为最新版本;
state=present|atest|absent:指明对程序包执行的操作:present表明安装程序包,latest表示安装最新版本的程序包,absent表示卸载程序包;
disablerepo:在用apt安装时,临时禁用某个仓库的ID;
enablerepo:在用apt安装时,临时启用某个仓库的ID;
conf_file:apt运行时的配置文件,而不是使用默认的配置文件;
disable_gpg_check=yes|no:是否启用完整性校验功能;
示范:
ansible all -m apt -a "name=apache2"
ansible web -m shell -a "systemctl status apache2"

(5)service模块
service模块为用来管理远程主机上的服务的模块。常见的参数如下:
name:被管理的服务名称;
state=started|stopped|restarted:动作包含启动,关闭或重启;
enable=yes|no:表示是否设置该服务开机自启动;
runlevel:如果设定了enabled开机自启动,则要定义在哪些运行目标下自动启动;
示范:
ansible web -m service -a "name=apache2 enabled=yes state=restarted"

(6)user模块
user模块主要用于管理远程主机上的用户账号。常见的参数如下:
name:必选参数,账号名称;
state=present|absent:创建账号或者删除账号,present表示创建,absent表示删除;
system=yes|no:是否为系统账户;
uid:用户UID;
group:用户的基本组
groups:用户的附加组;
shell:默认使用的shell;
home:用户的家目录;
mve_home=yes|no:
如果设置的家目录已经存在,是否将已存在的家目录进行移动;
pssword:用户的密码,建议使用加密后的字符串;
comment:用户的注释信息;
remore=yes|no:当state=absent时,是否要删除用户的家目录;
示范:
ansible web -m user -a "name=test002 system=yes shell=/bin/bash home=/home/test002 password=123@123"
不建议用,个人尝试密码登录失败
三、playbook配置文件
1、执行配置文件
playbook配置文件使用YAML语法,具有简洁明了、结构清晰等特点。playbook配置文件类似于shell脚本,是一个YAML格式的文件,用于保存针对特定需求的任务列表。上面介绍的ansible命令虽然可以完成各种任务,但是当配置一些复杂任务时,逐条输入就显得效率非常低下。更有效的方案是在playbook配置文件中放置所有的任务代码,利用ansible-playbook命令执行该文件,可以实现自动化运维。YAML文件的扩展名通常为.yaml或.yml。YAML语法与其他高级语言类似,其结构通过缩进来展示,通过“-”来代表项;“:”用来分隔键和值;整个文件以“---”开头并以“…”结尾。
语法如下:
ansible-playbook [option] /PATH/TO/PLAYBOOK.yaml
--syntax-check:检测yaml文件的语法;
-C(—check):预测试,不会改变目标主机的任何设置;
--list-hosts:列出yaml文件影响的主机列表;
--list-tasks:列出yaml文件的任务列表;
--list-tags:列出yaml文件中的标签;
-t TAGS(—tags=TAGS):表示只执行指定标签的任务;
--skip-tags=SKIP_TAGS:表示除了指定标签的任务,执行其他任务;
--start-at-task=START_AT:从指定的任务开始往下运行;
示范:
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果手机微信怎么换漂亮字体(苹果手机微信怎么换行输入) 有什么好用的app转换字体 手写转文字的软件 erp可以看评论地址吗 淘宝评论url是什么意思? 揭秘:码牌支付风控升级,背后真相揭秘 电脑电视直播软件哪个好用什么软件好电脑看电视直播 潼南子同街学区是哪些 三极管BU406价格和参数? 火锅料放在冰柜忘了插电一个星期给会坏了吗 火锅的设备有哪些 系统快速简易安装批量安装Linux系统批量安装linux 张雪峰的税务硕士课程怎么样? 6�1海狸是怎么样筑造堤坝的?又是为什么筑造呢? [体育信息] 什么专业好就业啊!? linux面板推荐? 昨晚我梦见我死了 梦到自己死了魂魄还在,梦到自己死了灵魂在走 大件货运服务跨越物流运输安全吗? ...换一次?或几万公里换一次?我2004年买的车,现36000多公里。 大件物流大件物流的注意事项 16年的雪佛兰赛欧多少钱 13年雪佛兰赛欧多少钱 大件运输都包括什么 本田柴油汽车多少钱一公里 2023江西高考时间是几月几号 具体时间安排 五羊本田的摩托车轮胎可以行使多少公里? 我的本田大鲨125是95年的,跑了36000公里。93#汽油5.07元/升.跑140... 吉祥语之五字对联:云书大 2011年1月12日刚才哪里地震了?在上海有震感。 葛优参演电影 2011年3月11日日本发生了大地震那中国有震感吗 如何评价张雪峰税务硕士这门课程? linux shell的作用 supervisor重启与批量管理服务 感觉十二岁那时的自己比十七岁的自己成熟? 一个12岁的女孩,说话很成熟,不属于这个年龄段该有的成熟,这是怎么回事... 12岁和32岁有什么区别 为什么我才12岁,心理成熟都可以超过80后了 心脏流经六的血液是 tft和lcd哪个好 lcd和TFT哪种好? 圆葱炒鸡蛋,怎么做好吃更入味?教你正确做法,鲜香脆嫩超下饭 带手和步的成语 如何用itunes同步视频到手机 内蒙古哪些大学招收浙江学生 上海市浦东新区远东一中和远东二中哪个好? 中国苗木交易网中国苗木交易网现有产品 魔道祖师摘抄 魔道祖师摘抄段落 补铁第一名是什么食物 补铁第一名是什么食物 补铁有什么作用和功效 子宫后位好顺产吗