首页 网维知识库 k8s实战之理解helm

k8s实战之理解helm

helm V3的特性: 架构改变,去掉Tiller,直接helm通过kubeconfig连接apiserver  release名称可以在不同命令空间重用 chart支持…

k8s实战之理解helm插图

helm V3的特性:

  1. 架构改变,去掉Tiller,直接helm通过kubeconfig连接apiserver 
  2. release名称可以在不同命令空间重用
  3. chart支持放到docker镜像仓库

K8S部署一个应用的流程如下

编写 yaml :deployment service ingress

1.0创建 deployment模板

kubectl   create  deployment  nginx  --image=nginx   --dry-run  -o  yaml  >  deployment.yaml

1.1启动nginx pod

kubectl  apply  -f  deployment.yaml

1.2检查pod服务

kubectl get pods

k8s实战之理解helm插图1

2.0创建service资源

kubectl expose  deployment  nginx  --port=80  --target-port=80  --type=NodePort --dry-run -o yaml > service.yaml

2.1.启动service服务

kubectl apply  -f  service.yaml

2.2检查service端口

kubectl get svc

k8s实战之理解helm插图2

3.0访问该nginx服务

其中一个node节点ip+31190端口

k8s实战之理解helm插图3

kubectl describe  pod   `web-dc77dd8db-7r8k5`    

有问题查看构建镜像的构建

helm  解决了如下管理应用的问题
1. 如何将这些yaml作为一个整体管理?
2. 这些yanl文件如何高效复用?
3. 不支持应用级别的版本管理

开始实战

wget      http://120.78.77.38/file/helm-v3.0.0-linux-amd64.tar.gz
#也可以去官网下载
 tar -xf  helm-v3.0.0-linux-amd64.tar.gz   && cd  linux-amd64
 mv  helm   /usr/bin/     #将helm二进制文件拷贝到宿主机/bin下

k8s实战之理解helm插图4

配置helm微软源地址

helm  repo  add  stable  http://mirror.azure.cn/kubernetes/charts/

检查配置源地址

helm  repo list

通过helm安装一个k8s-ui

1.通过helm安装软件
helm    search  repo  weave   #去仓库中查找weave的程序包

k8s实战之理解helm插图5

 helm    install  ui  stable/weave-scope   #安装

k8s实战之理解helm插图6

 kubectl  get pods   检查

k8s实战之理解helm插图7

k8s实战之理解helm插图8

2.修改配置文件,并访问

ClusterIP改成 NodePort

 kubectl  edit svc   ui-weave-scope

k8s实战之理解helm插图9

kubectl get  svc  #可以看到暴露的端口

k8s实战之理解helm插图10

http://192.168.106.103:32055/

k8s实战之理解helm插图11

创建一个mychart包管理模板

helm create  mychart

k8s实战之理解helm插图12

#删除templates/目录下的文件/将之前nginx的deployment和service yaml文件拷贝过来
rm  -rf   /templates/*
mv  /root/deployment.yaml   ./ 
mv  /root/service.yaml   ./ 

k8s实战之理解helm插图13

kubectl delete  svc  web  #删除之前的nginx  svc
kubectl delete  deployment  web  #删除之前的nginx  pod
cd  /root
helm  install  web  mychart/

k8s实战之理解helm插图14

k8s实战之理解helm插图15

执行完会自动创建deployment和service

修改更新helm

helm   upgrade web  mychart

helm   list  检测服务

k8s实战之理解helm插图16

通过修改helm全局变量模板deployment/service关键信息创建应用

# vim  values.yaml

replicaCount: 1

image: zhangfan5391621/java-demo
tag: latest

label: java-demo

port: 8080

修改deployment.yaml(关键信息为变量定义信息)

# vim  deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: {{  .Release.Name }}-dp
spec:
  replicas: {{ .Values.replicas }}
  selector:
    matchLabels:
      app: {{ .Values.label }}
  template:
    metadata:
      labels:
        app: {{ .Values.label }}
    spec:
      containers:
      - image: {{ .Values.image }}:{{ .Values.tag }}
        name: nginx

修改service.yaml(关键信息为变量定义信息)

# vim  service.yaml

apiVersion: v1
kind: Service
metadata:
  name: {{ .Release.Name }}-svc
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort:  {{ .Values.port }}
  selector:
    app: {{ .Values.label }}
  type: NodePort
helm  install   --dry-run web1  mychart/    #检测配置变量是否正确生效

k8s实战之理解helm插图17

helm install web1 mychart/ 创建应用

  • 通过定义变量成功创建了应用

k8s实战之理解helm插图18
– 查看helm创建的应用

k8s实战之理解helm插图19

helm 扩容

helm  upgraded  web1  --set  replicas=3  mychart/   #扩容副本3个

回滚

helm    rollback    web1   1    #将web1回滚到第一个版本
免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

作者: 3182235786a

为您推荐

Windows系统怎么保持远程桌面长时间链接不会自动断开呢?

Windows系统怎么保持远程桌面长时间链接不会自动断开呢?

大家经常会遇到正在远程桌面连接如果不进行一些操作,过上个几分钟一会儿之后远程桌面连接就会需要登录,有时还是直接断开需要重...
Win11预览版 Builds 22572.100更新补丁KB5012817发布(附更新修复内容汇总)

Win11预览版 Builds 22572.100更新补丁KB5012817发布(附更新修复内容汇总)

据系统之家小编了解,微软公司于今日凌晨面向Windows预览频道发布了新的Win11 KB5012817补丁,内部版本2...
Win11预览版全新标签式文件资源管理器上手体验:快速切换窗口,还可以滚动标签

Win11预览版全新标签式文件资源管理器上手体验:快速切换窗口,还可以滚动标签

据 Windows Latest 报道,如果你是众多要求微软为文件资源管理器添加标签页的用户之一,现在终于等到了好消息。...
微软 Win11 22H2“太阳谷 2”重大版本将全面改造升级传统经典 UI

微软 Win11 22H2“太阳谷 2”重大版本将全面改造升级传统经典 UI

据 Windows Latest 报道,Windows 11 太阳谷 2 更新预计将对 UI 进行大修,并在 WinUI...
电脑升级win11后怎么退回win10?win11退回win10系统操作方法

电脑升级win11后怎么退回win10?win11退回win10系统操作方法

方法一 1.当我们升级win11后需要退回win10系统时,首先进入开始菜单页面,找到【设置】。 2.在设置的操作页面中...

发表回复

返回顶部