Windows玩转Kubernetes系列4-搭建K8S Dashboard

杨怀
• 阅读 1856

下载官方yaml文件

最新的配置文件v2.0.0-beta8版本recommended.yaml,UI地址

wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yaml

原文件:

kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  ports:
    - port: 443
      targetPort: 8443
  selector:
    k8s-app: kubernetes-dashboard

修改为:

kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  type: NodePort #新增
  ports:
    - port: 443
      nodePort: 30001 #新增
      targetPort: 8443
  selector:
    k8s-app: kubernetes-dashboard

原文件内容

spec:
  containers:
    - name: kubernetes-dashboard
      image: kubernetesui/dashboard:v2.0.0-beta8
      imagePullPolicy: Always
      ports:
        - containerPort: 8443
          protocol: TCP

修改为:

spec:
  # nodeName: master.node 指定到master节点,指不指定根据需要
  containers:
    - name: kubernetes-dashboard
      image: kubernetesui/dashboard:v2.0.0-beta8
      # imagePullPolicy: Always
      imagePullPolicy: IfNotPresent #不存在再下载
      ports:
        - containerPort: 8443
          protocol: TCP

下载镜像和启动

在master节点执行

docker pull kubernetesui/dashboard:v2.0.0-beta8

执行

kubectl apply -f recommended.yaml

Windows玩转Kubernetes系列4-搭建K8S Dashboard

查看pod和service状态

kubectl get pods,svc -n kubernetes-dashboard -o wide
kubectl describe po kubernetes-dashboard --namespace=kubernetes-dashboard

Windows玩转Kubernetes系列4-搭建K8S Dashboard

如果发现

kubernetes-dashboard crashloopbackoff
kubectl get pods --all-namespaces
systemctl stop kubelet
systemctl stop docker
iptables --flush
iptables -tnat --flush
systemctl start kubelet
systemctl start docker
kubectl delete -f recommended.yaml

列出所有nodes: kubectl get node
删除节点:kubectl delete node node3
查看对应node上的pods信息: kubectl get pods -o wide | grep node3

重新加入
在删除的node3对应的服务器上执行:kubeadm reset

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -L -n
mkdir cert

cd cert/

openssl genrsa -out dashboard.key 2048
openssl req -days 36000   -new -out dashboard.csr    -key dashboard.key   -subj '/CN=**192.168.56.106**'


openssl x509 -req -in dashboard.csr -signkey dashboard.key -out dashboard.crt

kubectl create secret generic kubernetes-dashboard-certs     --from-file=dashboard.key     --from-file=dashboard.crt      -n kubernetes-dashboard

Windows玩转Kubernetes系列4-搭建K8S Dashboard

新建create-admin.yaml

apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kubernetes-dashboard

---

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

运行

 kubectl apply -f create-admin.yaml

查看sa和secret

kubectl get sa,secrets -n kubernetes-dashboard
kubectl describe secret admin-user-token-t79xh -n kubernetes-dashboard

Windows玩转Kubernetes系列4-搭建K8S Dashboard

获取token登录成功:
Windows玩转Kubernetes系列4-搭建K8S Dashboard

点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
美凌格栋栋酱 美凌格栋栋酱
7个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Stella981 Stella981
3年前
SecureCRT的安装与破解(过程很详细!!!)
SecureCRT的安装与破解(过程很详细!!!)使用SecureCRT可以方便用户在windows环境下对linux主机进行管理,这里为大家讲一下SecureCRT的破解方法,仅供大家参考学习:1.首先在本站下载SecureCRT7.3.6最新版。软件分为32位和64位程序,选择系统对应的版本安装securecrt32位:http://w
Stella981 Stella981
3年前
Qt for Android 环境搭建方法
Qt for Android 环境搭建方法第一步、准备所需要的安装包(1)下载qtwindowsopensource5.1.1androidx86win32offline,(不同配置的机型下载不同的版本),下载路径:http://qtproject.org/downloads(https://www.oschi
Stella981 Stella981
3年前
K8S 部署 Web UI
在早期的版本中Kubernetes可以在Dashboard中看到heapster提供的一些图表信息,在后续的版本中会陆续移除掉heapster,现在更加流行的监控工具是prometheus,prometheus是Google内部监控报警系统的开源版本,所以这里的Dashboard 不会看到有图表信息。1.下载官方的yaml文件
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Stella981 Stella981
3年前
Firefox
据说Firefox的官方正式版都是32bit的,意味着我们通常直接去官方下载的Firefox都是32bit.当然,也有64bit的下载包.那么问题来了:如何查看电脑上安装的Firefox是32bit还是64bit呢?查看办法在Firefox地址栏输入about:buildcon
Stella981 Stella981
3年前
SpringBoot系列之@PropertySource读取yaml文件
SpringBoot系列之@PropertySource支持yaml文件读取最近在做实验,想通过@PropertySource注解读取配置文件的属性,进行映射,习惯上用properties都是测试没问题的,偶然换成yaml文件,发现都读取不到属性值因为yaml语法很简洁,比较喜欢写yaml配置文件,很显然,@PropertySource默认不支持ya
Wesley13 Wesley13
3年前
IPFS环境搭建节点安装
ipfs(InterPlanetaryFileSystem,星际文件系统),本文介绍节点软件ipfs环境搭建和使用方法,学习ipfsapi在nodejs代码中访问ipfs网络。一、ipfs节点安装与使用1.1下载节点软件到官网下载windows版的ipfs节点软件:32位(https://
Stella981 Stella981
3年前
Nginx学习
  本人是在32位win7下通过VMware安装64位CentOS6.5。因为WIN7是32位而CentOS是64位,所以在第一次安装CentOS时提示”CPU支持虚拟化技术,但该功能未打开“,此时需要重启电脑进入BIOS打开此项功能的支持。安装好CentOS后就要开始搭建Nginx环境了,Nginx文件可以去官网下载,我下的版本是1.4.5。然后
Easter79 Easter79
3年前
SpringBoot系列之@PropertySource读取yaml文件
SpringBoot系列之@PropertySource支持yaml文件读取最近在做实验,想通过@PropertySource注解读取配置文件的属性,进行映射,习惯上用properties都是测试没问题的,偶然换成yaml文件,发现都读取不到属性值因为yaml语法很简洁,比较喜欢写yaml配置文件,很显然,@PropertySource默认不支持ya