You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.8 KiB

MINIKUBE 安装

获取 minikube

进入 https://github.com/kubernetes/minikube/releases/tag/v1.31.2

点击 Assets 点击 minikube-linux-amd64 下载

上传到服务器

安装

install minikube-linux-amd64 /usr/local/bin/minikube

启动

minikube start \
  --image-mirror-country='cn' \
  --image-repository='registry.cn-hangzhou.aliyuncs.com/google_containers' \
  --base-image='registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.40' \
  --container-runtime=containerd \
  --kubernetes-version=v1.27.4 \
  --driver=docker \
  --force

配置镜像仓库

# 进入容器
docker exec -it minikube /bin/bash

# 修改配置文件
cat > /etc/containerd/certs.d/docker.io/hosts.toml <<-'EOF'
server = "https://registry-1.docker.io"
[host."https://68k4zzfk.mirror.aliyuncs.com"]
  capabilities = ["pull","resolve"]
EOF

# 重启容器
systemctl restart containerd

# 退出容器
exit

部署 NGINX 集群

创建配置目录

mkdir /usr/local/k8s/

创建配置文件

cat > /usr/local/k8s/nginx.yaml <<-'EOF'
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
spec:
  selector:
    matchLabels:
      app: nginx
  replicas: 3
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
        ports:
        - containerPort: 80
EOF

部署

kubectl apply -f /usr/local/k8s/nginx-cluster.yaml

配置 KUBECTL

echo 'alias kubectl="minikube  kubectl --"' >> /root/.bashrc
source /root/.bashrc

kubectl version

配置 KUBECTL 补全

apt install bash-completion
source /usr/share/bash-completion/bash_completion
source <(kubectl completion bash)

创建 DASHBOARD

启动

minikube addons enable metrics-server

nohup minikube dashboard > dashboard.log 2>&1 &

nohup minikube kubectl -- proxy --address='0.0.0.0' --disable-filter=true > proxy.log 2>&1 &

如果镜像拉不下来 则手动装载镜像

# 阿里云获取 保存镜像
IMAGE_NAME=metrics-scraper
IMAGE_PATH=docker.io/kubernetesui/$IMAGE_NAME
TAG=v1.0.8
docker pull $IMAGE_PATH:$TAG
docker save $IMAGE_PATH:$TAG -o ${IMAGE_NAME}_$TAG.tar

IMAGE_NAME=dashboard
IMAGE_PATH=docker.io/kubernetesui/$IMAGE_NAME
TAG=v2.7.0
docker pull $IMAGE_PATH:$TAG
docker save $IMAGE_PATH:$TAG -o ${IMAGE_NAME}_$TAG.tar

IMAGE_NAME=metrics-server
IMAGE_PATH=registry.cn-hangzhou.aliyuncs.com/google_containers/$IMAGE_NAME
TAG=v0.6.4
docker pull $IMAGE_PATH:$TAG
docker save $IMAGE_PATH:$TAG -o ${IMAGE_NAME}_$TAG.tar

上传镜像到本地

# 宿主机执行
eval $(minikube docker-env)

# 导入镜像
IMAGE_NAME=metrics-scraper
TAG=v1.0.8
docker load < ${IMAGE_NAME}_$TAG.tar

IMAGE_NAME=dashboard
TAG=v2.7.0
docker load < ${IMAGE_NAME}_$TAG.tar

IMAGE_NAME=metrics-server
TAG=v0.6.4
docker load < ${IMAGE_NAME}_$TAG.tar