一体化监控管理平台解决方案,一体化监控管理平台的应用范围
608
2022-10-27
kubernetes without docker的实践(一)
最近很多人都在讨论kubernetes确认下个版本不再支持docker了,本周末就赶紧验证了一下不用docker的kubernetes是个什么情况,
ubuntu18.04,不详述,
首先安装containerd,sudo apt install containerd,
然后安装kube软件,
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -,sudo vim /etc/apt/sources.list.d/kubernetes.list,deb http://apt.kubernetes.io/ kubernetes-xenial main,sudo apt update,sudo apt install kubelet kubeadm kubectl,
创建kubernetes基础环境,
sudo swapoff -a,sudo kubeadm init --pod-network-cidr=10.244.0.0/16,
首先会碰到这个报错,
按报错提示修改/etc/sysctl.conf,sudo vim /etc/sysctl.conf,
net.bridge.bridge-nf-call-iptables = 1net.ipv4.conf.all.rp_filter = 1net.ipv4.ip_forward = 1
使能时又有报错,sudo sysctl -p,
要安装一个驱动,sudo modprobe br_netfilter,
再重复上面的操作,就都没问题了,
mkdir -p $HOME/.kube,sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config,sudo chown $(id -u):$(id -g) $HOME/.kube/config,
kubectl taint nodes --all node-role.kubernetes.io/master-,
基础环境安装完,继续安装CNI,我通常用calico,
wget https://docs.projectcalico.org/v3.16/manifests/calico.yaml,
sudo vim calico.yaml,- name: CALICO_IPV4POOL_CIDR value: "10.244.0.0/16"
kubernetes环境安装完成,kubectl get pods --all-namespaces,
创建一个容器看看,用我最常用的rastasheep/ubuntu-sshd:14.04,
sudo vim sshd-deployment.yaml,
apiVersion: apps/v1kind: Deploymentmetadata: name: sshd labels: app: sshdspec: selector: matchLabels: app: sshd template: metadata: labels: app: sshd spec: containers: - name: sshd image: docker.io/rastasheep/ubuntu-sshd:14.04 imagePullPolicy: IfNotPresent ports: - containerPort: 22
kubectl apply -f sshd-deployment.yaml,
kubectl get pod -o wide,容器正常运行,那么问题来了,镜像都在哪儿,
尝试了sudo ctr image list和crictl images,都没能看到镜像,
看containerd的状态,确认是通过它起的容器,
不用docker的kubernetes,看起来也还好,就是不知道镜像哪儿去了,
用docker的时候,很方便使用本地镜像的,这不用docker了,本地镜像如果不能用,岂不是很麻烦。
发表评论
暂时没有评论,来抢沙发吧~