如何创建一个模板依赖另一个模板的头盔图

时间:2019-06-05 09:53:27

标签: kubernetes-helm

我正在尝试创建一个kubernetes图表,该图表根据此处给出的示例创建一个nfs:

https://medium.com/platformer-blog/nfs-persistent-volumes-with-kubernetes-a-case-study-ce1ed6e2c266

与此相关的问题是,它要求我们创建一个服务,然后创建一个持久卷,该持久卷引用该服务的群集ip(直到部署了该服务我才知道。

我最初以为我可以以某种方式使用模板来调用kubectl来查询集群ip,但是据我所知,您不能在头盔模板中运行CLI吗?

如果是这种情况,我真的很难看到头盔的有用性,因为许多设置需要创建一个资源,然后从另一个资源中引用该资源的动态属性?我知道我可以通过将图表分成两部分来解决此问题,但是我对掌舵的理解是,图表应包含部署应用程序功能部分所需的所有内容?

这是我模板中的相关代码段:

apiVersion: v1
kind: Service
metadata:
  name: {{ .Values.prefix }}-{{ .Values.appName }}-nfs
spec:
  ports:
    - name: nfs
      port: 2049
    - name: mountd
      port: 20048
    - name: rpcbind
      port: 111
  selector:
    role: {{ .Values.prefix }}-{{ .Values.appName }}-nfs

---

apiVersion: v1
kind: PersistentVolume
metadata:
  name: {{ .Values.prefix }}-{{ .Values.appName }}-nfs
spec:
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteMany
  nfs:
    server: << nfs.clusterip >>
    path: "/"

注意:持久卷末尾的<< nfs.clusterip >>字段。

0 个答案:

没有答案