helm介绍
helm 是一个包管理工具,类似于 maven管理java项目,npm管理node项目,还有linux操作系统上yum或apt 管理软件一样,helm是专门管理kubernetes应用的
比如想要在k8s中安装nginx 或tomcat, 或mysql,,只需要一个命令既可,当然删除或者查看也是一样, 在k8s中应用非常广泛,使用非常方便
helm官网 helm.sh/
helm安装
因为helm是编写,而go编写的项目利用交叉编译,可以在linux,windows,mac上直接运行,而不是需要再另外安装软件,比如java是需要jdk等 下载地址: github.com/helm/helm/r…
可以看到,目前最新版本是3.6.4 是一个bug修复版本,相对于3.6, 带有新功能的版本是3.7 将于9月8号发布
大部分system使用的架构是amd64,我们在centos7上使用,下载第三个既可
wget https://get.helm.sh/helm-v3.6.3-linux-amd64.tar.gz
tar xf helm-v3.6.3-linux-amd64.tar.gz
cp linux-amd64/helm /use/local/bin/
安装helm后,需要有一个k8s集群,方便其使用,如果没有k8s,等于没有平台 查看版本
[root@k8s-node1 ~]# helm version
WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /root/.kube/config
WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /root/.kube/config
WARNING: "kubernetes-charts-incubator.storage.googleapis.com" is deprecated for "incubator" and will be deleted Nov. 13, 2020.
WARNING: You should switch to "https://charts.helm.sh/incubator" via:
WARNING: helm repo add "incubator" "https://charts.helm.sh/incubator" --force-update
version.BuildInfo{Version:"v3.6.3", GitCommit:"d506314abfb5d21419df8c7e7e68012379db2354", GitTreeState:"clean", GoVersion:"go1.16.5"}
helm仓库
像maven一样,helm在管理应用时也有对应仓库,不然哪里来的应用了,因为google的仓库被强了,而且上一节 version中也可以看到 被弃用了,这里我加一下bitnami的仓库
默认使用的helm官方的 仓库哦,如果网好的伙伴请随意
helm repo add bitnami https://charts.bitnami.com/bitnami
### 搜一下bitnami仓库都有哪些软件了,嘿嘿
helm search repo bitnami
常用的应用几乎都有,是不是很 噢力给 如果想查看应用的详情,请直接去官网哦 bitnami.com/stacks
bitnami/airflow 10.2.7 2.1.2 Apache
bitnami/apache 8.5.10 2.4.48 Chart for
bitnami/concourse 0.1.1 7.3.2 Concourse
bitnami/consul 9.3.0 1.10.1 Highly
bitnami/elasticsearch 15.10.0 7.13.4 A highly
bitnami/etcd 6.3.1 3.5.0 etcd is a
bitnami/external-dns 5.2.2 0.8.0 ExternalDNS
bitnami/fluentd 4.0.4 1.13.2 Fluentd is
bitnami/ghost 14.0.9 4.10.2 A simple,
bitnami/grafana 6.1.5 8.0.6 Grafana is
bitnami/grafana-operator 0.8.2 3.10.3 Kubernetes
bitnami/grafana-tempo 0.2.1 1.0.1 Grafana
bitnami/haproxy 0.2.1 2.4.0 HAProxy is
bitnami/harbor 10.2.6 2.3.1 Harbor is
bitnami/influxdb 2.3.2 2.0.7
bitnami/jasperreports 11.0.0 7.8.0 The
bitnami/jenkins 8.0.8 2.289.3 The leading
bitnami/joomla 10.1.16 3.9.28 PHP content
bitnami/jupyterhub 0.1.12 1.4.2 JupyterHub
bitnami/kafka 13.1.1 2.8.0 Apache
bitnami/keycloak 4.0.3 14.0.0 Keycloak is
bitnami/kiam 0.3.11 3.6.0 kiam is a
bitnami/kibana 8.1.9 7.13.4 Kibana is
bitnami/kong 3.8.0 2.5.0 Kong is a
bitnami/kube-prometheus 6.1.4 0.48.1 kube-
bitnami/kube-state-metrics 2.1.3 2.1.0 kube-state-
bitnami/kubeapps 7.1.8 2.3.3 Kubeapps is
bitnami/kubernetes-event-exporter 1.1.10 0.10.0 This tool
bitnami/kubewatch 3.2.12 0.1.0 Kubewatch
bitnami/logstash 3.6.1 7.13.4 Logstash is
bitnami/magento 18.1.7 2.4.2 A feature-
bitnami/mariadb 9.4.0 10.5.11 Fast,
bitnami/mariadb-cluster 1.0.2 10.2.14 DEPRECATED
bitnami/mariadb-galera 5.11.2 10.5.11 MariaDB
bitnami/memcached 5.13.7 1.6.10 Chart for
bitnami/metrics-server 5.9.1 0.5.0 Metrics
bitnami/minio 7.1.6 2021.6.17 Bitnami
bitnami/mongodb 10.23.6 4.4.7 NoSQL
bitnami/mysql 8.8.1 8.0.26 Chart to
bitnami/nginx 9.4.1 1.21.1 Chart for the nginx server
bitnami/nginx-ingress-controller 7.6.17 0.48.1 Chart for
bitnami/node 15.2.20 14.17.3 Event-
bitnami/node-exporter 2.3.4 1.2.0 Prometheus
bitnami/phpmyadmin 8.2.10 5.1.1 phpMyAdmin is an mysql administration frontend
bitnami/postgresql 10.8.0 11.12.0 Chart for
bitnami/prometheus-operator 0.31.1 0.41.0 DEPRECATED
bitnami/rabbitmq 8.19.0 3.8.19 Open source
bitnami/redis 14.8.6 6.2.5 Open
bitnami/redis-cluster 6.3.1 6.2.5 Open
bitnami/spark 5.7.0 3.1.2 Spark is a
bitnami/spring-cloud-dataflow 3.0.3 2.8.1 Spring
bitnami/tomcat 9.2.18 bitnami/wordpress 11.1.5 5.7.2 Web
bitnami/zookeeper 7.1.1 3.7.0 A
当然了,像仓库这种方便大众的事,阿里云怎么可能没有了,,而且做得也很好哦,不过好像官网页面一直在维护,还有微软维护的仓库
helm repo add aliyun https://apphub.aliyuncs.com/
helm repo add azure https://mirror.azure.cn/kubernetes/charts/
#找相关仓库软件命令如下
helm search repo apphub
helm search repo mirror
helm命令自动补全
使用helm 时可能需要记很多的参数,为了方便,弄一个命令自动补全,方便操作
yum install -y bash-completion
echo "source <(helm completion bash)" >> ~/.bash_profile
helm completion bash > /usr/share/bash-completion/completions/helm