caseraw.ansible_role_chrony
Ansible角色 chrony
使用 Ansible 管理网络时间,配合 chrony。
许可证
MIT / BSD
作者信息
- 制作和维护者: Kasra Amirsarvari
- Ansible Galaxy社区作者: https://galaxy.ansible.com/caseraw
- Docker Hub社区用户: https://hub.docker.com/u/caseraw
要求
- 确保有可用的包管理器,并且配置了正确的包源和库。
- 确保执行该角色的用户具有特权权限,以便:
- 安装和卸载。
- 编辑包本身提供的文件。
- 管理
ntpd
和chronyd
的systemd
服务。
- 确保允许123/udp(端口/协议)上的网络流量。
- 发送到任何提供NTP的服务器。
- 从任何获取NTP的客户端接收。
依赖关系
无
兼容性
与以下操作系统兼容:
- CentOS 7
- CentOS 8
- RHEL 7.x
- RHEL 8.x
角色变量
变量名称 | 描述 |
---|---|
role_chrony_chrony_dot_conf_parameters | 包含chrony配置的字典。 |
role_chrony_required_packages | 为了让chrony正常工作需要安装的包列表。 |
role_chrony_time_zone | 要设置的时区。 |
示例剧本
---
- name: 管理chrony的安装和配置以进行NTP
become: True
gather_facts: False
roles:
- role: ansible_role_chrony
...
有用的shell命令
chronyc tracking
chronyc sources
chronyc sourcestats
额外文档资源
以下链接提供有关 chrony 及其用法的更多信息。
- https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/ch-configuring_ntp_using_the_chrony_suite
- https://chrony.tuxfamily.org/faq.html
使用Molecule进行测试
该角色使用 Molecule 进行本地测试,配置文件位于: molecule/default。
Molecule测试在为此目的构建的 Docker Hub镜像 上运行(使用 docker驱动):
某些特定配置可能需要完整的操作系统,而不是最小容器镜像。在这些使用情况下,可以使用 molecule vagrant驱动 以及 libvirt提供者。Molecule驱动和平台配置部分可以如下所示:
driver:
name: vagrant
provider:
name: libvirt
platforms:
- name: ansible_role_chrony-ansible-molecule-centos-7
box: centos/7
imemory: 1024
cpus: 1
使用Travis CI进行CI/CD
该角色使用 Travis CI 运行在线测试,使用 Molecule,并在测试成功后将通知推送到 Ansible Galaxy 以导入角色。Travis CI配置位于Ansible角色根目录的 .travis.yml
有用的链接
- GitHub 仓库: https://github.com/Caseraw/ansible_role_chrony
- Travis CI构建状态: https://travis-ci.org/Caseraw/ansible_role_chrony
- Ansible Galaxy角色: https://galaxy.ansible.com/caseraw/ansible_role_chrony