wangsha.docker-graphite
docker-graphite
一个用于管理和运行 Graphite Docker 容器的 Ansible 角色。
要求
该角色仅在 Ubuntu 14.04 上进行了测试。由于该角色使用了 Ansible 的 docker 模块,您需要确保安装了较新版本的 docker-py
和 docker
。
示例
从 Ansible Galaxy 安装该模块到 ./roles
目录:
ansible-galaxy install wangsha.docker-graphite -p ./roles
在 playbook 中使用如下,假设您已经设置好了 Docker:
- hosts: 'servers'
roles:
- role: 'wangsha.docker-graphite'
become: true
graphite_storage_schemas_extra:
statsd: |
priority = 110
pattern = ^stats.*
retentions = 10s:6h,1m:7d,10m:1y
查看 defaults/main.yml 以获取可以重写的角色变量。
如果您需要一个用于设置 Docker 的 playbook,请查看 angstwad.docker_ubuntu Galaxy 角色。
默认使用的 Docker 镜像是 hopsoft/graphite-statsd。
该镜像包含 Graphite 和 StatsD。要禁用 StatsD,请移除相应的端口映射。
基本身份验证账户是 root/root
。修改 docker_graphite_htpasswd_users
以更改默认账户。
自定义卷映射
Docker 允许将主机目录或文件挂载为 数据卷。
该角色会将主机目录挂载以持久化容器数据,并将主机文件挂载以配置容器行为。
docker_graphite_directory_volumes
和 docker_graphite_file_volumes
是控制卷映射的两个变量。
如果您希望自定义映射,请遵循 <host directory>:<container directory>:<mapping mode>
格式,以确保在启动容器之前正确创建主机目录。
要自定义主机文件映射,请更新 docker_graphite_file_volumes
。
该角色将自动创建文件的父目录并将模板复制到主机。
模板的命名约定是 <host_file_name>.<host_file_extension>.j2
。
要从您自己的 Ansible 目录复制模板,请设置 docker_graphite_template_path
。
示例配置:
docker_graphite_file_volumes:
- '/opt/myapp/conf/settings.conf:/etc/myapp/conf/settings.conf:ro'
docker_graphite_template_path: /path/to/ansible/project/templates/
# 确保文件 /path/to/ansible/project/templates/settings.conf.j2 存在。
许可证
作者信息
- wangsha