关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

从零搭建k8s集群教程

发布时间:2021-04-25 16:02:31

首先我们下载k8s集群部署脚本一键部署(多版本)kubernetes集群部署脚本

这里贴上下载链接: https://wwa.lanzous.com/igpZPohcv6f


下载下来进入base.config文件修改成自己的配置


image.png


创建k8sDeploy目录

[root@k8s]  cd /

[root@k8s /]#  mkdi k8sDeploy


把下载下来的脚本上传到  k8sDeploy   目录


赋予脚本权限

[root@k8s ~]# chmod -R 755 /k8sDeploy1/k8sDeploy-master/k8sDeploy.sh


运行脚本

[root@k8s ~]# sh k8sDeploy.sh


等几分钟运行完会提示


image.png


接下来我们安装Kuboard管理Kubernetes(k8s)


一,安装

经过如下命令:bash

$ kubectl apply -f https://kuboard.cn/install-script/kuboard.yaml
$ kubectl apply -f https://addons.kuboard.cn/metrics-server/0.3.6/metrics-server.yaml

查看 Kuboard 运行状态:架构

$ kubectl get pods -l k8s.kuboard.cn/name=kuboard -n kube-system
NAME                       READY   STATUS    RESTARTS   AGE
kuboard-7bb89b4cc4-p5l2p   1/1     Running   0          179m

若是为Running, 表示已成功启动. 不然使用kubectl describe查看失败缘由. app

墙内颇有可能存在没法Pulling image的问题, 参考: 为何我不能获取到镜像,ImagePullBackoff.编辑器

也可使用daocloud工具先手动pull下来:微服务

$ dao pull eipwork/kuboard:latest

二. 访问

4.1 获取token

能够得到管理员用户、只读用户的Token。工具

其中管理员Token拥有 ClusterAdmin 的权限,能够执行全部操做.

# 在第一个 Master 节点上执行此命令
echo $(kubectl -n kube-system get secret $(kubectl -n kube-system get secret | grep kuboard-user | awk '{print $1}') -o go-template='{{.data.token}}' | base64 -d)

取输出信息中 token 字段:

eyJhbGciOiJSUzI1NiIsImtpZC......YTwFI8Ba9LleSYbCi4o0k74568KcN_w

4.2 登陆&访问

能够经过NodePort、Port-forward 两种方式当中的任意一种访问 Kuboard.

4.2.1 NodePort方式

Kuboard Service 使用了 NodePort 的方式暴露服务,NodePort 为 32567;因此能够按以下方式访问 Kuboard: http://<server_ip>:32567.


image.png


                           Node节点加入K8S集群

 

1.重新生成新的token
默认token的有效期为24小时,当过期之后,该token就不可用了,在master节点上执行 kubeadm token create
 
1
$ kubeadm token create<br data-filtered="filtered">c9afga.w3fue0yh3gzxczic

查看token

1
$ kubeadm token list
1
2
TOKEN                     TTL       EXPIRES                     USAGES                   DESCRIPTION   EXTRA GROUPS
c9afga.w3fue0yh3gzxczic   23h       2019-07-26T14:30:54+08:00   authentication,signing   <none>        system:bootstrappers:kubeadm:default-node-token

  

 
2.获取ca证书sha256编码hash值

1
$ openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'
1
<em id="__mceDel">8b79b6461e58c07333cb2851fe74fd4374af8bbbe0bf7e040b415b86ad4fb89d</em>

 

 
3.节点加入集群
 先清理环境,然后再kubeadm join (Node节点上执行)
1
$ kubeadm join 192.168.1.180:6443 --token kzvl8m.vxjqpv7fhk3ove4n  --discovery-token-ca-cert-hash sha256:b85701bd8ec04a6600b835eb2159a0ecc59b5de84528e59fda2550dcadb0f376
1
token kzvl8m.vxjqpv7fhk3ove4n替换成你的 b85701bd8ec04a6600b835eb2159a0ecc59b5de84528e59fda2550dcadb0f376也替换成你的

 4.再次查看

 
1
2
3
4
5
[root@k8s-master~]# kubectl get nodes
NAME         STATUS   ROLES    AGE    VERSION
k8s-master   Ready    master   4d8h   v1.14.1
k8s-node1    Ready    <none>   4d8h   v1.14.1
k8s-node2    Ready    <none>   4d8h   v1.14.1

搭建到此结束


/template/Home/Zkeys/PC/Static