简介
kata-containers是新的虚拟机实现,可以实现和现在容器生态无缝连接,与时下最流行的容器编排工具k8s完美结合,提供容器的快速启动,和虚拟机的安全隔离,与docker技术相比,容器之间不共用内核,使得隔离性更好。
kata与docker对比图
与传统容器对比
架构图
安装
本实验在centos7环境下
安装docker
yum -y install yum-utils
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum -y install docker-ce
安装kata-containers
source /etc/os-release
echo $VERSION_ID
VERSION_ID=$VERSION_ID yum-config-manager --add-repo \
"http://download.opensuse.org/repositories/home:/katacontainers:/release/CentOS_${VERSION_ID}/home:katacontainers:release.repo"
yum -y install kata-runtime kata-proxy kata-shim
配置docker
mkdir -p /etc/systemd/system/docker.service.d/
cat <<EOF | sudo tee /etc/systemd/system/docker.service.d/kata-containers.conf
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -D --add-runtime kata-runtime=/usr/bin/kata-runtime --default-runtime=kata-runtime
EOF
启动docker
systemctl daemon-reload
systemctl restart docker
查看机器是否支持kata-containers
kata-runtime kata-check
# 经过测试使用virtualbox创建的虚拟机来进行实验都不能成功
# 因为virtualbox创建的虚拟机,不允许在虚拟机里再使用虚拟化
# 而kata-containers需要使用虚拟化
# 虽然使用vmware创建的虚拟机使用些步骤检查时,仍然会报部分错误
# 但是依然可以成功启动容器
使用测试
# 启动
docker run -d busybox sh -c 'sleep 9999999'
# 查看
docker ps
# 查看qemu
ps -ef | grep qemu
# 可以看到启动了一个轻量的虚拟机