33.5. 안전하지 않은 sysctl 활성화


클러스터 관리자는 고성능 또는 실시간 애플리케이션 튜닝과 같은 매우 특별한 상황에 대해 안전하지 않은 특정 sysctl을 허용할 수 있습니다.

안전하지 않은 sysctl을 사용하려면 클러스터 관리자가 노드에서 개별적으로 활성화해야 합니다. 네임스페이스가 지정된 sysctl만 활성화할 수 있습니다.

Security Context Constraints 의forbiddenSysctlsallowedUnsafeSysctls 필드에 sysctls 목록을 지정하여 Pod에서 설정할 수 있는 sysctl을 추가로 제어할 수 있습니다.

  • forbiddenSysctls 옵션은 특정 sysctl을 제외합니다.
  • allowedUnsafeSysctls 옵션은 고성능 또는 실시간 애플리케이션 튜닝과 같은 특정 요구 사항을 제어합니다.
주의

안전하지 않은 상태의 특성으로 인해 안전하지 않은 sysctl을 사용하는 경우 사용자가 위험을 감수하는 경우 컨테이너 동작, 리소스 부족 또는 노드 중단과 같은 심각한 문제가 발생할 수 있습니다.

  1. Node Resources 구성에 설명된 대로 안전하지 않은 sysctl을 적절한 노드 구성 맵 파일의 kubeletArguments 매개변수에 추가합니다.

    예를 들면 다음과 같습니다.

    $ oc edit cm node-config-compute -n openshift-node
    
    ...
        kubeletArguments:
          allowed-unsafe-sysctls: 1
          - "net.ipv4.tcp_keepalive_time"
          - "net.ipv4.tcp_keepalive_intvl"
          - "net.ipv4.tcp_keepalive_probes"
    1
    사용할 안전하지 않은 sysctl을 추가합니다.
  2. restricted SCC의 콘텐츠를 사용하고 안전하지 않은 sysctl을 추가하는 새 SCC를 생성합니다.

    ...
    allowHostDirVolumePlugin: false
    allowHostIPC: false
    allowHostNetwork: false
    allowHostPID: false
    allowHostPorts: false
    allowPrivilegeEscalation: true
    allowPrivilegedContainer: false
    allowedCapabilities: null
    allowedUnsafeSysctls: 1
    - net.ipv4.tcp_keepalive_time
    - net.ipv4.tcp_keepalive_intvl
    - net.ipv4.tcp_keepalive_probes
    ...
    metadata:
      name: restricted-sysctls 2
    ...
    1
    사용할 안전하지 않은 sysctl을 추가합니다.
    2
    SCC의 새 이름을 지정합니다.
  3. Pod ServiceAccount에 대한 새 SCC 액세스 권한을 부여합니다.

    $ oc adm policy add-scc-to-user restricted-sysctls -z default -n your_project_name
  4. Pod의 DeploymentConfig에 안전하지 않은 sysctl을 추가합니다.

    kind: DeploymentConfig
    
    ...
      template:
        ...
        spec:
          containers:
          ...
          securityContext:
            sysctls:
            - name: net.ipv4.tcp_keepalive_time
              value: "300"
            - name: net.ipv4.tcp_keepalive_intvl
              value: "20"
            - name: net.ipv4.tcp_keepalive_probes
              value: "3"
  5. 노드 서비스를 다시 시작하여 변경 사항을 적용합니다.

    # systemctl restart atomic-openshift-node
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.