검색

3.3. CLI와 함께 피어 Pod를 사용하여 OpenShift 샌드박스 컨테이너 워크로드 배포

download PDF

CLI를 사용하여 OpenShift 샌드박스 컨테이너 워크로드를 배포할 수 있습니다. 먼저 OpenShift 샌드박스 컨테이너 Operator를 설치한 다음 KataConfig 사용자 지정 리소스를 생성해야 합니다. 샌드박스 컨테이너에 워크로드를 배포할 준비가 되면 워크로드 YAML 파일에 kata-remote-ccruntimeClassName 으로 추가해야 합니다.

3.3.1. CLI를 사용하여 OpenShift 샌드박스 컨테이너 Operator 설치

Red Hat OpenShift CLI를 사용하여 OpenShift 샌드박스 컨테이너 Operator를 설치할 수 있습니다.

사전 요구 사항

  • Red Hat OpenShift 4.13이 클러스터에 설치되어 있습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • cluster-admin 역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
  • OpenShift 샌드박스 컨테이너 카탈로그를 구독하고 있습니다.

    참고

    OpenShift 샌드박스 컨테이너 카탈로그를 구독하면 openshift-sandboxed-containers-operator 네임스페이스에서 OpenShift 샌드박스 컨테이너 Operator에 액세스할 수 있습니다.

절차

  1. OpenShift 샌드박스 컨테이너 Operator의 Namespace 오브젝트를 생성합니다.

    1. 다음 매니페스트가 포함된 Namespace 오브젝트 YAML 파일을 생성합니다.

      apiVersion: v1
      kind: Namespace
      metadata:
        name: openshift-sandboxed-containers-operator
    2. Namespace 오브젝트를 생성합니다.

      $ oc create -f Namespace.yaml
  2. OpenShift 샌드박스 컨테이너 Operator의 OperatorGroup 오브젝트를 생성합니다.

    1. 다음 매니페스트가 포함된 OperatorGroup 오브젝트 YAML 파일을 생성합니다.

      apiVersion: operators.coreos.com/v1
      kind: OperatorGroup
      metadata:
        name: openshift-sandboxed-containers-operator
        namespace: openshift-sandboxed-containers-operator
      spec:
        targetNamespaces:
        - openshift-sandboxed-containers-operator
    2. OperatorGroup 개체를 생성합니다.

      $ oc create -f OperatorGroup.yaml
  3. Subscription 오브젝트를 생성하여 네임스페이스 에서 OpenShift 샌드박스 컨테이너 Operator를 서브스크립션합니다.

    1. 다음 매니페스트가 포함된 Subscription 오브젝트 YAML 파일을 생성합니다.

      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: openshift-sandboxed-containers-operator
        namespace: openshift-sandboxed-containers-operator
      spec:
        channel: stable
        installPlanApproval: Automatic
        name: sandboxed-containers-operator
        source: redhat-operators
        sourceNamespace: openshift-marketplace
        startingCSV: sandboxed-containers-operator.v1.4.1
    2. Subscription 오브젝트를 생성합니다.

      $ oc create -f Subscription.yaml

OpenShift 샌드박스 컨테이너 Operator가 클러스터에 설치되었습니다.

참고

위에 나열된 모든 오브젝트 파일 이름은 제안 사항입니다. 다른 이름을 사용하여 오브젝트 YAML 파일을 생성할 수 있습니다.

검증

  • Operator가 올바르게 설치되었는지 확인합니다.

    $ oc get csv -n openshift-sandboxed-containers-operator

    출력 예

    NAME                             DISPLAY                                  VERSION  REPLACES     PHASE
    openshift-sandboxed-containers   openshift-sandboxed-containers-operator  1.4.1    1.4.0        Succeeded

3.3.2. CLI를 사용하여 AWS의 피어 Pod 설정

AWS에서 사용할 피어 Pod를 설정하려면 시크릿 오브젝트, AMI(AWS 이미지 VM) 및 피어 포드 ConfigMap을 생성해야 합니다.

AWS의 피어 Pod를 설정한 후에도 피어 Pod를 사용하여 OpenShift 샌드박스 컨테이너를 배포할 KataConfig CR(사용자 정의 리소스)을 계속 생성해야 합니다.

사전 요구 사항

  • 클러스터에 Red Hat OpenShift 4.13을 설치했습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • cluster-admin 역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
  • OpenShift 샌드박스 컨테이너 Operator가 설치되어 있습니다.

3.3.2.1. CLI를 사용하여 AWS의 보안 오브젝트 생성

AWS 액세스 키를 설정하고 secret 오브젝트에서 네트워크를 구성합니다. secret 오브젝트는 Pod VM 이미지를 생성하고 피어 Pod에서 사용하는 데 사용됩니다.

AWS의 보안 오브젝트를 생성할 때 특정 환경 값을 설정해야 합니다. 보안 오브젝트를 생성하기 전에 이러한 값 중 일부를 검색할 수 있습니다. 그러나 다음과 같은 값을 준비해야 합니다.

  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY

절차

  1. secret 오브젝트에 필요한 매개변수 값을 수집합니다. 각 값을 적어 둡니다.

    1. 인스턴스 ID를 검색합니다.

      $ INSTANCE_ID=$(oc get nodes -l 'node-role.kubernetes.io/worker' -o jsonpath='{.items[0].spec.providerID}' | sed 's#[^ ]*/##g')

      이 값은 보안 오브젝트 자체에 필요하지 않지만 secret 오브젝트의 다른 값을 검색하는 데 사용됩니다.

    2. AWS 리전을 검색합니다.

      $ AWS_REGION=$(oc get infrastructure/cluster -o jsonpath='{.status.platformStatus.aws.region}') && echo "AWS_REGION: \"$AWS_REGION\""
    3. AWS 서브넷 ID를 검색합니다.

      $ AWS_SUBNET_ID=$(aws ec2 describe-instances --instance-ids ${INSTANCE_ID} --query 'Reservations[*].Instances[*].SubnetId' --region ${AWS_REGION} --output text) && echo "AWS_SUBNET_ID: \"$AWS_SUBNET_ID\""
    4. AWS VPC ID를 검색합니다.

      $ AWS_VPC_ID=$(aws ec2 describe-instances --instance-ids ${INSTANCE_ID} --query 'Reservations[*].Instances[*].VpcId' --region ${AWS_REGION} --output text) && echo "AWS_VPC_ID: \"$AWS_VPC_ID\""
    5. AWS 보안 그룹 ID를 검색합니다.

      $ AWS_SG_IDS=$(aws ec2 describe-instances --instance-ids ${INSTANCE_ID} --query 'Reservations[*].Instances[*].SecurityGroups[*].GroupId' --region ${AWS_REGION} --output text)
      && echo "AWS_SG_IDS: \"$AWS_SG_IDS\""
  2. 다음 매니페스트를 사용하여 YAML 파일을 생성합니다.

    apiVersion: v1
    kind: Secret
    metadata:
      name: peer-pods-secret
      namespace: openshift-sandboxed-containers-operator
    type: Opaque
    stringData:
      AWS_ACCESS_KEY_ID: "<enter value>" 1
      AWS_SECRET_ACCESS_KEY: "<enter value>" 2
      AWS_REGION: "<enter value>" 3
      AWS_SUBNET_ID: "<enter value>" 4
      AWS_VPC_ID: "<enter value>" 5
      AWS_SG_IDS: "<enter value>" 6
    1
    시작하기 전에 준비한 AWS_ACCESS_KEY_ID 값을 입력합니다.
    2
    시작하기 전에 준비한 AWS_SECRET_ACCESS_KEY 값을 입력합니다.
    3
    검색한 AWS_REGION 값을 입력합니다.
    4
    검색한 AWS_SUBNET_ID 값을 입력합니다.
    5
    검색한 AWS_VPC_ID 값을 입력합니다.
    6
    검색한 AWS_SG_IDS 값을 입력합니다.
  3. 보안 오브젝트를 적용합니다.

    $ oc apply -f peer-pods-secret.yaml

secret 오브젝트가 적용됩니다.

3.3.2.2. CLI를 사용하여 AWS VM 이미지(AMI) 생성

AWS에서 피어 Pod를 사용하여 OpenShift 샌드박스 컨테이너를 실행하려면 먼저 AWS 계정 및 리소스를 사용하여 RHEL AMI를 생성해야 합니다.

절차

  1. 다음 K8s 작업을 실행하여 이미지를 생성합니다.

    $ oc apply -f https://raw.githubusercontent.com/openshift/sandboxed-containers-operator/peer-pods-tech-preview/hack/aws-image-job.yaml
    참고

    이 이미지는 OpenShift 샌드박스 컨테이너에서 관리되지 않습니다. 필요한 경우 AWS 웹 콘솔 또는 AWS CLI 툴을 사용하여 삭제할 수 있습니다.

  2. 작업이 완료될 때까지 기다립니다.

    $ oc wait --for=condition=complete job.batch/aws-image-creation --timeout=7m -n openshift-sandboxed-containers-operator

이미지가 생성되면 피어-pod ConfigMap을 사용하여 이미지를 설정해야 합니다.

3.3.2.3. CLI를 사용하여 AWS의 피어 Pod ConfigMap 생성

AWS용 ConfigMap을 생성할 때 AMI ID를 설정해야 합니다. ConfigMap을 생성하기 전에 이 값을 검색할 수 있습니다.

절차

  1. AMI ID를 검색합니다. 나중에 값을 저장하기 위해 해당 값을 저장해야 합니다.

    $ PODVM_AMI_ID=$(aws ec2 describe-images --query "Images[*].[ImageId]" --filters "Name=name,Values=peer-pod-ami" --region ${AWS_REGION} --output text) && echo "PODVM_AMI_ID: \"$PODVM_AMI_ID\""
  2. 다음 매니페스트를 사용하여 YAML 파일을 생성합니다.

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: peer-pods-cm
      namespace: openshift-sandboxed-containers-operator
    data:
      CLOUD_PROVIDER: "aws"
      VXLAN_PORT: "9000"
      PODVM_INSTANCE_TYPE: "t3.medium"
      PROXY_TIMEOUT: "5m"
      PODVM_AMI_ID: "<enter value>" 1
    1
    검색한 AMI ID 값을 입력합니다.
  3. ConfigMap을 배포합니다.

    $ oc apply -f peer-pods-cm.yaml

ConfigMap이 배포되었습니다. KataConfig CR을 생성하면 AWS에서 피어 Pod를 사용하여 OpenShift 샌드박스 컨테이너를 실행할 수 있습니다.

3.3.3. CLI를 사용하여 Azure의 피어 Pod 설정

Microsoft Azure에서 사용할 피어 Pod를 설정하려면 시크릿 오브젝트, Azure 이미지 VM, 피어 포드 ConfigMap 및 SSH 키 시크릿 오브젝트를 생성해야 합니다.

Azure의 피어 Pod를 설정한 후에도 피어 Pod를 사용하여 OpenShift 샌드박스 컨테이너를 배포하려면 KataConfig CR(사용자 정의 리소스)을 생성해야 합니다.

사전 요구 사항

  • 클러스터에 Red Hat OpenShift 4.13을 설치했습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • cluster-admin 역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
  • OpenShift 샌드박스 컨테이너 Operator가 설치되어 있습니다.

3.3.3.1. CLI를 사용하여 Azure의 보안 오브젝트 생성

Azure 액세스 키를 설정하고 시크릿 오브젝트에서 네트워크를 구성합니다. secret 오브젝트는 Pod VM 이미지를 생성하고 피어 Pod에서 사용하는 데 사용됩니다.

Azure의 보안 오브젝트를 생성할 때 특정 환경 값을 설정해야 합니다. 보안 오브젝트를 생성하기 전에 이러한 값 중 일부를 검색할 수 있습니다. 그러나 다음과 같은 값을 준비해야 합니다.

  • AZURE_CLIENT_ID
  • AZURE_CLIENT_SECRET
  • AZURE_TENANT_ID

절차

  1. 보안 오브젝트에 대한 추가 매개변수 값을 수집합니다. 각 값을 적어 둡니다.

    1. 서브스크립션 ID를 검색합니다.

      $ AZURE_SUBSCRIPTION_ID=$(az account list --query "[?isDefault].id" -o tsv) && echo "AZURE_SUBSCRIPTION_ID: \"$AZURE_SUBSCRIPTION_ID\""
    2. 리소스 그룹을 검색합니다.

      $ AZURE_RESOURCE_GROUP=$(oc get infrastructure/cluster -o jsonpath='{.status.platformStatus.azure.resourceGroupName}') && echo "AZURE_RESOURCE_GROUP: \"$AZURE_RESOURCE_GROUP\""
    3. Azure 리전을 검색합니다.

      $ AZURE_REGION=$(az group show --resource-group ${AZURE_RESOURCE_GROUP} --query "{Location:location}" --output tsv) && echo "AZURE_REGION: \"$AZURE_REGION\""
  2. 다음 매니페스트를 사용하여 YAML 파일을 생성합니다.

    apiVersion: v1
    kind: Secret
    metadata:
      name: peer-pods-secret
      namespace: openshift-sandboxed-containers-operator
    type: Opaque
    stringData:
      AZURE_CLIENT_ID: "<enter value>" 1
      AZURE_CLIENT_SECRET: "<enter value>" 2
      AZURE_TENANT_ID: "<enter value>" 3
      AZURE_SUBSCRIPTION_ID: "<enter value>" 4
      AZURE_REGION: "<enter value>" 5
      AZURE_RESOURCE_GROUP: "<enter value>" 6
    1
    시작하기 전에 준비한 AZURE_CLIENT_ID 값을 입력합니다.
    2
    시작하기 전에 준비한 AZURE_CLIENT_SECRET 값을 입력합니다.
    3
    시작하기 전에 준비한 AZURE_TENANT_ID 값을 입력합니다.
    4
    검색한 AZURE_SUBSCRIPTION_ID 값을 입력합니다.
    5
    검색한 AZURE_REGION 값을 입력합니다.
    6
    검색한 AZURE_RESOURCE_GROUP 값을 입력합니다.
  3. 보안 오브젝트를 적용합니다.

    $ oc apply -f peer-pods-secret.yaml

secret 오브젝트가 적용됩니다.

3.3.3.2. CLI를 사용하여 Azure VM 이미지 생성

Azure에서 피어 Pod를 사용하여 OpenShift 샌드박스 컨테이너를 실행하려면 먼저 Azure 계정 및 리소스를 사용하여 Azure용 RHEL 이미지를 생성해야 합니다.

절차

  1. 다음 K8s 작업을 실행하여 이미지를 생성합니다.

    $ oc apply -f https://raw.githubusercontent.com/openshift/sandboxed-containers-operator/peer-pods-tech-preview/hack/azure-image-job.yaml
    참고

    이 이미지는 OpenShift 샌드박스 컨테이너에서 관리되지 않습니다. 필요한 경우 Azure 웹 콘솔 또는 Azure CLI 도구를 사용하여 삭제할 수 있습니다.

  2. 작업이 완료될 때까지 기다립니다.

    $ oc wait --for=condition=complete job.batch/azure-image-creation --timeout=7m -n openshift-sandboxed-containers-operator

이미지가 생성되면 피어-pod ConfigMap을 사용하여 이미지를 설정해야 합니다.

3.3.3.3. CLI를 사용하여 Azure용 피어 Pod ConfigMap 생성

Azure용 ConfigMap을 생성할 때 특정 구성 값을 설정해야 합니다. ConfigMap을 생성하기 전에 이러한 값을 검색할 수 있습니다.

절차

  1. Azure 피어 포드 ConfigMap의 구성 값을 수집합니다. 각 값을 적어 둡니다.

    1. Azure 이미지 ID를 검색합니다.

      $ AZURE_IMAGE_ID=$(az image list --resource-group ${AZURE_RESOURCE_GROUP} --query "[].{Id: id} | [? contains(Id, 'peer-pod-vmimage')]" --output tsv) && echo "AZURE_IMAGE_ID: \"$AZURE_IMAGE_ID\""
    2. Azure VNet 이름을 검색합니다.

      $ AZURE_VNET_NAME=$(az network vnet list --resource-group ${AZURE_RESOURCE_GROUP} --query "[].{Name:name}" --output tsv)

      이 값은 ConfigMap에 필요하지 않지만 Azure 서브넷 ID를 검색하는 데 사용됩니다.

    3. Azure 서브넷 ID를 검색합니다.

      $ AZURE_SUBNET_ID=$(az network vnet subnet list --resource-group ${AZURE_RESOURCE_GROUP} --vnet-name $AZURE_VNET_NAME --query "[].{Id:id} | [? contains(Id, 'worker')]" --output tsv) && echo "AZURE_SUBNET_ID: \"$AZURE_SUBNET_ID\""
    4. Azure 네트워크 보안 그룹(NSG) ID를 검색합니다.

      $ AZURE_NSG_ID=$(az network nsg list --resource-group ${AZURE_RESOURCE_GROUP} --query "[].{Id:id}" --output tsv) && echo "AZURE_NSG_ID: \"$AZURE_NSG_ID\""
  2. 다음 매니페스트를 사용하여 YAML 파일을 생성합니다.

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: peer-pods-cm
      namespace: openshift-sandboxed-containers-operator
    data:
      CLOUD_PROVIDER: "azure"
      VXLAN_PORT: "9000"
      AZURE_INSTANCE_SIZE: "Standard_B2als_v2"
      AZURE_SUBNET_ID: "<enter value>" 1
      AZURE_NSG_ID: "<enter value>" 2
      AZURE_IMAGE_ID: "<enter value>" 3
      PROXY_TIMEOUT: "5m"
      DISABLECVM: "true"
    1
    검색한 AZURE_SUBNET_ID 값을 입력합니다.
    2
    검색한 AZURE_NSG_ID 값을 입력합니다.
    3
    검색한 AZURE_IMAGE_ID 값을 입력합니다.
  3. ConfigMap을 배포합니다.

    $ oc apply -f peer-pods-cm.yaml

ConfigMap이 배포되었습니다.

3.3.3.4. CLI를 사용하여 Azure용 SSH 키 시크릿 오브젝트 생성

Azure에서 피어 Pod를 사용하려면 SSH 키를 생성하고 SSH 키 시크릿 오브젝트를 생성해야 합니다.

절차

  1. SSH 키를 생성합니다.

    $ ssh-keygen -f ./id_rsa -N ""
  2. SHH 시크릿 오브젝트를 생성합니다.

    $ oc create secret generic ssh-key-secret -n openshift-sandboxed-containers-operator --from-file=id_rsa.pub=./id_rsa.pub --from-file=id_rsa=./id_rsa

SSH 키가 생성되고 SSH 키 시크릿 오브젝트가 생성됩니다. KataConfig CR을 생성하면 Azure에서 피어 Pod를 사용하여 OpenShift 샌드박스 컨테이너를 실행할 수 있습니다.

3.3.4. CLI를 사용하여 KataConfig 사용자 지정 리소스 생성

노드에 kata-remote-cc 를 설치하려면 하나의 KataConfig CR(사용자 정의 리소스)을 생성해야 합니다. KataConfig CR을 생성하면 OpenShift 샌드박스 컨테이너 Operator가 다음을 수행합니다.

  • RHCOS 노드에 QEMU 및 kata-containers 와 같은 필요한 RHCOS 확장을 설치합니다.
  • CRI-O 런타임이 올바른 런타임 처리기로 구성되었는지 확인합니다.
  • 기본 구성을 사용하여 kata-remote-cc 라는 RuntimeClass CR을 생성합니다. 이를 통해 사용자는 RuntimeClassName 필드에서 CR을 참조하여 kata-remote-cc 를 런타임으로 사용하도록 워크로드를 구성할 수 있습니다. 이 CR은 런타임의 리소스 오버헤드도 지정합니다.
참고

피어 Pod의 Kata는 기본적으로 모든 작업자 노드에 설치됩니다. 특정 노드에서만 kata-remote-cc 를 설치하려면 해당 노드에 라벨을 추가한 다음 KataConfig CR에 레이블을 생성할 때 정의할 수 있습니다.

사전 요구 사항

  • 클러스터에 Red Hat OpenShift 4.13을 설치했습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • cluster-admin 역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
  • OpenShift 샌드박스 컨테이너 Operator가 설치되어 있습니다.
중요

KataConfig CR을 생성하면 작업자 노드가 자동으로 재부팅됩니다. 재부팅하는 데 10분에서 60분 이상 걸릴 수 있습니다. 재부팅 시간을 방해하는 요소는 다음과 같습니다.

  • 더 많은 수의 작업자 노드가 있는 대규모 Red Hat OpenShift 배포.
  • BIOS 및 iPXE 유틸리티 활성화
  • SSD가 아닌 하드 디스크 드라이브에 배포합니다.
  • 가상 노드가 아닌 베어 메탈과 같은 물리적 노드에 배포.
  • 느린 CPU 및 네트워크

절차

  1. 다음 매니페스트를 사용하여 YAML 파일을 생성합니다.

    apiVersion: kataconfiguration.openshift.io/v1
    kind: KataConfig
    metadata:
      name: cluster-kataconfig
    spec:
      enablePeerPods: true
      logLevel: info
  2. (선택 사항) 선택한 노드에서만 kata-remote-ccRuntimeClass 로 설치하려면 매니페스트에 라벨이 포함된 YAML 파일을 생성합니다.

    apiVersion: kataconfiguration.openshift.io/v1
    kind: KataConfig
    metadata:
      name: cluster-kataconfig
    spec:
      enablePeerPods: true
      logLevel: info
      kataConfigPoolSelector:
        matchLabels:
          <label_key>: '<label_value>' 1
    1
    kataConfigPoolSelector 의 라벨은 단일 값만 지원합니다. nodeSelector 구문이 지원되지 않습니다.
  3. KataConfig 리소스를 생성합니다.

    $ oc create -f cluster-kataconfig.yaml

새로운 KataConfig CR이 생성되고 작업자 노드에 RuntimeClasskata-remote-cc 를 설치하기 시작합니다. kata-remote-cc 설치가 완료되고 작업자 노드가 재부팅될 때까지 기다린 후 다음 단계를 진행합니다.

중요

OpenShift 샌드박스 컨테이너는 kata-remote-cc 를 기본 런타임이 아닌 클러스터의 선택적 런타임으로만 설치합니다.

검증

  • 설치 진행 상황을 모니터링합니다.

    $ watch "oc describe kataconfig | sed -n /^Status:/,/^Events/p"

    Is In Progress 의 값이 false 로 표시되면 설치가 완료됩니다.

3.3.5. CLI를 사용하여 샌드박스 컨테이너에 피어 Pod를 사용하여 워크로드 배포

OpenShift 샌드박스 컨테이너는 Kata를 기본 런타임이 아닌 클러스터의 보조 선택적 런타임으로 설치합니다.

샌드박스 컨테이너에서 피어 Pod를 사용하여 Pod 템플릿 워크로드를 배포하려면 워크로드 YAML 파일에 kata-remote-ccruntimeClassName 으로 추가해야 합니다.

사전 요구 사항

  • 클러스터에 Red Hat OpenShift 4.13을 설치했습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • cluster-admin 역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
  • OpenShift 샌드박스 컨테이너 Operator가 설치되어 있습니다.
  • 클라우드 공급자에 고유한 보안 오브젝트 및 피어-pod 구성 맵을 생성했습니다.
  • KataConfig CR(사용자 정의 리소스)을 생성했습니다.

절차

  • pod 템플릿 오브젝트에 runtimeClassName: kata-remote-cc 를 추가합니다.

    • Pod 오브젝트
    • ReplicaSet 오브젝트
    • ReplicationController 오브젝트
    • StatefulSet 오브젝트
    • Deployment 오브젝트
    • DeploymentConfig 오브젝트

Pod 오브젝트의 예

apiVersion: v1
kind: Pod
metadata:
  name: hello-openshift
  labels:
    app: hello-openshift
spec:
  runtimeClassName: kata-remote-cc
  containers:
    - name: hello-openshift
      image: quay.io/openshift/origin-hello-openshift
      ports:
        - containerPort: 8888
      securityContext:
        privileged: false
        allowPrivilegeEscalation: false
        runAsNonRoot: true
        runAsUser: 1001
        capabilities:
          drop:
            - ALL
        seccompProfile:
          type: RuntimeDefault

Red Hat OpenShift는 워크로드를 생성하고 스케줄링을 시작합니다.

검증

  • Pod 템플릿 오브젝트에서 runtimeClassName 필드를 검사합니다. runtimeClassNamekata-remote-cc 인 경우 피어 Pod를 사용하여 OpenShift 샌드박스 컨테이너에서 워크로드가 실행됩니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.