搭建一个ansible管理一下机器简单方便

本文介绍如何在Ubuntu 18系统上安装并配置Ansible进行自动化部署及管理。主要内容包括安装Ansible、创建SSH密钥对、配置Ansible hosts文件以及执行简单的管理任务。

系统:ubuntu 18

安装软件

apt install software-properties-common

apt-add-repository --yes --update ppa:ansible/ansible

apt install ansible

查看版本

ansible --version

创建公钥和私钥

ssh-keygen

将私钥重命名一下

mv id_rsa chia.pem

mv chia.pem ~/

将公钥复制到各个客户端文件/root/.ssh/authorized_keys

注:管理的机器用户名和密码是一样的

测试登录至13的主机里

ssh -i ~/chia.pem  root@192.168.195.13

#!/bin/bash
ssh -i chia.pem root@192.168.194.1${1}:

执行脚本goto.sh 参数写入主机/root/.ssh/known_hosts

配置文件不需要修改/etc/ansible/hosts

[store]
192.168.195.11 ansible_ssh_private_key_file=/root/chia.pem
192.168.195.12 ansible_ssh_private_key_file=/root/chia.pem
192.168.195.13 ansible_ssh_private_key_file=/root/chia.pem
192.168.195.14 ansible_ssh_private_key_file=/root/chia.pem

[liz]
192.168.194.151 ansible_ssh_private_key_file=/root/chia.pem
192.168.194.152 ansible_ssh_private_key_file=/root/chia.pem
192.168.194.154 ansible_ssh_private_key_file=/root/chia.pem
192.168.194.160 ansible_ssh_private_key_file=/root/chia.pem
192.168.194.168 ansible_ssh_private_key_file=/root/chia.pem
192.168.194.172 ansible_ssh_private_key_file=/root/chia.pem
192.168.194.173 ansible_ssh_private_key_file=/root/chia.pem
192.168.194.174 ansible_ssh_private_key_file=/root/chia.pem
192.168.194.175 ansible_ssh_private_key_file=/root/chia.pem
192.168.194.182 ansible_ssh_private_key_file=/root/chia.pem

添加host文件

测试一下 

ansible store -m shell -a "hostname"

192.168.195.12 | CHANGED | rc=0 >>
cslj-012
192.168.195.11 | CHANGED | rc=0 >>
cslj-195-11
192.168.195.13 | CHANGED | rc=0 >>
cslj-195-13
192.168.195.14 | CHANGED | rc=0 >>
cslj-195-14

简单方便的管理自己的机器很方便

### 如何搭建 Ansible 环境 #### 一、Ansible 的基本组件 Ansible 是一种基于 Python 开发的自动化运维工具,其主要组成部分包括核心引擎、剧本(Playbook)、主机清单(Host Inventory)、核心模块以及插件等[^4]。这些组件共同构成了 Ansible 的基础架构。 #### 二、安装 AnsibleLinux 平台上安装 Ansible 可以通过包管理器完成。以下是常见的几种操作系统及其对应的安装方法: 对于 CentOS 或 RHEL: ```bash sudo yum install epel-release -y sudo yum install ansible -y ``` 对于 Ubuntu 或 Debian: ```bash sudo apt update sudo apt install software-properties-common sudo add-apt-repository ppa:ansible/ansible sudo apt update sudo apt install ansible ``` 验证安装是否成功可以通过以下命令: ```bash ansible --version ``` 如果显示版本号,则表示安装成功[^4]。 #### 三、配置主机清单 Ansible 默认会读取 `/etc/ansible/hosts` 文件作为主机清单。为了方便测试,可以在当前目录下创建一个名为 `hosts` 的文件,并指定目标主机的信息。例如: ```ini [node_group] node1 ansible_host=192.168.1.101 node2 ansible_host=192.168.1.102 ``` 其中 `[node_group]` 表示一组主机名称,`ansible_host` 则指定了每台主机的具体 IP 地址[^2]。 #### 四、设置 SSH 密钥认证 为了让 Ansible 能够无密码访问远程服务器,建议配置免密登录。具体步骤如下: 1. 在本地生成一对 RSA 密钥对: ```bash ssh-keygen -t rsa ``` 2. 将公钥复制到目标机器上: ```bash ssh-copy-id user@remote_host ``` 完成后可通过以下命令测试连通性: ```bash ssh user@remote_host ``` 如果无需输入密码即可进入对方系统,则表明配置正确[^2]。 #### 五、编写 Playbook Playbooks 是 YAML 格式的脚本文件,用于描述一系列需要执行的任务。下面是一个简单的例子: ```yaml --- - name: Update and upgrade packages on remote servers hosts: node_group tasks: - name: Ensure system is up-to-date apt: update_cache: yes upgrade: dist when: ansible_os_family == "Debian" ``` 此 playbook 定义了一组针对 Debian 类型系统的更新操作[^4]。 #### 六、运行 Ad-Hoc 命令 除了使用 playbooks 外,还可以直接调用 ad-hoc 命令来快速完成某些特定任务。比如查看所有在线主机的状态: ```bash ansible all -m ping ``` 或者切换至超级用户权限后执行某条 Shell 指令: ```bash ansible all -b -m shell -a 'whoami' ``` 以上即完成了整个 Ansible 环境的基础构建过程[^2]。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值