美文网首页
使用ansible维护linux集群 10

使用ansible维护linux集群 10

作者: 张力的程序园 | 来源:发表于2020-05-21 13:17 被阅读0次

Ansible常用来对集群进行维护和管理,它只需要在管理端安装,被管理端主要提供sshd服务即可。本节讲述ansible的安装和使用。

1、操作环境

  • vmware 14.1
  • centos7 64
  • putty或者xshell

2、前提约束

  • 已安装vmware
  • vmware中已安装centos1和centos2两台服务器
  • centos1和centos2均能访问外网,且相互ping通,假设centos1 ip为192.168.100.101,centos2 ip为192.168.100.102,centos1为我们的管理端,centos2为我们的被管理端。

3、操作步骤

3.1 安装配置ansible

  • 使用putty或者xshell登录到192.168.100.101的root用户
  • 在管理端安装Ansible
# 新增epel-release第三方套件来源。
yum install -y epel-release
# 安装 Ansible
yum install -y ansible
  • 配置免密登陆
# 配置免密登陆,执行以下语句
ssh-keygen  #一路回车
ssh-copy-id 192.168.100.101  # 回车之后,需要输入192.168.100.101的密码
ssh-copy-id 192.168.100.102  # 回车之后,需要输入192.168.100.102的密码
  • 安装python,centos7自带python2.7.5,这一步可以省略
# 在管理端服务器安装python
yum install -y openssh-server python
# 连接到被管理端服务器
ssh 192.168.100.102
# 在被管理端服务器安装python
yum install -y openssh-server python
# 退出102,继续回到101
exit
  • 编辑管理端的/etc/ansible/ansible.cfg
[defaults]
inventory = /etc/ansible/hosts
forks = 5
become = root
remote_port  = 22
host_key_checking = False
timeout = 10
log_path = /var/log/ansible.log
private_key_file = /root/.ssh/id_rsa
  • 编辑管理端的/etc/ansible/hosts
[servers]
192.168.100.101
192.168.100.102

3.2 通过ad-hoc管理服务器

  • 测试各个服务器的连通性
ansible servers -m ping
  • 向被管理端推送文件并执行
# 在管理端创建可执行文件
echo "hello world">test.sh
# 推送test.sh到被管理端
ansible servers -m copy -a "src=/root/test.sh dest=/root/ owner=root group=root mode=0755"
# 执行被管理端的test.sh
ansible servers -m shell -a "/root/test.sh"
  • 安装httpd到被管理端并启动
# 安装httpd
ansible servers -m yum -a "name=httpd state=latest disable_gpg_check=yes enablerepo=epel"
# 启动httpd
ansible servers -m service -a "name=httpd state=restarted" 
# 查看服务状态
ansible servers -a " systemctl status httpd"  

3.3 自动部署Nginx

  • 在管理端创建/root/nginx.xml文件,内容如下:
#nginx.yml
---
- hosts: servers
  tasks:
  - name: Add repo
    yum_repository:
      name: nginx
      description: nginx repo
      baseurl: http://nginx.org/packages/centos/7/$basearch/
      gpgcheck: no
      enabled: 1
  - name: Install nginx
    yum:
      name: nginx
      state: latest
  - name: Start nginx
    service:
      name: nginx
      state: started
  • 执行以下语句,完成安装
ansible-playbook nginx.yml

以上就是使用ansible维护linux集群的过程。

相关文章

网友评论

      本文标题:使用ansible维护linux集群 10

      本文链接:https://www.haomeiwen.com/subject/hqfzohtx.html