minikube搭建单机环境

224 阅读1分钟

安装配置docker

cat /etc/docker/daemon.json  修改docker配置文件
{  
 "registry-mirrors": ["https://ted9wxpi.mirror.aliyuncs.com"],  
 "exec-opts": ["native.cgroupdriver=systemd"]  
}

安装cri-docker

由于1.24以及更高版本不支持docker所以安装cri-docker
下载cri-docker
wget https://kgithub.com/Mirantis/cri-dockerd/releases/download/v0.3.1/cri-dockerd-0.3.1.amd64.tgz
解压并复制到bin目录
tar -xf cri-dockerd-0.3.1.amd64.tgz
cd cri-dockerd
cp cri-dockerd /usr/bin

# 写入启动配置文件
cat >  /usr/lib/systemd/system/cri-docker.service <<EOF
[Unit]
Description=CRI Interface for Docker Application Container Engine
Documentation=https://docs.mirantis.com
After=network-online.target firewalld.service docker.service
Wants=network-online.target
Requires=cri-docker.socket

[Service]
Type=notify
ExecStart=/usr/bin/cri-dockerd --network-plugin=cni --pod-infra-container-image=registry.aliyuncs.com/google_containers/pause:3.7
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always

StartLimitBurst=3

StartLimitInterval=60s

LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity

TasksMax=infinity
Delegate=yes
KillMode=process

[Install]
WantedBy=multi-user.target
EOF

# 写入socket配置文件
cat > /usr/lib/systemd/system/cri-docker.socket <<EOF
[Unit]
Description=CRI Docker Socket for the API
PartOf=cri-docker.service

[Socket]
ListenStream=%t/cri-dockerd.sock
SocketMode=0660
SocketUser=root
SocketGroup=docker

[Install]
WantedBy=sockets.target
EOF

# 进行启动cri-docker
systemctl daemon-reload ;systemctl enable cri-docker --now

安装minikube

curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/re  
lease/stable.txt`/bin/linux/amd64/kubectl
# 添加可执行权限
chmod +x kubectl
# 移动到bin目录
mv kubectl /usr/local/bin/

# 下载minikube
curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube
# 安装minikube到bin目录
install minikube /usr/local/bin
# 启动minikube
minikube start --driver=docker --container-runtime=containerd --image-mirror-country=cn --force

验证

root@ubuntu # kubectl get nodes  
NAME       STATUS   ROLES           AGE     VERSION  
minikube   Ready    control-plane   3h59m   v1.26.1

root@ubuntu # kubectl get pods -A  
NAMESPACE     NAME                               READY   STATUS    RESTARTS      AGE  
kube-system   coredns-567c556887-xwkzq           0/1     Running   1 (55s ago)   3h59m  
kube-system   etcd-minikube                      1/1     Running   1 (55s ago)   3h59m  
kube-system   kindnet-jfb2b                      1/1     Running   1 (55s ago)   3h59m  
kube-system   kube-apiserver-minikube            1/1     Running   1 (55s ago)   3h59m  
kube-system   kube-controller-manager-minikube   1/1     Running   1 (55s ago)   3h59m  
kube-system   kube-proxy-lkk5s                   1/1     Running   1 (55s ago)   3h59m  
kube-system   kube-scheduler-minikube            1/1     Running   1 (55s ago)   3h59m  
kube-system   storage-provisioner                1/1     Running   2 (55s ago)   3h59m

开机后启动minikube

minikube start --force

参考链接

developer.aliyun.com/article/100…