Kubernetes(k8s)-仪表板(Dashboard)部署和访问

作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

图片

我们上一章介绍了Docker基本情况,目前在规模较大的容器集群基本都是Kubernetes,但是Kubernetes涉及的东西和概念确实是太多了,而且随着版本迭代功能在还增加,笔者有些功能也确实没用过,所以只能按照我自己的理解来讲解。

到目前为止,我们所有的操作都是通过kubectl命令来操作我们的集群,我们是否可以通过网页来操作集群,这就是我们今天要讲解的Dashboard。

Dashboard 是基于网页的 Kubernetes 用户界面。 你可以使用 Dashboard 将容器应用部署到 Kubernetes 集群中,也可以对容器应用排错,还能管理集群资源。 你可以使用 Dashboard 获取运行在集群中的应用的概览信息,也可以创建或者修改 Kubernetes 资源 (如 Deployment、Job、DaemonSet 等等)。 例如,你可以对 Deployment 实现弹性伸缩、发起滚动升级、重启 Pod 或者使用向导创建新的应用。

Dashboard 同时展示了 Kubernetes 集群中的资源状态信息和所有报错信息。

部署 Dashboard UI 

#添加 kubernetes-dashboard 仓库
helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/

#使用 kubernetes-dashboard Chart 部署名为 `kubernetes-dashboard` 的 Helm Release
helm upgrade \
   --install \
   kubernetes-dashboard \
   kubernetes-dashboard/kubernetes-dashboard \
   --create-namespace \
   --namespace kubernetes-dashboard

图片

从这里看,我们并不能直接访问,因为暴露的方式都是ClusterIP,只能在集群内部访问,所以我们需要添加额外的手段来访问。我这里以演示为目的,未考虑太多安全方面的问题。​​​​​​​

#这样我们就可用通过访问当前节点的8443端口访问  
kubectl -n kubernetes-dashboard \
port-forward \
--address 0.0.0.0 \
svc/kubernetes-dashboard-kong-proxy 8443:443

访问Dashboard UI​​​​​​​

#以我们的集群为范例 
https://192.168.31.100:8443/

图片

由于是这个并没有配置RBAC,所以我们还需要给他配置RBAC。

图片

    #创建sa
    kubectl create serviceaccount admin-user -n kubernetes-dashboard
    
    #创建局部权限
    kubectl create rolebinding admin-user-binding --clusterrole=admin --serviceaccount=kubernetes-dashboard:admin-user -n kubernetes-dashboard
    
    #创建全局权限
    kubectl create clusterrolebinding admin-user-binding --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:admin-user
    
    #创建token
    kubectl -n kubernetes-dashboard create token admin-user

    获取token以后就可以登陆Dashboard,就可用看到下面的界面(本地演示使用的最高权限)。

    图片

    左边的导航就是我们前面讲解的各种资源:

    工作负载:Pod,5种控制器,2种Job。

    服务:Services,Ingress,还有涉及比较少的Ingress类。

    配置和存储:Secret,Configmap,PVC。

    集群:RBRC相关资源,NS,PV,这里的事件和网络策略我们未单独讲。

    右边的就是各种资源的更详细的信息,我们还可用进行对各种资源进行操作:包括扩容,编辑,删除,进入容器等。

    纯开源的基本上就是我们看到的这些功能,如果你购买的是云厂商(阿里,腾讯等)的Kubernetes产品,他们都会默认带有这样一个控制面板,当然他的功能比开源产品会更丰富。

    运维小路

    一个不会开发的运维!一个要学开发的运维!一个学不会开发的运维!欢迎大家骚扰的运维!

    关注微信公众号《运维小路》获取更多内容。

    评论
    成就一亿技术人!
    拼手气红包6.0元
    还能输入1000个字符
     
    红包 添加红包
    表情包 插入表情
     条评论被折叠 查看
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值