Linux企业运维——Kubernetes(十九)Helm的web UI界面管理-KubeApps


文章目录

  • Linux企业运维——Kubernetes(十九)Helm的web UI界面管理-KubeApps
  • 一、KubeApps安装使用
  • 二、使用KubeApps添加仓库
  • 三、使用KubeApps部署mychart
  • 3.1、部署mychart
  • 3.2、添加ingress配置
  • 3.3、扩容
  • 3.4、版本控制


一、KubeApps安装使用

Kubeapps是Bitnami公司的一个项目,其目的是为Kubernetes的使用者们提供已经打包好的应用仪表盘,它拥有网页界面可以更方便的部署和管理k8s 原生应用。

之前使用Helm部署了多个应用,现在为其配置图形化管理界面

查看kube-system命名空间下所有pod

kubernetes数据库 kubernetes webui_kubernetes数据库


虚拟机server2联通外网,拉取kubeapps配置压缩包并解压缩

kubernetes数据库 kubernetes webui_运维_02


解压kubeapps包,编辑values.yaml变量资源清单文件

kubernetes数据库 kubernetes webui_kubernetes数据库_03


设置镜像仓库

kubernetes数据库 kubernetes webui_kubernetes数据库_04


打开ingress服务(便于后期从集群外部访问),指定hostname

kubernetes数据库 kubernetes webui_容器_05


进入charts/postgresql目录下,编辑values.yaml

kubernetes数据库 kubernetes webui_kubernetes数据库_06


添加仓库地址

kubernetes数据库 kubernetes webui_负载均衡_07


真实主机将kubeapps包发送给server1

kubernetes数据库 kubernetes webui_容器_08


server1加载镜像包

kubernetes数据库 kubernetes webui_kubernetes_09


server1将镜像上传至仓库

kubernetes数据库 kubernetes webui_运维_10


server2切换到kubeapps目录,创建kubeapps命名空间,将kubeapps安装在kubeapps命名空间

kubernetes数据库 kubernetes webui_kubernetes数据库_11


可以看到kubeapp的url,未指定数据库密码会随机生成一个

kubernetes数据库 kubernetes webui_kubernetes数据库_12


查看kubeapps命名空间的所有pod,都处于正常运行状态

kubernetes数据库 kubernetes webui_负载均衡_13


查看kubeapps命名空间的ingress服务,查看详细信息

kubernetes数据库 kubernetes webui_kubernetes_14


查看kubeapps服务的详细信息

kubernetes数据库 kubernetes webui_容器_15


其后端服务访问地址如图所示

kubernetes数据库 kubernetes webui_kubernetes_16


ingress-nginx-controller的外部访问地址为172.25.19.10

kubernetes数据库 kubernetes webui_运维_17


真实主机为kubeapps.westos.org设置域名解析

kubernetes数据库 kubernetes webui_容器_18


真实主机可以ping通kubeapps.westos.org

kubernetes数据库 kubernetes webui_容器_19


每次创建SA,集群会自动为该用户创建token,认证该用户,使用token登陆kubeapps

在kubeapps命名空间下创建serviceaccount,名为kubeapps-operator,创建全局角色绑定,为新建用户在指定命名空间内进行授权

kubernetes数据库 kubernetes webui_负载均衡_20


查看配置

kubernetes数据库 kubernetes webui_负载均衡_21


配置都已经生效,查看secrets中kubeapps-operator-token的详细信息

kubernetes数据库 kubernetes webui_负载均衡_22


复制token

kubernetes数据库 kubernetes webui_kubernetes_23


在web访问页面将复制的token复制进去

kubernetes数据库 kubernetes webui_负载均衡_24


登陆成功

kubernetes数据库 kubernetes webui_kubernetes_25

二、使用KubeApps添加仓库

点击APP Repositories

kubernetes数据库 kubernetes webui_kubernetes数据库_26


点击右上角ADD Repository

kubernetes数据库 kubernetes webui_负载均衡_27


kubeapps结合harbor仓库管理helm应用,根据需要填写或选择参数完成仓库创建

kubernetes数据库 kubernetes webui_kubernetes数据库_28


选择跳过TLS认证,安装部署仓库

kubernetes数据库 kubernetes webui_kubernetes数据库_29


出现如下问题,这是因为没有配置dns解析

kubernetes数据库 kubernetes webui_容器_30

需要添加dns解析来识别仓库reg.westos.org

kubectl -n kube-system edit cm coredns进入coredns添加解析

kubernetes数据库 kubernetes webui_运维_31


在配置文件中添加reg.westos.org的域名解析

kubernetes数据库 kubernetes webui_kubernetes_32


仓库添加成功

kubernetes数据库 kubernetes webui_kubernetes数据库_33

三、使用KubeApps部署mychart

3.1、部署mychart

可以看到自己之前打包部署的mychart

kubernetes数据库 kubernetes webui_负载均衡_34


进入mychart可以选择版本,选择v2版本

kubernetes数据库 kubernetes webui_容器_35


将其交予default命名空间管理

kubernetes数据库 kubernetes webui_kubernetes数据库_36


选择v1版本部署

kubernetes数据库 kubernetes webui_运维_37


可以看到部署成功,已经就绪

kubernetes数据库 kubernetes webui_kubernetes_38


server2查看pod信息可以看到mychart正常运行,测试访问

kubernetes数据库 kubernetes webui_kubernetes数据库_39

3.2、添加ingress配置

在图形管理界面上点击UPGRADE

kubernetes数据库 kubernetes webui_负载均衡_40


在ingress配置里添加域名和路径

kubernetes数据库 kubernetes webui_运维_41


真实主机中也添加域名解析

kubernetes数据库 kubernetes webui_kubernetes数据库_42


测试ping myapp.testos.org,联通正常

kubernetes数据库 kubernetes webui_kubernetes数据库_43


浏览器也可以正常访问

kubernetes数据库 kubernetes webui_kubernetes数据库_44

3.3、扩容

点击UPGRADE再进行扩容,将副本数量增加到3

kubernetes数据库 kubernetes webui_运维_45


可以看到现在有3个pod就绪

kubernetes数据库 kubernetes webui_kubernetes数据库_46


真实主机使用浏览器测试访问,可以看到3个节点轮询应答,负载均衡

kubernetes数据库 kubernetes webui_容器_47


kubernetes数据库 kubernetes webui_kubernetes数据库_48


kubernetes数据库 kubernetes webui_kubernetes数据库_49


server2查看pod信息可以看到正是这3个pod

kubernetes数据库 kubernetes webui_kubernetes数据库_50

3.4、版本控制

还可以进行版本升级,在配置中将标签改为v2

kubernetes数据库 kubernetes webui_负载均衡_51


测试访问,可以看到应答信息变成了v2

kubernetes数据库 kubernetes webui_运维_52


需要版本回滚的话点击ROLLBACK按钮

kubernetes数据库 kubernetes webui_kubernetes数据库_53


目前已经进行了4次改动,这里选择回到第一次的状态

kubernetes数据库 kubernetes webui_容器_54


可以看到变成了v1版本而且是扩容之前的状态

kubernetes数据库 kubernetes webui_运维_55


server2查看pod信息可以看到一个pod在运行,详细信息查看其IP并测试访问,可以看到成功访问,显示v1版本

kubernetes数据库 kubernetes webui_容器_56


点击红色按钮删除application

kubernetes数据库 kubernetes webui_kubernetes_57