Ansible Role 键值存储 之【consul】
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ansible Role 键值存储 之【consul】相关的知识,希望对你有一定的参考价值。
参考技术A 安装consulconsul是HashiCorp公司推出的一款开源工具,用于实现分布式系统的服务发现与配置。与其他类似产品相比,提供更“一站式”的解决方案。consul内置有KV存储,服务注册/发现,健康检查,HTTP+DNS API,Web UI等多种功能。
官方地址: https://www.consul.io/
github: https://github.com/hashicorp/consul
官方文档地址: https://www.consul.io/docs
此角色仅在RHEL及其衍生产品上运行。
ansible 2.2.1.0
os Centos 6.7 X64
supervisor
https://github.com/kuailemy123/Ansible-roles/tree/master/consul
ansible-play中role的基本用法
#role应用
#roles跟调用角色的剧本文件应该与roles同级关系,即放在ansible目录下
#makir /root/ansible/roles/{nginx,http,ftp,mysql,redis}
palybook.yml
roles/
project/
tasks/ 定义task,role的基本元素,至少包含一个main.yml文件
files/ 存放由copy或script模块等调用的文件
vars/ 定义变量文件
templates/ template模块查找所需要末班文件的目录
handlers/
default/ 设定默认变量
#以nginx为例
思路:
1.group:创建用户组nginx
2.user:创建用户nginx
3.yum:安装nginx
4.template:配置文件更新nginx.conf
5.service:启动nginx
####################################################################
cd /root/ansible/roles/nginx
mkdir tasks templates
cd task
touch group.yml
- name: create group nginx
group: name=nginx gid=80
touch user.yml
-name: create user nginx
user: name=nginx uid=80 group=nginx system=yes shell=/sbi/nologin
touch install.yml
- name: install package
yum: name=nginx
touch start.yml
- name: start service
service: name=nginx state=started enabled=yes
touch restart.yml
- name: restart service
service: name=nginx state=restarted
touch templ.yml
- name: copy conf
template: src=nginx.conf.j2 dest=/etc/nginx/conf/nginx.conf
touch main.yml
- include: group.yml
- include: user.yml
- include: install.yml
- include: templ.yml
- include: start.yml
cd ../templates && ll
nginx.conf.j2
cd /root/ansible
touch nginx_role.yml
- hosts: websrvs
remote_user: root
roles:
- role: nginx
执行命令:ansible-playbook nginx_role.yml
以上是关于Ansible Role 键值存储 之【consul】的主要内容,如果未能解决你的问题,请参考以下文章
Ansible Role 大数据 之【cdh5-agent】
Ansible-Role编写之incloud/blockinfile/mode/systemd/