Containerized deployment¶
Ceph-ansible supports docker and podman only in order to deploy Ceph in a containerized context.
Configuration and Usage¶
To deploy ceph in containers, you will need to set the containerized_deployment variable to true and use the site-container.yml.sample playbook.
containerized_deployment: true
The ceph_origin, ceph_repository and ceph_stable_release variables aren’t needed anymore in containerized deployment and are ignored.
$ ansible-playbook site-container.yml.sample
Note
The infrastructure playbooks are working for both non containerized and containerized deployment.
Custom container image¶
You can configure your own container register, image and tag by using the ceph_docker_registry, ceph_docker_image and ceph_docker_image_tag variables.
ceph_docker_registry: quay.ceph.io
ceph_docker_image: ceph-ci/daemon
ceph_docker_image_tag: latest
Note
ceph_docker_image should have both image namespace and image name concatenated and separated by a slash character.
ceph_docker_image_tag should be set to a fixed tag, not to any “latest” tags unless you know what you are doing. Using a “latest” tag
might make the playbook restart all the daemons deployed in your cluster since these tags are intended to be updated periodically.
Container registry authentication¶
When using a container registry with authentication then you need to set the ceph_docker_registry_auth variable to true and provide the credentials via the
ceph_docker_registry_username and ceph_docker_registry_password variables
ceph_docker_registry_auth: true
ceph_docker_registry_username: foo
ceph_docker_registry_password: bar
Container registry behind a proxy¶
When using a container registry reachable via a http(s) proxy then you need to set the ceph_docker_http_proxy and/or ceph_docker_https_proxy variables. If you need
to exclude some host for the proxy configuration to can use the ceph_docker_no_proxy variable.
ceph_docker_http_proxy: http://192.168.42.100:8080
ceph_docker_https_proxy: https://192.168.42.100:8080