github.com/NVIDIA/aistore@v1.3.23-0.20240517131212-7df6609be51d/deploy/dev/k8s/kube_templates/aisproxy_deployment.yml (about)

     1  apiVersion: v1
     2  kind: Pod
     3  metadata:
     4    name: ${POD_NAME}
     5    labels:
     6      app: ais
     7      type: aisproxy
     8  spec:
     9    hostNetwork: true
    10    containers:
    11    - name: aisnode
    12      image: ${DOCKER_IMAGE}
    13      imagePullPolicy: Always
    14      livenessProbe:
    15        httpGet:
    16          path: /v1/health
    17          port: ${PORT}
    18          scheme: ${PROTOCOL}
    19        initialDelaySeconds: 60
    20        periodSeconds: 10
    21      readinessProbe:
    22        httpGet:
    23          path: /v1/health?readiness=true # Don't require the whole cluster to be ready
    24          port: ${PORT}
    25          scheme: ${PROTOCOL}
    26        initialDelaySeconds: 20
    27        failureThreshold: 5
    28        periodSeconds: 10
    29      env:
    30        - name: MY_NODE
    31          valueFrom:
    32            fieldRef:
    33              fieldPath: spec.nodeName
    34        - name: AIS_NODE_ROLE
    35          value: "proxy"
    36      volumeMounts:
    37       - name: aws-credentials
    38         mountPath: /root/.aws/
    39       - name: ais-log
    40         mountPath: /tmp/
    41       - name: ais-tls-certs
    42         mountPath: /var/certs
    43      ports:
    44        - containerPort: ${PORT}
    45      command: ["bash","-c"]
    46      args:
    47        - export PORT=${PORT} &&
    48          export HOSTNAME_LIST=${HOSTNAME_LIST} &&
    49          export AIS_PRIMARY_URL=${AIS_PRIMARY_URL} &&
    50          export AIS_BACKEND_PROVIDERS="${AIS_BACKEND_PROVIDERS}" &&
    51          export AIS_CONF_FILE=/etc/ais/ais.json &&
    52          export AIS_LOCAL_CONF_FILE=/etc/ais/ais_local.json &&
    53          export STATSD_CONF_FILE="/etc/ais/statsd.conf" &&
    54          export COLLECTD_CONF_FILE="/etc/ais/collectd.conf" &&
    55          export INSTANCE=${INSTANCE} &&
    56          export AIS_LOG_DIR=${AIS_LOG_DIR} &&
    57          export AIS_USE_HTTPS=${AIS_USE_HTTPS} &&
    58          export AIS_SKIP_VERIFY_CRT=${AIS_SKIP_VERIFY_CRT} &&
    59          export AIS_SERVER_CRT=${AIS_SERVER_CRT} &&
    60          export AIS_SERVER_KEY=${AIS_SERVER_KEY} &&
    61          source /etc/ais/aisnode_config.sh &&
    62          aisnode -config=/etc/ais/ais.json -local_config=/etc/ais/ais_local.json -role=proxy -ntargets=${TARGET_CNT};
    63    volumes:
    64      - name: collectd-config
    65        configMap:
    66          name: collectd-config
    67      - name: statsd-config
    68        configMap:
    69          name: statsd-config
    70      - name: aws-credentials
    71        secret:
    72          secretName: aws-credentials
    73          optional: true
    74      - name: ais-log
    75        hostPath:
    76          path: /tmp
    77          type: Directory
    78      - name: ais-tls-certs
    79        secret:
    80          secretName: ais-tls-certs
    81          optional: true