Helm是Kubernetes的包管理器。借助Helm,您可以非常方便地将应用程序,工具和数据库(如MongoDB,PostgreSQL,WordPress和Apache Spark)部署到您自己的Kubernetes集群中。以下简要介绍如何将Helm用于IBM Cloud Container服务。
“Helm帮助您管理Kubernetes应用。Helm Charts帮助您定义,安装和升级最复杂的Kubernetes应用。Chart很容易实现应用的创建,版本控制,共享和发布,所以请开始使用Helm并停止疯狂地复制和粘贴。最新版本的Helm由CNCF维护。”
您可以通过调用“helm install stable / mongodb”命令来轻松地安装Kubernetes应用。您也可以在安装它们之前通过YAML配置文件进行配置。
Kubernetes社区提供了stable Helm Chart的类目。另外,IBM还为Db2,MQ等提供了charts。
下面是如何在IBM Cloud上将MongoDB部署到Kubernetes 的简单示例。
首先,您需要针对您的Kubernetes集群配置相应的Bluemix CLI,并且您需要在开发机器上安装Helm。
bx login -a https://api.ng.bluemix.net
bx target --cf
bx cs init
bx cs cluster-config mycluster
set environment variable: export KUBECONFIG=...
bx cr login
helm init
helm repo add stable https://kubernetes-charts.storage.googleapis.com/
接下来,您可以使用以下命令安装Kubernetes应用程:
helm install --name my-tag stable/mongodb
如果稍后您想删除所有内容,请运行“helm delete my-tag”。
要找出IP地址和端口,运行这些命令:
bx cs workers mycluster
kubectl get svc
kubectl get svc my-service
如果你有一个付费帐户,以下是您需要做的。
免费帐户不支持持久卷。作为解决方法(不是用于生产),您可以在工作节点上使用磁盘空间。在MongoDB的config.yaml中添加以下内容,然后运行'kubectl create -f config.yaml'。
kind: PersistentVolume
apiVersion: v1
metadata:
name: mongo-simple-mongodb
namespace: default
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/tmp/data"
在这之后,您可以在Kubernetes管理面板(“kubectl proxy”)上看到正在运行的一切内容。