Installing Podman on All Nodes
To ensure unified management and deployment of applications and improve deployment consistency and reliability, you need to install Podman on all nodes (ceph1 to ceph3 and client1 to client3 in this document).
- Podman is used to deploy Ceph in a container. Ceph has requirements on the Podman versions. For details, see Table 1.
- Ceph 17.2.7 requires Podman 2.0 or later. The Podman version in the openEuler-20.03-LTS-SP4 community source is 0.10.1. You need to manually update Podman to a later version. This section uses Podman 3.4.4 as an example.
- If you want to manually create a container image with the minimum dependency, prepare an additional compilation node and install Podman on it.
Ceph |
Podman |
|||||
|---|---|---|---|---|---|---|
1.9 |
2.0 |
2.1 |
2.2 |
3.0 |
> 3.0 |
|
≤ 15.2.5 |
True |
False |
False |
False |
False |
False |
≥ 15.2.6 |
True |
True |
True |
False |
False |
False |
≥ 16.2.1 |
False |
True |
True |
False |
True |
True |
≥ 17.2.0 |
False |
True |
True |
False |
True |
True |
Note: True indicates compatible, and False indicates incompatible. |
||||||
- Download dependency tools.
1yum install rpmdevtools python3-pyyaml git
- Build the RPM package of Podman 3.4.4.
1 2 3 4 5 6
cd /home wget https://repo.openeuler.org/openEuler-22.03-LTS-SP2/source/Packages/podman-3.4.4-1.oe2203sp2.src.rpm --no-check-certificate rpmdev-setuptree rpm -ivUh podman-3.4.4-1.oe2203sp2.src.rpm yum-builddep -y /root/rpmbuild/SPECS/podman.spec rpmbuild -bb /root/rpmbuild/SPECS/podman.spec
- Build the RPM package of crun 1.4.5.
1 2 3 4 5
cd /home wget https://repo.openeuler.org/openEuler-22.03-LTS-SP2/source/Packages/crun-1.4.5-1.oe2203sp2.src.rpm --no-check-certificate rpm -ivUh crun-1.4.5-1.oe2203sp2.src.rpm yum-builddep -y /root/rpmbuild/SPECS/crun.spec rpmbuild -bb /root/rpmbuild/SPECS/crun.spec
- Build the RPM package of Conmon 2.1.0.
1 2 3 4 5
cd /home wget https://repo.openeuler.org/openEuler-22.03-LTS-SP2/source/Packages/conmon-2.1.0-1.oe2203sp2.src.rpm --no-check-certificate rpm -ivUh conmon-2.1.0-1.oe2203sp2.src.rpm yum-builddep -y /root/rpmbuild/SPECS/conmon.spec rpmbuild -bb /root/rpmbuild/SPECS/conmon.spec
- Install all RPM packages.
1 2
cd /root/ yum install -y rpmbuild/RPMS/noarch/podman-docker-3.4.4-1.noarch.rpm rpmbuild/RPMS/aarch64/podman-remote-3.4.4-1.aarch64.rpm rpmbuild/RPMS/aarch64/podman-3.4.4-1.aarch64.rpm rpmbuild/RPMS/aarch64/crun-help-1.4.5-1.aarch64.rpm rpmbuild/RPMS/aarch64/crun-1.4.5-1.aarch64.rpm rpmbuild/RPMS/aarch64/conmon-2.1.0-1.aarch64.rpm rpmbuild/RPMS/aarch64/podman-help-3.4.4-1.aarch64.rpm rpmbuild/RPMS/aarch64/podman-gvproxy-3.4.4-1.aarch64.rpm rpmbuild/RPMS/aarch64/podman-plugins-3.4.4-1.aarch64.rpm
- Install catatonit.
1 2 3 4 5 6 7
git clone https://github.com/openSUSE/catatonit.git cd catatonit ./autogen.sh ./configure make make install cp catatonit /usr/libexec/podman/catatonit
- Start Podman.
1 2 3 4
systemctl daemon-reload systemctl enable podman systemctl start podman systemctl status podman
Parent topic: Preparing the Compilation Environment