Ansible部署FTP服务
基础环境配置就不过多赘述了
- 配置主机名、主机解析、免密访问、ansible下载、配置ansible主机、防火墙、selinux、配置centos2009镜像为仓库源、配置ftp远程仓库:可参考博文
节点信息如下:
主机名 | IP |
---|---|
ansible | 192.168.200.75 |
node | 192.168.200.76 |
开始编写ansible文件
powershell
[root@ansible ~]# mkdir ansible_ftp
[root@ansible ~]# cd ansible_ftp/
[root@ansible ansible_ftp]# cat install_ftp.yaml
---
- hosts: node1
remote_user: root
tasks:
- name: Selinux Config Setenforce
shell: getenforce
register: info
- name: when_Selinux
shell: setenforce 0
when: info['stdout'] == 'Enforcing'
- name: move repos
shell: mv /etc/yum.repos.d/* /media
- name: create ftp.repo
copy: src=local.repo dest=/etc/yum.repos.d/
- name: install ftp-server package
yum: name=vsftpd state=present
- name: start vsftpd
service: name=vsftpd state=started
[root@ansible ansible_ftp]# cat local.repo
[centos]
name=centos
baseurl=ftp://ansible/centos/
gpgcheck=0
enabled=1
检查剧本并执行
powershell
[root@ansible ansible_ftp]# ansible-playbook --syntax-check install_ftp.yaml
playbook: install_ftp.yaml
[root@ansible ansible_ftp]# ansible-playbook install_ftp.yaml
PLAY [node1] ***********************************************************************************************************
TASK [Gathering Facts] *************************************************************************************************
ok: [192.168.200.76]
TASK [Selinux Config Setenforce] ***************************************************************************************
changed: [192.168.200.76]
TASK [when_Selinux] ****************************************************************************************************
skipping: [192.168.200.76]
TASK [move repos] ******************************************************************************************************
changed: [192.168.200.76]
TASK [create ftp.repo] *************************************************************************************************
changed: [192.168.200.76]
TASK [install ftp-server package] **************************************************************************************
changed: [192.168.200.76]
TASK [start vsftpd] ****************************************************************************************************
changed: [192.168.200.76]
PLAY RECAP *************************************************************************************************************
192.168.200.76 : ok=6 changed=5 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0
[root@ansible ansible_ftp]#
验证
powershell
[root@node1 ~]# systemctl status vsftpd
● vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled)
Active: active (running) since Wed 2023-05-03 03:07:26 EDT; 31s ago
Process: 2718 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS)
Main PID: 2719 (vsftpd)
CGroup: /system.slice/vsftpd.service
└─2719 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
May 03 03:07:25 node1 systemd[1]: Starting Vsftpd ftp daemon...
May 03 03:07:26 node1 systemd[1]: Started Vsftpd ftp daemon.
[root@node1 ~]#