代码编织梦想


准备工作:

一、部署 Kubernetes Dashboard web 界面

Kubernetes Dashboard(仪表盘)是一个旨在将通用的基于Web的监控和操作界面加入 Kubernetes 的项目。

1.创建 dashboard-deployment.yaml 配置文件

在 master 上操作

[root@master ~]# vim /etc/kubernetes/dashboard-deployment.yaml 
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: kubernetes-dashboard-latest
  namespace: kube-system
spec:
  replicas: 1
  template:
    metadata:
      labels:
        k8s-app: kubernetes-dashboard
        version: latest
        kubernetes.io/cluster-service: "true"
    spec:
      containers:
      - name: kubernetes-dashboard
        image: docker.io/bestwu/kubernetes-dashboard-amd64:v1.6.3
        imagePullPolicy: IfNotPresent
        resources:
          limits:
            cpu: 100m
            memory: 50Mi
          requests:
            cpu: 100m
            memory: 50Mi
        ports:
        - containerPort: 9090
        args:
        - --apiserver-host=http://192.168.1.1:8080
        livenessProbe:
          httpGet:
            path: /
            port: 9090
          initialDelaySeconds: 30
          timeoutSeconds: 30

在这里插入图片描述
在这里插入图片描述

2.创建 dashboard-service.yaml 配置文件

在 master 上操作

[root@master ~]# vim /etc/kubernetes/dashboard-service.yaml 
apiVersion: v1
kind: Service
metadata:
  name: kubernetes-dashboard
  namespace: kube-system
  labels:
    k8s-app: kubernetes-dashboard
    kubernetes.io/cluster-service: "true"
spec:
  selector:
    k8s-app: kubernetes-dashboard
  ports:
  - port: 80
    targetPort: 9090

在这里插入图片描述
service 的三种端口:

  • port:service 暴露在 cluster ip 上的端口,port 是提供给集群内部客户访问 service 的入口。
  • nodePort:nodePort 是 k8s 提供给集群外部客户访问 service 入口的一种方式。
  • targetPort:targetPort 是 pod 中容器实例上的端口,从 port 和 nodePort 上到来的数据最终经过 kube-proxy 流入到后端 pod 的 targetPort 上进入容器。

总结

  • port 和 nodePort 都是 service 的端口,前者暴露给集群内客户访问服务,后者暴露给集群外客户访问服务。从这两个端口来到的数据都需要经过反向代理 kube-proxy 流入后端 pod 的 targetPod,从而到达 pod 上的容器内。

3.准备 Kubernetes 相关的镜像

node1,node2操作一致

[root@node1 ~]# mkdir /root/k8s
[root@node1 ~]# cd /root/k8s
[root@node1 k8s]# ls
[root@node1 k8s]# ls
docker.io-bestwu-kubernetes-dashboard-amd64-zh.tar  pod-infrastructure.tar			#将这两个软件包上传到该目录
[root@node1 k8s]# docker load -i pod-infrastructure.tar
[root@node1 k8s]# docker load -i docker.io-bestwu-kubernetes-dashboard-amd64-zh.tar		

在这里插入图片描述

4.启动 dashboard 的 deployment 和 service

在 master 上操作

[root@master ~]# kubectl create -f /etc/kubernetes/dashboard-deployment.yaml 
[root@master ~]# kubectl create -f /etc/kubernetes/dashboard-service.yaml

在这里插入图片描述
查看运行结果

[root@master ~]# kubectl get deployment --all-namespaces
[root@master ~]# kubectl get svc --all-namespaces
[root@master ~]# kubectl get pod -o wide --all-namespaces

在这里插入图片描述
查看日志

[root@master ~]# kubectl get pod -n kube-system -o wide
[root@master ~]# kubectl logs kubernetes-dashboard-latest-2915596453-m9wpz -n kube-system		

在这里插入图片描述

5.查看 Kubernetes dashboard web 界面

使用谷歌浏览器访问:http://192.168.1.1:8080/ui
在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/weixin_46902396/article/details/111084486

kubernetes集群搭建-CentOS7-爱代码爱编程

kubernetes集群搭建(kubernetes v1.20.0) 1 . 准备基本环境 1.1 一台或多台安装了以下系统的物理机或者虚拟机 Ubuntu 16.04+Debian 9+CentOS 7Red Hat Enterprise Linux (RHEL) 7Fedora 25+HypriotOS v1.0.1+Flatcar Contai

.NET 5中 Autofac 的使用-爱代码爱编程

DI 依赖注入、IOC 控制反转以及 AOP 切面编程 Autofac 容器 Autofac 是一款.NET IoC 容器 . 它管理类之间的依赖关系, 从而使 应用在规模及复杂性增长的情况下依然可以轻易地修改 . 它的实现方式是将常规的.net类当做 组件 处理. 安装 NuGet 程序包: Autofac 6.0.0创建一个 ContainerB

玩转容器安全三 - Harbor私有镜像仓库-爱代码爱编程

Harbor: https://github.com/goharbor/harbor # Operation System: CentOS 7 # Docker Version: 19.03.13 # Harbor Version: 1.10.6 # Docker-Compose Version: 1.27.4 Harbor的安装与使用 Harb

6-1 Duplicated Words (20分)-爱代码爱编程

软件2019-实验6 6-1 Duplicated Words (20分) This program reads a lot of words, in which may be duplicated words. The program picks out all the duplicated ones and sorts the remainders

7-1 约瑟夫环问题-hebust (20分)-爱代码爱编程

7-1 约瑟夫环问题-hebust (20分) 约瑟夫环问题 约瑟夫环是一个数学的应用问题:已知n个人(以编号a,b,c…分别表示)围坐在一张圆桌周围。从编号为1的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。 输入格式: 固定为2行,第一行为m,第二行为n个人的名称列表

Kubernetes-亲和性调度-爱代码爱编程

亲和性调度 kubernetes提供了一种亲和性调度(Affinity)。它在NodeSelector的基础之上的进行了扩展,可以通过配置的形式,实现优先选择满足条件的Node进行调度,如果没有,也可以调度到不满足条件的节点上,使调度更加灵活。 Affinity主要分为三类: nodeAffinity(node亲和性)∶以node为目标,解决pod可以

Kubernetes-定向调度-爱代码爱编程

pod调度 在默认情况下,一个Pod在哪个Node节点上运行,是由Scheduler组件采用相应的算法计算出来的,这个过程是不受人工控制的。但是在实际使用中,这并不满足的需求,因为很多情况下,我们想控制某些Pod到达某些节点上,那么应该怎么做呢?这就要求了解kubernetes对Pod的调度规则,kubernetes提供了四大类调度方式: 自动调度:运

Kubernetes-容器探测-爱代码爱编程

容器探测 容器探测用于检测容器中的应用实例是否正常工作,是保障业务可用性的一种传统机制。如果经过探测,实例的状态不符合预期,那么kubernetes就会把该问题实例"摘除",不承担业务流量。kubernetes提供了两种探针来实现容器探测,分别是: liveness probes:存活性探针,用于检测应用实例当前是否处于正常运行状态,如果不是,k8s会

Kubernetes-污点和容忍-爱代码爱编程

污点和容忍 污点(Taints) 前面的调度方式都是站在Pod的角度上,通过在Pod上添加属性,来确定Pod是否要调度到指定的Node上,其实我们也可以站在Node的角度上,通过在Node上添加污点属性,来决定是否允许Pod调度过来。 Node被设置上污点之后就和Pod之间存在了一种相斥的关系,进而拒绝Pod调度进来,甚至可以将已经存在的Pod驱逐出去

Kubeedge 1.5 部署指南-爱代码爱编程

Kubeedge 1.5 部署指南 本文介绍了如何在一台ubuntu18.04和一台装有ubuntu20.04的树莓派4B上部署kubeedge1.5的过程。 其中ubuntu作为cloud节点,树莓派4B作为edge节点。 1. 系统配置 1.1 集群环境 主机名系统ip角色负载master-nodeubuntu18.0410.112.55.6

k8s笔记5--k8s常见命令-爱代码爱编程

k8s笔记5--k8s常见命令 1 Basic Commands (Beginner)2 Basic Commands (Intermediate)3 Deploy Commands4 Cluster Management Commands5 Troubleshooting and Debugging Commands6 Advanced Comm