容器化部署

Ceph-ansible 仅支持使用 docker 和 podman 来部署容器化的 Ceph。

配置和使用

要将 ceph 部署到容器中,您需要将 containerized_deployment 变量设置为 true,并使用 site-container.yml.sample 剧本。

containerized_deployment: true

在容器化部署中,不再需要 ceph_originceph_repository 变量,它们将被忽略。

$ ansible-playbook site-container.yml.sample

注意

基础设施剧本适用于非容器化和容器化部署。

自定义容器镜像

您可以通过使用 ceph_docker_registryceph_docker_imageceph_docker_image_tag 变量来配置您自己的容器注册表、镜像和标签。

ceph_docker_registry: quay.io
ceph_docker_image: ceph/daemon
ceph_docker_image_tag: latest

注意

ceph_docker_image 应该包含镜像命名空间和镜像名称,并用斜杠字符连接和分隔。

ceph_docker_image_tag 应该设置为固定的标签,而不是任何“latest”标签,除非您知道自己在做什么。使用“latest”标签可能会导致剧本重新启动集群中部署的所有守护程序,因为这些标签旨在定期更新。

容器注册表身份验证

当使用需要身份验证的容器注册表时,您需要将 ceph_docker_registry_auth 变量设置为 true,并通过 ceph_docker_registry_usernameceph_docker_registry_password 变量提供凭据。

ceph_docker_registry_auth: true
ceph_docker_registry_username: foo
ceph_docker_registry_password: bar

代理后面的容器注册表

当使用可通过 http(s) 代理访问的容器注册表时,您需要设置 ceph_docker_http_proxy 和/或 ceph_docker_https_proxy 变量。如果需要为代理配置排除某些主机,可以使用 ceph_docker_no_proxy 变量。

ceph_docker_http_proxy: http://192.168.42.100:8080
ceph_docker_https_proxy: https://192.168.42.100:8080