我不知道大家使用的linux是基于什么下面的架构。不过系统架构大部分都是x86的。
我自己使用的也是基于x86的架构系统,例如,ubuntu,centso,rocky,kali等等,这些linux系统我都有接触过。今天我来通过案例,告诉大家,怎么部署k8s的单节点。大家也自己动手试一试。
首先大家需要在自己的linux系统里面安装curl,和docker。
可以使用
yum install curl 或者是 apt install culr。
docker安装的话,ubuntu的系统安装docker就比较方便,
apt install docker
centos安装docker就比较的麻烦。因为docker安装的版本需要大于20.的版本,所以需要指定安装docker的版本,具体的安装方法可以看这个
(279条消息) 安装指定版本docker_docker 安装指定版本_不务正业的猿的博客-CSDN博客
我本人使用过。
接下来。安装k8s
如果对k8s这个东西不了解的,或者是想要了解的,可以看这个
(279条消息) [云原生专题-25]:K8S - Kubernetes(K8S)Master集群构建与安装过程详细解读 - worker节点的安装与加入_文火冰糖的硅基工坊的博客-CSDN博客
这是官方文档
使用 servicer docker status 查看 docker 在 linux 里面运行的状态
用 servicer docker status 查看 docker 在 linx 里面运行的状态。进行了安装 kubectl。官方的文档里面提供了三种下载方法,我选择使用 curl 命令下载 kubectl 的二进 制文件 使用
curl -LO https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl
因为 ubuntu 是 x86 的 结构。这个文件下载好了后就会保存在你系统当前所指向的文件夹里面。
接下来,安装kubetcl
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
使用这个命令, sudo 是一个暂时使用 root 权限,-o root -g root ,这个文件的属主是 root,属租也是 root,-m 0755,-m 是安装到哪一个路径的下面。0755 是文件本身的权限,7 可以分成这些可读 (2),可写(4),可执行(1)
再使用
mkdir -p ~/.local/bin
-p 是递归创建文件夹,在把当前文件夹里面的文件移动到 ~/.local/bin/kubectl 下面。
再使用
mv ./kubectl ~/.local/bin/kubectl
ubunut的可以执行这个命令:vim ~/.bashrc,把 export PATH=~/.local/bin:$PATH 写到这个文件的最后一个行。
因为我这里使用的 minikbue,不了解的可以去看官方文档
- 下载minikube的二进制文件
下载二进制文件的命令:、
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
安装minikube的命令:
sudo install minikube-linux-amd64 /usr/local/bin/minikube
(2)启动minikube
如果无法启动:
首先需要配置驱动程序,驱动程序有这些,可以自行选择下载:
我使用的是docker。首先需要保证自己的虚拟机里面有docker,yum install docker,不过docker
的版本需要大于18.09的版本
请看相关文档:
(342条消息) yum 安装指定版本Docker_cn.Dixon的博客-CSDN博客
如果是使用ubuntu的可以直接apt install docker.io下载的docker版本是大于18.09的
(2)下面启动minikube start
如果启动失败,如果出现以下代码:
Exiting due to DRV_AS_ROOT: The “docker“ driver should not be used with root privileges
请执行这个命令:如果虚拟机不小心关机了,也可以通过下面的命令重新启动minikube.
[root@zhangpeilei ~]# minikube start --force --driver=docker
然后打开仪表盘:
请运行
minikube dashboard
请耐心的等待一段时间:等待一个2,3分钟的时间,它会给你给网站:使用自己的虚拟机的浏览器,打开它给你的网站。这样你就可以看打仪表盘
相关的操作可以看这个(官方文档):
还有一个,你一但执行了这个:minikube start --force --driver=docker
请在root的状态下进行应用部署。查看部署,管理部署。
3------------:部署应用:
- 默认情况下,Pod 只能通过 Kubernetes 集群中的内部 IP 地址访问。 要使得
hello-node
容器可以从 Kubernetes 虚拟网络的外部访问,你必须将 Pod 暴露为 Kubernetes Service。minikube service hello-node 这个hello-node是你的应用,这个命令的作用:对于支持负载均衡器的云服务平台而言,平台将提供一个外部 IP 来访问该服务。 在 Minikube 上,LoadBalancer
使得服务可以通过命令minikube service
访问。: - 访问单个应用的服务 使用kubectl services 应用名字
- 查询应用服务 kubtect get services
- 添加应用 kubectl apply -f 加文件名字.yaml,这个文件可以是http://开头的,也可以是通过vim写好的文件
- 查看应用的状态kubectl get pod 或者是 kubectl get pods
- 查看某一个的应用状态 kubect get pod 应用名字
- 删除单个应用的服务kubectl delete services 应用名字
- 有关单个应用的删除一定是deployments里面开始的,命令是kubectl delete deployments 应用名字
- 删除pod的单个节点可以使用kubectl delete pod 应用名字