Helm3

来自linux中国网wiki
Evan讨论 | 贡献2022年8月5日 (五) 03:00的版本 →‎see also
跳到导航 跳到搜索

Helm基础 姐妹篇这个是helm2

helm3

ins

 wget -c https://get.helm.sh/helm-v3.0.3-linux-amd64.tar.gz
    tar xvf  helm-v3.0.3-linux-amd64.tar.gz 
     sudo mv linux-amd64/helm /usr/local/bin/helm


果想要更舒服一些,那么可以添加自动完成的代码:

# source <(helm completion bash)

添加 Chart 仓库

在 Helm 3.0 版本中,默认是不会添加 Chart 仓库,所以这里我们需要手动添加,下面是添加一些常用的 Charts 库,命令如下:

$ helm repo add  elastic    https://helm.elastic.co
$ helm repo add  gitlab     https://charts.gitlab.io
$ helm repo add  harbor     https://helm.goharbor.io
$ helm repo add  bitnami    https://charts.bitnami.com/bitnami
$ helm repo add  incubator  https://kubernetes-charts-incubator.storage.googleapis.com
$ helm repo add  stable     https://kubernetes-charts.storage.googleapis.com

增加完仓库后,需要执行更新命令,将仓库中的信息进行同步:

$ helm repo update

    注意:如果有的仓库不能正常解析,请更换 DNS 地址,在测试过程中,发现有的能正常解析,有的不能。如果还不行,就直接将域名和对应的地址写死在 Host 文件中

Helm 的基本操作

安装应用

通过 Helm 在 Repo 中查询可安装的 nginx

helm search repo nginx
NAME                            	CHART VERSION	APP VERSION         	DESCRIPTION                                       
aliyun/nginx-ingress            	0.9.5        	0.10.2              	An nginx Ingress controller that uses ConfigMap...
aliyun/nginx-lego               	0.3.1        	                    	Chart for nginx-ingress-controller and kube-lego  
apphub/nginx                    	5.1.5        	1.16.1              	Chart for the nginx server                        
apphub/nginx-ingress            	1.30.3       	0.28.0              	An nginx Ingress controller that uses ConfigMap...
apphub/nginx-ingress-controller 	5.3.4        	0.29.0              	Chart for the nginx Ingress controller            
apphub/nginx-lego               	0.3.1        	                    	Chart for nginx-ingress-controller and kube-lego  
apphub/nginx-php                	1.0.0        	nginx-1.10.3_php-7.0	Chart for the nginx php server                    
bitnami/nginx                   	5.1.7        	1.16.1              	Chart for the nginx server         


helm search repo  redis 
NAME                            	CHART VERSION	APP VERSION  	DESCRIPTION                                       
aliyun/redis                    	1.1.15       	4.0.8        	Open source, advanced key-value store. It is of...
aliyun/redis-ha                 	2.0.1        	             	Highly available Redis cluster with multiple se...


安装测试: –namespace:指定安装的 Namespace

  helm install nginx bitnami/nginx -n mydlqcloud 

查看应用状态

 helm status nginx -n mydlqcloud

ins mysql

参考官方 https://helm.sh/docs/intro/quickstart/

 helm repo add stable https://kubernetes-charts.storage.googleapis.com/

$ helm repo update              # Make sure we get the latest list of charts

$ helm install stable/mysql --generate-name

NAME: mysql-1583911857
LAST DEPLOYED: Wed Mar 11 15:31:01 2020
NAMESPACE: default
STATUS: deployed
REVISION: 1
NOTES:
MySQL can be accessed via port 3306 on the following DNS name from within your cluster:
mysql-1583911857.default.svc.cluster.local

To get your root password run:

    MYSQL_ROOT_PASSWORD=$(kubectl get secret --namespace default mysql-1583911857 -o jsonpath="{.data.mysql-root-password}" | base64 --decode; echo)

To connect to your database:

1. Run an Ubuntu pod that you can use as a client:

    kubectl run -i --tty ubuntu --image=ubuntu:16.04 --restart=Never -- bash -il

2. Install the mysql client:

    $ apt-get update && apt-get install mysql-client -y

3. Connect using the mysql cli, then provide your password:
    $ mysql -h mysql-1583911857 -p

To connect to your database directly from outside the K8s cluster:
    MYSQL_HOST=127.0.0.1
    MYSQL_PORT=3306

    # Execute the following command to route the connection:
    kubectl port-forward svc/mysql-1583911857 3306

    mysql -h ${MYSQL_HOST} -P${MYSQL_PORT} -u root -p${MYSQL_ROOT_PASSWORD}

see also

https://helm.sh/docs/intro/install/

Helm - Kubernetes服务编排的利器

安装 Helm3 管理 Kubernetes 应用

【k8s学习】Kubernetes打包工具Helm介绍

k8s之helm安装mysql

helm3 安装及redis部署

helm 安装 MySQL 主从

helm 安装 Redis 3主3从

helm部署redis主从和哨兵模式

helm 安装 RabbitMQ 集群


Kubernetes 集群使用 Helm 搭建 GitLab 并配置 Ingress