前言:
本章将介绍如何使用MiniKube从零开始安装k8s集群服务,网上文章众说纷纭,少有正确并一次安装成功的,本次我将以实践出真理,带领大家一步一步安装成功。
**请确保服务器配置不少于2G内存以及2个cpu,可使用VMware虚拟机搭建
简介:
Minikube是一种轻量化的Kubernetes集群,是Kubernetes社区为了帮助开发者和学习者能够更好学习和体验k8s功能而推出的,借助个人PC的虚拟化环境就可以实现Kubernetes的快速构建启动。目前已支持在macOS、Linux、Windows平台上利用各类本地虚拟化环境作为驱动运行。
社区直达
正文:
第一步:关闭防火墙并安装docker
1、执行以下命令关闭防护墙
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# systemctl status firewalld.service
2、使用国内 daocloud 一键安装命令安装docker
[root@localhost ~]# curl -sSL https://get.daocloud.io/docker | sh
3、启动docker
[root@localhost ~]# systemctl start docker
[root@localhost ~]# systemctl status docker
第二步:安装 kubectl
1、下载二进制包
[root@localhost ~]# wget -c "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
2、安装kubectl
[root@localhost ~]# sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
3、查询版本(验证)
[root@localhost ~]# kubectl version
第三步:安装 minikube
1、下载二进制包
[root@localhost ~]# curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
2、安装minikube
[root@localhost ~]# sudo install minikube-linux-amd64 /usr/local/bin/minikube
第四步:优化参数创建集群
1、新建文件 /etc/sysctl.d/kubernetes.conf,模版内容如下
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-ip6tables=1
net.ipv4.ip_forward=1
vm.swappiness=0
vm.overcommit_memory=1
vm.panic_on_oom=0
fs.inotify.max_user_instances=8192
fs.inotify.max_user_watches=1048576
fs.file-max=52706963
fs.nr_open=52706963
net.ipv6.conf.all.disable_ipv6=1
net.netfilter.nf_conntrack_max=131072
2、执行如下命令加载内核参数配置
[root@localhost ~]# sysctl -p /etc/sysctl.d/kubernetes.conf
**如果出现以下错误 执行modprobe ip_conntrack命令再次加载即可!
第五步:启动
**使用docker作为 minikube的驱动,不能使用 root 用户
1、创建docker用户
[root@localhost ~]# useradd docker -g docker
[root@localhost ~]# passwd docker
2、编辑sudoers文件将docker用户加入(强制保存)
[root@localhost ~]# vi /etc/sudoers
3、切换docker用户启动
[docker@localhost root]$ minikube delete
[docker@localhost root]$ minikube start --kubernetes-version=v1.23.8
第六步:测试kubectl
1、查看集群信息
[docker@localhost root]$ kubectl cluster-info
2、查看节点信息
[docker@localhost root]$ kubectl get node
3、查看内部服务组件
[docker@localhost root]$ kubectl get pod -A
第七步:启动 minikube dashboard
1、在终端开启本地IP代理窗口
[docker@localhost root]$ kubectl proxy --port=45396 --address='0.0.0.0' --disable-filter=true --accept-hosts='^.*' &
2、获取k8s api endpoint,将获取到的 endpoint 的 IP:Port 替换成外部IP:45396 ,在浏览器中访问
[docker@localhost root]$ minikube dashboard --url &
完结撒花~