一个人如何在头盔图表中创建一个多容器应用程序?

时间:2018-10-03 19:15:21

标签: kubernetes kubernetes-helm

我没有在头盔图上看到任何有关多容器吊舱应用程序的文档。谁能指出如何做到这一点?

类似https://linchpiner.github.io/k8s-multi-container-pods.htmlhttps://www.mirantis.com/blog/multi-container-pods-and-container-communication-in-kubernetes/

所以基本上有一个带有多个容器的豆荚。

头盔图表支持吗?

更新: 现在,我已经可以使用此帮助来部署Pod(最后是Pod定义示例)

https://github.com/helm/charts/blob/master/stable/keycloak/templates/test/test-pod.yaml

但是我如何拥有像增加pod数量这样的副本,就像我启动了deploy.yaml文件一样?

1 个答案:

答案 0 :(得分:4)

应该在模板中支持它,实际上在Pod规范中将模板与多个容器一起使用。该Pod规范还可以包含在其他抽象中,例如Deployments,DaemonSets,StatefulSets等。

示例:

https://github.com/helm/charts/blob/master/stable/mysql/templates/deployment.yaml https://github.com/helm/charts/blob/master/stable/lamp/templates/deployment.yaml

还有其他一些内容:

https://github.com/helm/charts/tree/master/stable

您可以像这样扩展部署副本:

kubectl scale deployment mysql-deployment --replicas=10

有关here

的更多信息

在模板上,您可以在部署规范中指定replicas

例如:

kind: Deployment
apiVersion: extensions/v1beta1
metadata:
  name: my-dep
  namespace: kube-system
  labels:
    k8s-app: my-app
spec:
  replicas: 1   <= here
  selector:
    matchLabels:
      k8s-app: my-app
  template:
    metadata:
      labels:
        k8s-app: my-app
        name: my-app
    spec:
      serviceAccountName: mysa
      terminationGracePeriodSeconds: 60
      containers:
      - image: mycontainer
        name: myappcontainer
        ports:
        - name: http
          containerPort: 80
        - name: admin
          containerPort: 8080
        args:
        - --opt1
        - --opt2
        - --opt3
      - image: mycontainer2
        name: myappcontainer2