Kubernetes14:Helm为了部署像微服务这种的大型项目
创始人
2024-05-31 13:16:13
0

Kubernetes14:Helm介绍(为了部署像微服务这种的大型项目)

1、Helm的引入

(1)之前方式部署应用基本过程

编写yaml文件
  • 1、deployment
kubectl create deployment nginx --image=nginx --dry=run -o yaml > nginx.yaml
  • 2、Service
kubectl expose deployment nginx --port=80 --target-port=80 --type=NodePort
  • 3、Ingress
如果使用之前方式部署单一应用,少数服务的应用,比较合适
部署微服务项目,可能有几十个服务,每个服务都有一套yaml文件,需要维护大量的yaml文件,版本管理特别不方便

2、使用helm可以解决哪些问题?

(1)使用helm可以把这些yaml文件作为一个整体管理

(2)实现yaml高效复用

(3)实现应用级别的版本管理

3、Helm介绍

Helm是一个Kubernetes的包管理工具,就像Linux下的包管理器,如yum/apt等,可以很方便的将之前打包好的yaml文件部署到kubernetes上。

Helm有3个重要概念:

(1)helm:一个命令行客户端工具,主要用于Kubernetes应用chart的创建、打包、发 布和管理。
(2)Chart:应用描述,一系列用于描述k8s资源相关文件的集合。
(3)Release:基于Chart的部署实体,一个chart被Helm运行后将会生成对应的一个 release;将在k8s中创建出真实运行的资源对象。

4、He1m三个重要概念

(1)helm 是一个命令行客户端工具

(2)chart 把yaml打包,是yaml集合

(3)Release 基于chart部署实体,应角级别的版本管理

5、he1m在2019年发布V3版本,和之前版本相比有变化

(1)V3 版本删除Tiller

(2)release 可以在不同命名空间重用

(3)将chart推送到docker镜像仓库中

6、helm架构变化

请添加图片描述
请添加图片描述

安装和配置仓库

1、helm安装

官网下载:
helm.sh请添加图片描述

第一步 下载helm安装压缩文件,上传到1iunx系统中
第二步 解压helm压缩文件,把解压之后helm目录复制到 usr/bin目录下

请添加图片描述

2、配置helm仓库

(1)添加仓库

helm repo add 仓库名 仓库地址请添加图片描述

helm repo add stable http://mirror.azure.cn/kubernetes/charts
helm repo add allyun https://kubernetes.oss-cn-hangzhou.allyuncs.com/charts
helm repo list

可以加两个仓库,但没必要
请添加图片描述

(2)更新仓库

helm repo update

请添加图片描述

(3)删除仓库

helm repo remove aliyun

3、使用helm快速部署应用

第一步、使用命令搜索应用

helm search repo 名称(weave)
请添加图片描述

第二步、 根据搜索内容,选择安装

helm install 安装之后名称 搜索之后应用名称
请添加图片描述

查看安装之后状态

helm list
请添加图片描述

helm status 安装之后名称

请添加图片描述

已经创建好了pods和svc

请添加图片描述

但是没有对外暴露端口
修改service的yaml文件,type改为NodePort

kubectl edit svc ui-weave-scope
修改 请添加图片描述

请添加图片描述

kubectl get svc

请添加图片描述

如何自己创建Chart

1、使用命令创建chart


helm create mychart

请添加图片描述

进入文件夹

请添加图片描述
请添加图片描述

2、在templates.文件夹创建两个yaml文件

先试用 rm -rf * 命令删除该文件中所以的示例文件

deployment.yaml

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

service.yaml

kubectl create deployment web1 --image=nginx为了获取下边的yaml文件需要先将web1真实的创建出来,获取到service.yaml之后再删除(非通用方法)

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

kubectl delete deployment web1

请添加图片描述

3、安装mychart

helm install web1 mychart/
请添加图片描述

4、应用升级-----helm upgrade chart名称

helm upgrade webl mychart/
请添加图片描述

实现yaml高效复用

通过传递参数, 动态渲染模板,yam1内容 动态传入参数生成

请添加图片描述

在chart有values.Iyaml文件, 定义yaml文件全局变量

1、在value.yaml文件中定义变量和值

2、在具体的yaml文件,获取定义变量值

特点:yaml文件大体有几个地方不同的

Image
tag
label
port
replicas

第一步、在values.yaml定义变量和值

请添加图片描述

第二步、在templates的yaml文件使用values.yaml定义变量

请添加图片描述

deplyoment.yaml

请添加图片描述

service.yaml

请添加图片描述

helm install --dry-run web2 mychart/
helm install web2 mychart/

请添加图片描述

相关内容

热门资讯

安卓系统能跑win吗,探索跨平... 你有没有想过,你的安卓手机里能不能装上Windows系统呢?这听起来是不是有点像科幻电影里的情节?别...
安卓车载系统蓝牙设置,畅享智能... 你有没有发现,现在开车的时候,手机和车载系统之间的互动越来越频繁了呢?这不,今天就来给你详细说说安卓...
奥利奥安卓系统,探索新一代智能... 你有没有想过,一块小小的奥利奥饼干竟然能和强大的安卓系统扯上关系?没错,今天就要来聊聊这个跨界组合,...
微信使用安卓系统,功能解析与操... 你有没有发现,现在用微信的人越来越多了呢?尤其是安卓系统的用户,简直就像潮水一样涌来。今天,就让我带...
体验最新原生安卓系统,极致体验... 你有没有想过,手机系统就像是我们生活的调味品,有时候换一种口味,生活都会变得有趣起来呢?最近,我体验...
安卓系统能玩原神,尽享奇幻冒险... 你有没有想过,在安卓系统上也能畅玩《原神》这样的热门游戏呢?没错,就是那个画面精美、角色丰富、玩法多...
安卓写手机银行系统,基于安卓平... 你有没有想过,手机银行系统在我们日常生活中扮演了多么重要的角色呢?每天刷刷手机,就能轻松管理账户,转...
僵尸之夜恐怖安卓系统,揭秘恐怖... 僵尸之夜,恐怖安卓系统来袭!想象一个寂静的夜晚,你正沉浸在美梦中,突然,一阵诡异的铃声打破了夜的宁静...
谷歌框架和安卓系统,构建智能移... 你有没有想过,为什么你的手机那么聪明,能帮你找到路线,还能帮你拍出美美的照片呢?这都要归功于一个超级...
安卓系统和oppo系统哪个流畅... 你有没有想过,手机系统哪个更流畅呢?安卓系统和OPPO系统,这两个名字听起来就让人心动。今天,咱们就...
安卓怎么用微软系统,利用微软系... 你是不是也和我一样,对安卓手机上的微软系统充满了好奇?想象那熟悉的Windows界面在你的安卓手机上...
安卓系统如何安装nfc,安卓系... 你有没有想过,用手机刷公交卡、支付账单,是不是比掏出钱包来得酷炫多了?这就得归功于NFC技术啦!今天...
ios系统可以转安卓,跨平台应... 你有没有想过,你的iPhone手机里的那些宝贝应用,能不能搬到安卓手机上继续使用呢?没错,今天就要来...
iOSapp移植到安卓系统,i... 你有没有想过,那些在iOS上让你爱不释手的app,是不是也能在安卓系统上大放异彩呢?今天,就让我带你...
现在安卓随便换系统,探索个性化... 你知道吗?现在安卓手机换系统简直就像换衣服一样简单!没错,就是那种随时随地、随心所欲的感觉。今天,就...
安卓系统安装按钮灰色,探究原因... 最近发现了一个让人头疼的小问题,那就是安卓手机的安装按钮突然变成了灰色,这可真是让人摸不着头脑。你知...
安卓7.1.1操作系统,系统特... 你知道吗?最近我在手机上发现了一个超级酷的新玩意儿——安卓7.1.1操作系统!这可不是什么小打小闹的...
安卓os系统怎么设置,并使用`... 你有没有发现,你的安卓手机有时候就像一个不听话的小孩子,有时候设置起来真是让人头疼呢?别急,今天就来...
安卓降低系统版本5.1,探索安... 你知道吗?最近安卓系统又来了一次大动作,竟然把系统版本给降到了5.1!这可真是让人有点摸不着头脑,不...
解放安卓系统被保护,解放安卓系... 你有没有想过,你的安卓手机其实可以更加自由地呼吸呢?是的,你没听错,我说的就是解放安卓系统被保护的束...