Menu Close

7.4.3. Pod 내에서 메모리 요청 및 제한 찾기

Pod 내에서 메모리 요청 및 제한을 동적으로 검색하려는 애플리케이션에서는 Downward API를 사용해야 합니다.

프로세스

  1. MEMORY_REQUESTMEMORY_LIMIT 스탠자를 추가하도록 Pod를 구성합니다.

    apiVersion: v1
    kind: Pod
    metadata:
      name: test
    spec:
      containers:
      - name: test
        image: fedora:latest
        command:
        - sleep
        - "3600"
        env:
        - name: MEMORY_REQUEST 1
          valueFrom:
            resourceFieldRef:
              containerName: test
              resource: requests.memory
        - name: MEMORY_LIMIT 2
          valueFrom:
            resourceFieldRef:
              containerName: test
              resource: limits.memory
        resources:
          requests:
            memory: 384Mi
          limits:
            memory: 512Mi
    1
    이 스탠자를 추가하여 애플리케이션 메모리 요청 값을 검색합니다.
    2
    이 스탠자를 추가하여 애플리케이션 메모리 제한 값을 검색합니다.
  2. Pod를 생성합니다.

    $ oc create -f <file-name>.yaml
  3. 원격 쉘을 사용하여 Pod에 액세스합니다.

    $ oc rsh test
  4. 요청된 값이 적용되었는지 확인합니다.

    $ env | grep MEMORY | sort

    출력 예

    MEMORY_LIMIT=536870912
    MEMORY_REQUEST=402653184

참고

메모리 제한 값은 /sys/fs/cgroup/memory/memory.limit_in_bytes 파일을 통해 컨테이너 내부에서도 확인할 수 있습니다.