在安装Centos系统之初,我们为了方便一般选择最小化安装,但是最小化安装并不能满足我们所有需求,所以,我们可以在系统初始化时可以对所有服务器进行批量安装日常必要的软件。
说明:ansible控制节点和被控制节点的系统版本如下,为什麽要说明系统版本时因为linux系统版本不同通过命令获取的结果有可能不正确,可以根据自己实际系统版本进行调整。
[root@myhost yml]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@myhost yml]# cat step01_install_necessary.yml
---
- hosts: new #这个是hosts定义个主机组名字,如果是单台主机可以直接写地址,多个ip地址用都好隔开
gather_facts: no
ignore_errors: yes
tasks:
- name: install dos2unix
yum: name=dos2unix state=installed
- name: install telnet
yum: name=telnet state=installed
- name: install wget
yum: name=wget state=installed
- name: install unzip
yum: name=unzip state=installed
- name: install lrzsz
yum: name=lrzsz state=installed
- name: install ntpdate
yum: name=ntpdate state=installed
- name: install net-tools
yum: name=net-tools state=installed
- name: install lsof
yum: name=lsof state=installed
- name: install gcc
yum: name=gcc state=installed
- name: install openssl-devel
yum: name=openssl-devel state=installed
- name: install expect
yum: name=expect state=installed
- name: install libselinux-python
yum: name=libselinux-python state=installed
- name: install mailx
yum: name=mailx state=installed
- name: install vixie-cron
yum: name=vixie-cron state=installed
- name: groupinstall Development Tools
shell: yum groupinstall 'Development Tools' -y
扩展:有些时候需要安装软件的最新版本
---
- hosts: new #这个是hosts定义个主机组名字,如果是单台主机可以直接写地址,多个ip地址用都好隔开
gather_facts: no
ignore_errors: yes
tasks:
- name: install sqlite
yum: name=sqlite state=latest
- name: install rsyslog
yum: name=rsyslog state=latest
- name: install freetype
yum: name=freetype state=latest