【从零开始搭建k8s v1.24集群】Chapter 2 管理kubernetes集群

管理方式

1.集群管理员可通过SSH到集群节点管理集群
2.为了进行可视化管理,就需要结合管理控制台

Optional 1 KubeSphere

可以直接通过KubeSphere很方便的搭建好一个单节点的k8s集群,并且提供web-ui的管理界面。当然我们也可以在现有的k8s集群基础上最小化部署KubeSphere,目前3.3.0只支持到kubernetes v1.22版本,参考官方文档

Optional 2 Dashboard

kubernetes官方工具,需要在集群中单独部署,dashboard即仪表盘,是k8s集群管理的web ui,需要单独部署。

部署dashboard

参考官方文档github。v1.24版本k8s推荐部署2.6.0最新版本以获得良好支持。

创建NodePort

NodePort可以在dashboard的部署文件中指定,也可以不指定,部署完后通过kubectl编辑修改类型为NodePort(若不指定端口则自动创建,范围30000-32767)。在后续的教程中,如果部署好ingress-controller后,可以通过域名的方式通过80或443端口访问。

kubectl edit svc kubernetes-dashboard -n kubernetes-dashboard

将type修改为NodePort。
下面是创建ingress的配置文件:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
  annotations:
    kubernetes.io/ingress.class: "nginx"
    nginx.ingress.kubernetes.io/backend-protocol: HTTPS
    nginx.ingress.kubernetes.io/configuration-snippet: |-
      proxy_ssl_server_name on;
      proxy_ssl_name $host;
spec:
  rules:
  - host: dashboard.k8s-app.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: kubernetes-dashboard
            port:
              number: 443

创建登录用户(ServiceAccount)

默认的dashboard角色权限很低,无法管理整个集群的所有资源,需要创建ServiceAccount并绑定cluster-admin角色,生成token后用于登录。注意:k8s的1.24版本重大变化,创建ServiceAccount不再自动生成Secret,如果要通过Secret获取token需要手动创建。

创建ServiceAccount和ClusterRoleBinding

apiVersion: v1
kind: ServiceAccount
metadata:
  name: dashboard-admin
  namespace: kubernetes-dashboard
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: dashboard-admin
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: dashboard-admin
  namespace: kubernetes-dashboard

登录方式

1.手动创建Secret

cat << EOF | kubectl apply -f -
apiVersion: v1
kind: Secret
type: kubernetes.io/service-account-token
metadata:
  name: dashboard-admin-token
  annotations:
    kubernetes.io/service-account.name: "dashboard-admin"
  namespace: kubernetes-dashboard
EOF

查看secret,复制token登录

kubectl describe secret dashboard-admin-token -n kubernetes-dashboard

2.创建token,使用token登录

kubectl -n kubernetes-dashboard create token dashboard-admin

Optional 3 Others

其它还有很多kubernetes可视化管理工具,这里不再列举。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值