freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

自动运维|ansible批量部署
2020-06-24 11:27:02

在某个下午,小编一个研究postgresDB的同事特洛伊·谢戳了戳小编的胳膊:

特洛伊·谢:那啥,我这想一次性搭5个新的pg测试环境,你能不能…

又轮到运维界的叶问-ansible出场了。

Ansible是一个自动化运维工具,其主要功能是帮忙运维实现IT工作的可自动化、降低人为操作失误、提高业务自动化率、提升运维工作效率,常用于软件部署自动化、配置自动化、管理自动化、系统化系统任务、持续集成、零宕机平滑升级等,有着丰富的内置模块以及更为丰富的用户分享的功能模块。

今天我们就用它来实现批量在rhel6上部署postgresDB11。以下为部署步骤以ansible实现的方法。


部署步骤

1、关闭NetworkManager

image.png

 这里调用了ansible的service模块。

2、关闭防火墙

image.png

需要注意的是,由于系统版本差异部分系统服务名称有所改变,例如防火墙在rhel6与7上是不同的,建议可以根据系统版本来判断服务名。

3、关闭selinux

image.png

这里调用了lineinfile模块,并且使用了’>’来缩进,增加可读性。

4、修改limits.conf文件

image.png

5、 /etc/hosts修改及主机名修改

image.png

这里的ip及主机名可以通过调用ansible自己的主机信息收集模块直接获取到。

6、将postgresdb11的rpm包传输至目标端指定位置

image.png

假如远端指定的路径不存在会自动创建

7、安装pg安装需要的rpm包

image.png

 这里安装完包之后会自动创建一个postgres用户,家目录为/var/lib/pgsql

8、修改/data目录权限

image.png

9、初始化postgres数据库,启动并设置开机自启动

image.png

将所有的步骤写在一个yaml剧本文件里面,执行该剧本:

image.png

出于篇幅有限,我们这里只执行一个远程服务器。这样新的一台pg数据库就装好啦。当然你可以在hosts主机清单文件里面配10台目标服务器,ansible默认会以5的并行度去执行批量部署。

我们这次只是简单的在rhel6上安装pg11,考虑到平台版本、pg版本不同,可以使用ansible的roles去根据版本迭代,这样的话playbook的可读性更好,也更易维护。当然根据自己的需求,可以添加其他的判断及tasks。

参考文献

https://docs.ansible.com/ansible/latest/


美创运维中心数据库服务团队拥有Oracle ACE 1人、OCM 10余人、数十名Oracle OCP、MySQL OCP、红帽RHCA、中间件weblogic、tuxedo认证、达梦工程师 ,著有《Oracle DBA实战攻略》,《Oracle数据库性能优化方法和最佳实践》,《Oracle内核技术揭秘》等多本数据运维优化书籍。目前运维各类数据库合计2000余套,精通Oracle、MySQL、SQLServer、DB2、PostgreSQL、达梦等主流商业和开源数据库。并成为首批国内达梦战略合作伙伴之一,拥有海量经验和完善的人员培养体系。并同时提供超融合,私有云整体解决方案。



# 运维安全 # 数据库运维 # 运维 # 自动化运维
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者