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.
154 lines
2.8 KiB
Markdown
154 lines
2.8 KiB
Markdown
|
|
# MINIKUBE 安装
|
|
|
|
## 获取 minikube
|
|
|
|
进入 https://github.com/kubernetes/minikube/releases/tag/v1.31.2
|
|
|
|
点击 Assets
|
|
点击 minikube-linux-amd64 下载
|
|
|
|
上传到服务器
|
|
|
|
## 安装
|
|
```shell
|
|
install minikube-linux-amd64 /usr/local/bin/minikube
|
|
```
|
|
|
|
## 启动
|
|
```shell
|
|
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
|
|
```
|
|
|
|
## 配置镜像仓库
|
|
```shell
|
|
# 进入容器
|
|
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/
|
|
```
|
|
|
|
创建配置文件
|
|
```shell
|
|
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
|
|
```shell
|
|
echo 'alias kubectl="minikube kubectl --"' >> /root/.bashrc
|
|
source /root/.bashrc
|
|
|
|
kubectl version
|
|
```
|
|
|
|
## 配置 KUBECTL 补全
|
|
```shell
|
|
apt install bash-completion
|
|
source /usr/share/bash-completion/bash_completion
|
|
source <(kubectl completion bash)
|
|
```
|
|
## 创建 DASHBOARD
|
|
|
|
启动
|
|
|
|
```shell
|
|
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 &
|
|
|
|
```
|
|
|
|
如果镜像拉不下来 则手动装载镜像
|
|
|
|
```shell
|
|
# 阿里云获取 保存镜像
|
|
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
|
|
```
|
|
|
|
上传镜像到本地
|
|
|
|
```shell
|
|
# 宿主机执行
|
|
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
|
|
``` |