Container Infrastructure Management Service for OpenStack
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

48 lines
1.6 KiB

set +x
echo "START: install cri"
. /etc/sysconfig/heat-params
set -x
ssh_cmd="ssh -F /srv/magnum/.ssh/config root@localhost"
if [ "${CONTAINER_RUNTIME}" = "containerd" ] ; then
$ssh_cmd systemctl disable docker
if [ -z "${CONTAINERD_TARBALL_URL}" ] ; then
CONTAINERD_TARBALL_URL="https://storage.googleapis.com/cri-containerd-release/cri-containerd-${CONTAINERD_VERSION}.linux-amd64.tar.gz"
fi
i=0
until curl -o /srv/magnum/cri-containerd.tar.gz "${CONTAINERD_TARBALL_URL}"
do
i=$((i + 1))
[ $i -lt 5 ] || break;
sleep 5
done
if ! echo "${CONTAINERD_TARBALL_SHA256} /srv/magnum/cri-containerd.tar.gz" | sha256sum -c - ; then
echo "ERROR cri-containerd.tar.gz computed checksum did NOT match, exiting."
exit 1
fi
$ssh_cmd tar xzvf /srv/magnum/cri-containerd.tar.gz -C / --no-same-owner --touch --no-same-permissions
$ssh_cmd systemctl daemon-reload
$ssh_cmd systemctl enable containerd
$ssh_cmd systemctl start containerd
else
# CONTAINER_RUNTIME=host-docker
$ssh_cmd systemctl disable docker
if $ssh_cmd cat /usr/lib/systemd/system/docker.service | grep 'native.cgroupdriver'; then
$ssh_cmd cp /usr/lib/systemd/system/docker.service /etc/systemd/system/
sed -i "s/\(native.cgroupdriver=\)\w\+/\1$CGROUP_DRIVER/" \
/etc/systemd/system/docker.service
else
cat > /etc/systemd/system/docker.service.d/cgroupdriver.conf << EOF
ExecStart=---exec-opt native.cgroupdriver=$CGROUP_DRIVER
EOF
fi
$ssh_cmd systemctl daemon-reload
$ssh_cmd systemctl enable docker
fi
echo "END: install cri"