# ansible_api **Repository Path**: cyt_0906/ansible_api ## Basic Information - **Project Name**: ansible_api - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-02-16 - **Last Updated**: 2022-02-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 目录结构 ```shell # tree ansible_api/ ansible_api/ ├── ansible │   ├── ansible.cfg #ansible 配置文件 │   ├── hosts #Inventory 文件 │   └── zabbixAgent #zabbix agent的管理脚本 │   ├── files #所需的文件 │   │   ├── zabbix-agent-5.0.20-1.el7.x86_64.rpm #zabbix agent 安装包 │   │   └── zabbix_agentd.conf #zabbix agent 配置文件 │   ├── install.yml # 安装 zabbix agent │   ├── start.yml # 启动 zabbix agent │   ├── stop.yml # 停止 zabbix agent │   └── uninstall.yml # 卸载 zabbix agent ├── Dockerfile └── flask # flask 提供api接口 ├── ansible_playbook.py ├── app.py └── __pycache__ └── ansible_playbook.cpython-38.pyc ``` 构建镜像 ```shell cd ansible_api docker build -t ansible:v1 . ``` docker 启动命令 ```shell docker run -itd --name ansible -p 5000:5000 -v /ansible_api/ansible:/etc/ansible xiamucc/ansible:v1 /bin/bash ``` 把 ansible 目录挂载到容器中的 /etc/ansible 可以实现对ansible配置的修改和yml文件的增删等操作 请求方法 get ``` http://ip:5000/zabbixAgent/install/host/passwd ``` > zabbixAgent : 目录地址 > > install :playbook 文件名 > > host :主机地址 > > passwd :root 用户密码 host 和passwd用来生成 hosts 文件,用来确定执行变更的目标主机,zabbixAgent 和 install 唯一确定要执行的变更,以及yml的文件地址。 这里会对目标主机进行zabbix agent 的安装操作,本质上执行的是 /ansible_api/ansible/zabbixAgent/install.yml 这个 Playbook。 镜像地址: ```shell docker pull xiamucc/ansible:v1 ``` 所依赖的基础镜像 ```shell docker pull quay.io/ansible/ansible-runner:stable-2.9-latest ```