模块:DOCKER

Docker Daemon 服务,允许用户一键拉起容器化的无状态软件工具模板,加装各种功能。

在节点部署 Docker: 配置 | 管理 | 剧本 | 参数


概念

Docker 是流行的容器平台,提供了标准化的软件交付能力。

尽管我们不赞成将 Docker 用于有状态的重要数据库上,但它对于无状态的应用软件而言是一个相当优雅的解决方案


配置

Docker 模块不同于其他模块,不需要事先配置,您只需要针对 Pigsty 配置文件中任意被纳管的现有节点执行 docker.yml 剧本,即可完成 Docker 的安装。

您可以在全局/集群/节点层面声明 [docker_enabled],则主机节点在被纳入监控时,Docker Daemon 的监控指标也一并会被抓取。

# ./infra.yml  -l infra
# ./docker.yml -l infra (optional)
# ./node.yml   -l infra -t register_prometheus
infra:
  hosts:
    10.10.10.10: { infra_seq: 1 ,nodename: infra-1 }
    10.10.10.11: { infra_seq: 2 ,nodename: infra-2 }
  vars:
    docker_enabled: true
    node_id_from_pg: false
    node_cluster: infra
    node_conf: oltp

管理

使用镜像站点

如果您在中国大陆受到功夫网影响,可以考虑使用墙内可用的 Docker 镜像站点,例如 quay.io:

docker login quay.io    # 输入用户名密码,完成登陆

纳入监控

如果您希望将 Docker 纳入现有监控体系中,首先应当在节点上声明参数 docker_enabledtrue

然后针对节点单独执行监控目标注册任务 register_prometheus 即可:

./node.yml -l <your-node-selector> -t register_prometheus  # 将 Docker Daemon 纳入 Prometheus 监控目标中

使用软件模板

Pigsty 提供了一系列使用 Docker Compose 拉起的软件工具模板,可以开箱即用。


剧本

Pigsty 提供了一个用于安装 Docker 模块的剧本

docker.yml

在节点上安装 Docker 的任务 docker.yml 包含了以下子任务:

docker_install   : 在节点上安装 Docker,Docker Compose 软件包
docker_admin     : 将指定的用户加入 Docker 管理员用户组中
docker_config    : 生成 Docker 守护进程服务配置文件
docker_launch    : 启动 Docker 守护进程服务
docker_image     : 尝试从 /tmp/docker/*.tgz 加载镜像(如果存在)

参数

DOCKER 模块有 4 个参数:

参数 参数组 类型 层次 中文说明
docker_enabled DOCKER bool C 在当前节点上启用 Docker?默认不启用
docker_cgroups_driver DOCKER enum C Docker CGroup 文件系统驱动:cgroupfs,systemd
docker_registry_mirrors DOCKER string[] C Docker 仓库镜像列表
docker_image_cache DOCKER path C Docker 镜像缓存目录:默认为/tmp/docker

指标列表

Pigsty Docker 模块提供的完整监控指标列表与释义

常见问题

Pigsty Docker 模块常见问题答疑


Last modified 2024-03-12: update /zh/blog/cloud/ecs (0b1f27d)