ansible相关模块

copy模块(重点)

copy模块⽤于对⽂件的远程拷⻉操作(如把本地的⽂件拷⻉到远程 的机器上)

https://docs.ansible.com/ansible/latest/modules/copy_module.htm l#copy-module

在master上准备⼀个⽂件,拷⻉此⽂件到group1的所有机器上

使⽤content参数直接往远程⽂件⾥写内容(会覆盖原内容)

使⽤force参数控制是否强制覆盖

使⽤backup参数控制是否备份⽂件

copy模块拷⻉时要注意拷⻉⽬录后⾯是否带"/"符号

练习: 在master上配置好所有的yum源,然后拷⻉到group1的远程 机器上(要求⽬录内的内容完全⼀致)

练习: 使⽤hostname模块修改过主机名后.在master上修 改/etc/hosts⽂件,并拷⻉到group1的远程机器上

关于DNS的补充:

域名为公⽹的唯⼀名字,主机名为内⽹的名字(可以重名,但最好不 要这么做)

⽬前⾃建DNS做域名解析已经很少了, 但可以通过DNS解析主机 名来实现内⽹多台服务器的解析

现在学了ansible的hostname与copy模块,轻松实现N多台服务器 的主机名管理,DNS也不需要再搭建了

template模块(拓展)

与copy模块功能⼏乎⼀样.

template模块⾸先使⽤变量渲染jinja2模板⽂件成普通⽂件,然后再复 制过去.⽽copy模块不⽀持.(jinja2是⼀个基于python的模板引擎)

template模块不能拷⻉⽬录

fetch模块

fetch模块与copy模块类似,但作⽤相反。⽤于把远程机器的⽂件拷 ⻉到本地。

第1步: 在两台被管理机上分别创建⼀个同名⽂件(但内容不同)

第2步: 从master上fecth⽂件(因为group1⾥有2台机器,为了避免同名 ⽂件⽂件冲突,它使⽤了不同的⽬录)

第3步: 先删除上⾯fetch过来的, 然后尝试只fetch其中⼀台机器的, 也会使⽤名称来做⼦⽬录区分

注意: fetch模块不能从远程拷⻉⽬录到本地

user模块

user模块⽤于管理⽤户账号和⽤户属性。

创建aaa⽤户,默认为普通⽤户,创建家⽬录

创建bbb系统⽤户,并且登录shell环境为/sbin/nologin

创建ccc⽤户, 使⽤uid参数指定uid, 使⽤password参数传密码

创建⼀个普通⽤户叫hadoop,并产⽣空密码密钥对

删除aaa⽤户,但家⽬录默认没有删除

删除bbb⽤户,使⽤remove=yes参数让其删除⽤户的同时也删除家⽬ 录

group模块

group模块⽤于管理⽤户组和⽤户组属性。

创建组

删除组(如果有⽤户的gid为此组,则删除不了)

相关推荐
镜子AI7 小时前
镜子AI 技术复盘:三条自动化链路上的“停止条件“设计
运维·人工智能·自动化
tianyuanwo7 小时前
NetBox 数据库详解:当“关系型数据库”被装进一个网络运维的领域模型里
运维·数据库·netbox
知已难寻9 小时前
03 · OpenStack的计算管理 Nova
运维·服务器·开发语言·云原生·云计算·openstack·开源软件
huainingning10 小时前
Windows syslog日志服务器搭建与模拟器对接
运维·服务器·智能路由器
say_fall10 小时前
【Linux系统编程】Ext 文件系统:磁盘与存储、文件与目录、现代计算机究竟如何寻找文件
linux·运维·服务器·数据库·c++
wacsii11 小时前
【Linux进程(一)】Linux 进程初探:操作系统如何管理进程?fork() 为什么返回两次?
linux·运维·服务器
共享家952711 小时前
408 操作系统第一章
服务器·数据库·windows
相思难忘成疾11 小时前
从零搭建 Kubernetes 1.30 集群:kubeadm 部署一主多从实战(RHEL 9.3 + Docker + flannel)
linux·运维·kubernetes
PellyKoo11 小时前
【docker】cifs卷改smb密码后容器起不来的解决方法
运维·docker·容器
云飞云共享云桌面11 小时前
1台SolidWorks服务器如何承载10个设计并发?
运维·服务器·网络·3d·制造