ansible安装部署及问题

rpm -Uvh *.rpm --nodeps --force 含义:
-U:升级软件,若未软件尚未安装,则安装软件。
-v:表示显示详细信息。
-h:以"#"号显示安装进度。
–force:强制安装
–nodeps:不考虑相依属性的关系

rpm -q 软件名称
查看已安装的软件

一。安装epel扩展源和ansible
yum install epel-release -y
yum install ansible -y
二。安装位置
在这里插入图片描述

三。在hosts文件里添加地址
在这里插入图片描述

四。ansible - k all -m ping
测试所有服务器是否与控制机网络连通报错,需要有ssh
在这里插入图片描述
输入root用户密码也可以连接

五。连接ansible所在服务器报错

在这里插入图片描述
找到配置文件,/etc/ansible/ansible.cfg

在这里插入图片描述

grep -v ”a“ 与grep相反。grep是查找a ,grep -v 是不查找带有a的

七。无法通过ssh连接到主机:权限被拒绝

在这里插入图片描述
配置shh免密登录,ssh-copy-id 和ssh-agent 和ssh-add
八。添加定时任务报报错在这里插入图片描述
定时任务的参数有问题,少一个双引号。

九。openssl加密:
openssl passwd -salt -1 “123”
在这里插入图片描述
tail -1 文件名称
查看文件最后一行数据

/etc/passwd 普通文本文件,用于存放用户及其属性信息(名称、 UID、主组ID等)
/etc/shadow普通文本文件,用于存放用户密码,及其密码有效期等信息
/etc/group普通文本文件,用于存放组信息,及其组的附加用户
/etc/gshadow普通文本文件,用于存放组密码,组管理员等信息
/etc/login.defs 是设置用户帐号限制的文件,该文件里的配置对root用户无效。
/etc/default/useradd是系统创建用户的一些账户的默认设置
https://blog.csdn.net/jinbusi_blog/article/details/70052372

groups 用户名
查看用户所属组
ansible webserver -a ‘id 用户名’
查看用户名所属组

十。将主控端的文件复制到远程主机,只针对文件
src 源文件路径
dest 目标文件路径
content 将指定内容覆盖写入到目标主机文件中
force=no 当主控端拷贝的文件名和目标名一致,但是内容不一致,放弃拷贝
force=yes 当主控端拷贝的文件名和目标名一致,但是内容不一致,则进行覆盖
backup=yes 当主控端拷贝的文件名和目标名一致,但是内容不一致,则进行备份
https://blog.csdn.net/hbhe0316/article/details/122701567

将content内容输出到testcopy.txt文件并覆盖原来的内容
在这里插入图片描述
如果文件名称一致,内容不一致,则文件备份后,拷贝(会将目标端的文件名称修改。名称+时间)
在这里插入图片描述
十一。file文件
600文件权限:r表示读权限为4。 w表示写权限为2。 x表示执行权限为1
600里面第一位数字是所有者权限位(r+w读和写),第二位是所属组权限位,第三位是其他人权限位
621 是所有者有读写权限,所属组有写权限,其他人有执行权限

硬链接:防止误删除,所有文件都有一个索引节点,硬链接连接节点,所有硬链接全部删除后,该文件才被释放。
软连接:本地使用语句格式:ln -s 源文件 目标文件
ansible格式:ansible webserver -m file -a ‘src=/home/文件名称 path=/home/软链接名称 state=link’

修改文件属主:ansible webserver -m file -a ‘owner=zhangsan path=/home/testcopy.txt’

十二。ping模块,网络是否通畅
ansible webserver -m ping

十三。service 模块
Apache是Web服务器,和它类似的还有常说的Nginx,而Tomcat是应用服务器,更明确地说Tomcat只是一个servlet容器,可以认为它是Apache的扩展,但是可以独立于Apache运行。Apache只能解析静态页面。tomcat可以解析动态页面+静态。Apache可以和tomcat结合使用
Ansible部署Tomcat

可以查看各种服务,编辑服务,配置服务状态。如systemctl status firewalld
和name=firewalld state=started
十四。shell模块
echo “qwert” | passwd --stdin rusky 把echo返回的字符qwert设置为用户rusky的密码。但是可以通过历史操作记录查看到,不安全。

支持|格式。可以写shell 语句

十五。script模块
执行shell文件

### 云计算环境下 Ansible 安装部署教程 #### 准备基础环境 为了确保Ansible能够在云计算环境中正常工作,需先准备好基本运行环境。具体操作包括启动六台虚拟机并禁用SELinux和FirewallD服务[^1]。 ```bash setenforce 0 sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config systemctl stop firewalld systemctl disable firewalld ``` 编辑`/etc/hosts`文件以便各节点之间能够通过主机名互相访问: ```plaintext 192.168.1.10 ansible-node-1.example.com ansible-node-1 ... ``` 配置YUM扩展源并在管理节点上安装Ansible工具。 ```bash yum install epel-release -y yum install ansible -y ``` #### 主机组态设定 创建或修改Inventory文件来定义目标机器及其分组情况。此文件通常位于`~/.ansible/hosts`或者指定路径下。对于更复杂的场景可以采用动态库存脚本来自动生成这些信息。 ```ini [group1] host1 ansible_host=192.168.1.10 host2 ansible_host=192.168.1.11 [group2] host3 ansible_host=192.168.1.12 ``` #### 执行命令模块 利用Command模块执行远程指令,比如移除某个特定的仓库配置[^2]。 ```yaml --- - name: Remove local Yum repository hosts: group1 tasks: - name: Ensure the specified repo is absent yum_repository: name: local state: absent ``` #### 应用实例——Zabbix监控系统的自动化部署 以两个CentOS 7.5版本的操作系统为例说明如何借助Ansible实现跨多台服务器的服务快速搭建过程。其中一台作为控制器负责下发任务给另一台被控端完成实际的任务处理[^3]。 ```yaml --- - name: Install Zabbix Server on Node Machine hosts: node become: yes vars_files: - zabbix_vars.yml roles: - role: zabbix_server_installation ``` #### OpenStack平台下的Kolla-Ansible集成方案 针对OpenStack这样的大型分布式计算框架而言,则可以通过专门设计好的Playbook集合如Kolla-Ansible来进行高效的一键式安装流程简化复杂度高的组件间协作关系调整等问题解决方式[^4]。 ```bash cd /etc/kolla/ kolla-ansible -i all-in-one bootstrap-servers ``` 在上述过程中涉及到的一些全局参数可以在`group_vars/all`内统一维护从而方便后续管理和调试需求满足个性化定制的要求[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值