k8s学习二:学习基本概念和搭建dashboard

举报
仙士可 发表于 2023/06/30 12:19:26 2023/06/30
【摘要】 前言在上一篇,我们已经搭建好了一个k8s的集群环境,现在开始整可视化这个时候,我们可以了解一些名词masterMaster 节点是 Kubernetes 集群的控制节点,负责整个集群的管理和控制我们之前搭建的就是master节点,可以通过docker ps,docker images看到它运行的组件:这些组件具体有啥用暂时不讲,后面慢慢来podPod 是 Kubernetes 最基本的部署调...

前言

在上一篇,我们已经搭建好了一个k8s的集群环境,现在开始整可视化

这个时候,我们可以了解一些名词

master

Master 节点是 Kubernetes 集群的控制节点,负责整个集群的管理和控制

我们之前搭建的就是master节点,可以通过docker ps,docker images看到它运行的组件:

这些组件具体有啥用暂时不讲,后面慢慢来

pod

Pod 是 Kubernetes 最基本的部署调度单元。每个 Pod 可以由一个或多个业务容器和一个根容器(Pause 容器)组成。一个 Pod 表示某个应用的一个实例

可以通过命令来查看当前运行的pod

root@test02:/home/tioncico# kubectl get pods --all-namespaces
NAMESPACE              NAME                                         READY   STATUS    RESTARTS   AGE
kube-flannel           kube-flannel-ds-rfx4q                        1/1     Running   0          58s
kube-system            coredns-6d8c4cb4d-575sw                      1/1     Running   0          66m
kube-system            coredns-6d8c4cb4d-p4nv8                      1/1     Running   0          66m
kube-system            etcd-master                                  1/1     Running   0          67m
kube-system            kube-apiserver-master                        1/1     Running   0          67m
kube-system            kube-controller-manager-master               1/1     Running   0          67m
kube-system            kube-proxy-n2n4n                             1/1     Running   0          66m
kube-system            kube-scheduler-master                        1/1     Running   0          67mReplicaSet
复制

是 Pod 副本的抽象,用于解决 Pod 的扩容和伸缩

Deployment

Deployment 表示部署,在内部使用ReplicaSet 来实现。可以通过 Deployment 来生成相应的 ReplicaSet 完成 Pod 副本的创建

部署dashboard

Kubernetes Dashboard 是 k8s集群的一个 WEB UI管理工具,代码托管在 github 上,地址:https://github.com/kubernetes/dashboard

安装方式一:

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.6.1/aio/deploy/recommended.yaml
复制

安装方式二:

wget kubectl apply -f recommended.yaml
复制

说明一下:k8s的管理基本是通过yaml配置,或者直接命令行来实现的,方式1和2其实一样,只是一个是直接下载安装,另一个是文件安装,我们可以查看文件的配置项

k8s的各种管理,都是可以通过yaml配置文件来决定的

安装好之后,可以通过 查看pod命令查看

root@test02:/home/tioncico# kubectl get pods -n kubernetes-dashboard
NAME                                         READY   STATUS    RESTARTS   AGE
dashboard-metrics-scraper-6f669b9c9b-86hm6   1/1     Running   0          31m
kubernetes-dashboard-54c5fb4776-qb2lf        1/1     Running   0          31m
复制

这里的-n表示的是命名空间筛选,筛选的就是dashboard

访问dashboard

在k8s中,所有节点都是内部网络互通,docker容器互通,默认没有对外开启服务,但是可以通过nodeport,反向代理等方案对外提供服务

在dashboard官方中,建议直接使用kubectl proxy方案进行访问,由于我的环境是虚拟机,所以需要额外监听0.0.0.0

root@test02:/home/tioncico# kubectl proxy --address="0.0.0.0"
复制

同时需要宿主机开放端口

访问: http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

即可访问dashboard后台:

用户认证

k8s授权方案非常多,我们这边使用最简单的,生成一个serviceAccount

创建用户 

kubectl create clusterrolebinding serviceaccount-cluster-admin --clusterrole=cluster-admin --user=system:serviceaccount:kubernetes-dashboard:kubernetes-dashboard
复制

查看用户token:

kubectl describe secrets -n kubernetes-dashboard
复制

将token复制到后台登陆界面,即可登陆成功:

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。