• k8s中subpath的使用


    有两种情况:

    1.做为volumes使用时,subPath代表存储卷的子路径:

    apiVersion: v1
    kind: Pod
    metadata:
      name: testpod0
    spec:
      containers:
      - name: testc
        image: busybox
        command: ["/bin/sleep","10000"]
        volumeMounts:
          - name: data
            mountPath: /opt/data    # 挂载的路径
            subPath: data           # volume的子路径
          - name: data
            mountPath: /opt/model
            subPath: model
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: test-data

    2.作为configmap/secret使用时,subPath代表configmap/secret的子路径:

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: config-test
    data:
      config.ini: "hello"
      config.conf: "nihao"

    单独挂载一个key为文件

    apiVersion: v1
    kind: Pod
    metadata:
      name: testpod
    spec:
      containers:
      - name: testc
        image: busybox
        command: ["/bin/sleep","10000"]
        volumeMounts:
          - name: config-test
            mountPath: /etc/config.ini   # 最终在容器中的文件名
            subPath: config.ini  #要挂载的confmap中的key的名称
      volumes:
        - name: config-test
          configMap:
            name: config-test

    挂载多个key为文件:

    apiVersion: v1
    kind: Pod
    metadata:
      name: testpod2
    spec:
      containers:
      - name: testc
        image: busybox
        command: ["/bin/sleep","10000"]
        volumeMounts:
          - name: config-test
            mountPath: /etc/config.ini   # 最终在容器中的文件名
            subPath: config.ini  #要挂载的confmap中的key的名称
          - name: config-test
            mountPath: /etc/config.conf   # 最终在容器中的文件名
            subPath: config.conf  #要挂载的confmap中的key的名称
      volumes:
        - name: config-test
          configMap:
            name: config-test

    多个container挂载不同的key:

    apiVersion: v1
    kind: Pod
    metadata:
      name: testpod1
    spec:
      containers:
      - name: testc
        imagePullPolicy: Never
        image: busybox
        command: ["/bin/sleep","10000"]
        volumeMounts:
          - name: config-test
            mountPath: /etc/config/config.ini
            subPath: config.ini
      - name: testc1
        imagePullPolicy: Never
        image: busybox
        command: ["/bin/sleep","10000"]
        volumeMounts:
          - name: config-test
            mountPath: /etc/config/config.conf
            subPath: config.conf
      volumes:
        - name: config-test
          configMap:
            name: config-test
            items:
            - key: config.ini
              path: config.ini
            - key: config.conf
              path: config.conf

    摘自

    https://soulchild.cn/1911.html

  • 相关阅读:
    数据表分区, 全新分区
    SSIS基础设计最佳实践
    数据表分区, 普通表转分区表
    关于游标[二]
    弹窗代码汇集
    关于分页显示中的换行显示原理代码
    C# 装箱和拆箱[整理]
    insert into tablename select * from tablename与Select * into tablename from tablename 比较[转]
    SQL Server应用程序中的高级SQL注入
    CHARINDEX使用【转】
  • 原文地址:https://www.cnblogs.com/fengjian2016/p/15935985.html
Copyright © 2020-2023  润新知