Ubuntu20部署K8S单机版

1 简介

为学习和测试K8S,本文基于Ubuntu20搭建单机版K8S。
单机版K8S需要的物料有:kubectl、minikube,其中,kubectl是K8S的命令行客户端,通过命令行操作K8S,minikube即单机版的K8S服务端(自带客户端页面),监控部署在K8S中服务的运行状态、资源占用率等情况。

2 部署kubectl

官网文档:https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/

2.1 下载

curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"

在这里插入图片描述

快捷下载方式

在某些网络条件下无法直接下载的开发者,移步这里免费下载,无需积分,版本:v1.30.2
https://download.csdn.net/download/Xin_101/89455193
(注:需要登录才能下载)

2.2 验证

curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"

在这里插入图片描述

echo "$(<kubectl.sha256)  kubectl" | sha256sum --check

验证结果
在这里插入图片描述

  • 成功
kubectl: OK
  • 失败
kubectl: FAILED
sha256sum: WARNING: 1 computed checksum did NOT match

2.3 安装

sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl

在这里插入图片描述

2.4 (可选)权限设置

chmod +x kubectl
mkdir -p ~/.local/bin/kubectl
mv ./kubectl ~/.local/bin/kubectl

2.5 查看版本

kubectl version --client

在这里插入图片描述

3 部署Minikube

官网文档:https://minikube.sigs.k8s.io/docs/start/

3.1 下载MiniKube

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

在这里插入图片描述

3.2 安装

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

在这里插入图片描述

3.3 启动方式

3.3.1 方式1:无参启动

这种针对可以直接下载镜像的工程师而言。

minikube start

在这里插入图片描述

3.3.2 方式2:配置镜像源启动

这种针对必须使用国内镜像的工程师。

minikube start --registry-mirror=https://registry.docker-cn.com,https://shraym0v.mirror.aliyuncs.com --embed-certs=true --image-mirror-country=cn --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers

3.3.3 方式3:使用基础镜像启动

该方式针对无法从国内镜像源无法直接通过启动的方式下载镜像,需要先手动下载基础镜像。

  • 下载基础镜像
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.44
  • 添加TAG
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.44 gcr.io/k8s-minikube/kicbase:v0.0.44
  • 启动
minikube start --registry-mirror=https://registry.docker-cn.com,https://shraym0v.mirror.aliyuncs.com --embed-certs=true --image-mirror-country=cn --base-image=gcr.io/k8s-minikube/kicbase:v0.0.44  --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers

在这里插入图片描述

  • 异常:
    stderr:
    Unable to find image ‘registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.44@sha256:eb04641328b06c5c4a14f4348470e1046bbcf9c2cbc551486e343d3a49db557e’ locally

在这里插入图片描述

  • 方案
    手动下载镜像,使用基础镜像启动minikube。
# 手动下载镜像
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.44
# 打TAG
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.44 gcr.io/k8s-minikube/kicbase:v0.0.44
# 启动minikube
minikube start --registry-mirror=https://registry.docker-cn.com,https://shraym0v.mirror.aliyuncs.com --embed-certs=true --image-mirror-country=cn --base-image=gcr.io/k8s-minikube/kicbase:v0.0.44  --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers
  • 添加Docker群组用户
# 添加docker用户组
sudo groupadd docker    
# 将登陆用户加入到docker用户组中
sudo gpasswd -a $USER docker 
# 更新用户组
newgrp docker  

在这里插入图片描述

3.4 集群交互

连接集群

kubectl get po -A

在这里插入图片描述

3.5 监控面板

3.5.1 启动

minikube dashboard

在这里插入图片描述

3.5.2 页面

这个链接是直接在minikube宿主机上访问,
当需要在其他机器上访问Dashboard时,需要配置代理,

kubectl proxy --port=9999 --address=192.168.10.11 --accept-hosts='^.*' &

其中,port为访问Dashboard的端口,address为访问Dashboard的IP。

在这里插入图片描述

在这里插入图片描述

3.6 集群管理

序号命令描述
1minikube pause暂停已部署的应用
2minikube unpause启动已暂停的应用
3minikube stop关闭集群
4minikube config set memory 16384增加内存(需要重启)
5minikube addons list查询已安装的K8S服务
6minikube start -p aged --kubernetes-version=v1.16.1创建副本集群
7minikube delete --all删除所有minikube集群

4 小结

  • kubectl命令行客户端,操作K8S;
  • minikube:K8S单机版服务端(自带客户端页面);

5 Q&A

  • 异常:
    stderr:
    Unable to find image ‘registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.44@sha256:eb04641328b06c5c4a14f4348470e1046bbcf9c2cbc551486e343d3a49db557e’ locally

在这里插入图片描述

  • 方案
    手动下载镜像,使用基础镜像启动minikube。
# 手动下载镜像
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.44
# 打TAG
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.44 gcr.io/k8s-minikube/kicbase:v0.0.44
# 启动minikube
minikube start --registry-mirror=https://registry.docker-cn.com,https://shraym0v.mirror.aliyuncs.com --embed-certs=true --image-mirror-country=cn --base-image=gcr.io/k8s-minikube/kicbase:v0.0.44  --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天然玩家

坚持才能做到极致

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值