Ansible(ubuntu)
1.安装Ansible
sudo apt update
sudo apt install ansible
2.配置ansible主机
1.将本机的密钥添加到目标服务器上
2.追加公钥 echo '$(cat ~/.ssh/id_rsa.pub)' >> ~/.ssh/authorized_keys
远程追加ssh username@remote_host "echo '$(cat ~/.ssh/id_rsa.pub)' >> ~/.ssh/authorized_keys"
ssh ubuntu@119.45.191.212 "echo '$(cat /root/.ssh/id_rsa.pub)' >> /home/ubuntu/.ssh/authorized_keys"
3.编写Ansible 主机清单文件(通常是 /etc/ansible/hosts)列出它将管理的服务器。你可以配置这个文件,以包含主机组和对应的服务器。
示例 /etc/ansible/hosts 文件:
[goingbus]
goingbus.com ansible_host=43.153.66.136 ansible_user=ubuntu ansible_ssh_private_key_file=/root/.ssh/id_rsa
i.universalbus.cn ansible_host=119.45.191.212 ansible_user=ubuntu ansible_ssh_private_key_file=/root/.ssh/id_rsa
2.1常见的配置参数
ansible_host - 指定远程主机的IP地址。
server1 ansible_host=192.168.1.100
ansible_port - SSH端口,如果你不使用默认的端口22。
server1 ansible_port=2222
ansible_user - 用于SSH连接的用户名。
server1 ansible_user=myuser
ansible_ssh_pass - SSH密码(通常不推荐在清单文件中直接存储密码,而应使用Ansible Vault)。
server1 ansible_ssh_pass=mypassword
ansible_ssh_private_key_file - 用于SSH连接的私钥文件路径。
server1 ansible_ssh_private_key_file=/path/to/private/key
ansible_python_interpreter - 指定远程主机上Python解释器的路径。这在目标系统上未将Python配置为默认路径时非常有用。
server1 ansible_python_interpreter=/usr/bin/python3
ansible_connection - 连接类型,如 ssh(默认)、local、docker 等。
server1 ansible_connection=ssh
ansible_become - 是否提升权限(类似于sudo),默认为否。
server1 ansible_become=yes
ansible_become_method - 提升权限时使用的方法,默认是 sudo,还可以是 su 等。
server1 ansible_become_method=sudo
ansible_become_user - 提升权限后操作的用户,默认为 root。
server1 ansible_become_user=root
ansible_become_pass - 用于权限提升的密码。
server1 ansible_become_pass=rootpassword
3.Ansible 配置文件
Ansible 的行为可以通过编辑 /etc/ansible/ansible.cfg 配置文件来自定义。这个文件控制了诸如哪个清单文件被使用,使用哪个模块库,SSH 连接的参数等选项。
[defaults]
inventory = /etc/ansible/hosts
remote_user = your_user
private_key_file = /path/to/your/private.key
host_key_checking = False
retry_files_enabled = False
inventory: 指定清单文件的位置。
remote_user: 默认远程用户。
private_key_file: SSH连接使用的私钥文件。
host_key_checking: 如果设置为 False,则在首次连接SSH时不检查主机密钥。
4.检查测试连接
验证安装并测试连接,可以使用 ansible 命令行工具对所有主机进行 ping 测试:
ansible all -m ping
5.运行
ansible-playbook script/ansible/production.yaml
如果没有在Ansible 配置文件中配置指定清单文件的位置,则可以在命令中指定
ansible-playbook -i /home/root_zqh/.ansible/hosts script/ansible/production.yaml
6.go 1.19安装
wget https://mirrors.ustc.edu.cn/golang/go1.19.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.19.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc
go version
7.swag安装
go install github.com/swaggo/swag/cmd/swag@latest
swag -v
本文作者:春游去动物园
本文链接:https://www.cnblogs.com/chunyouqudongwuyuan/p/18247191
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2022-06-14 APIView的基本使用,APIView执行流程分析,Request对象源码分析,序列化类Serializer常用字段和字段参数