15.2. Pod 사전 설정 생성


다음 예제에서는 Pod 사전 설정을 생성하고 사용하는 방법을 보여줍니다.

Admission Controller 추가
관리자는 /etc/origin/master/master-config.yaml 파일을 확인하여 Pod 사전 설정 승인 컨트롤러 플러그인이 있는지 확인할 수 있습니다. 승인 컨트롤러가 없는 경우 다음을 사용하여 플러그인을 추가합니다.
admissionConfig:
  pluginConfig:
    PodPreset:
      configuration:
        kind: DefaultAdmissionConfig
        apiVersion: v1
        disable: false

그런 다음 OpenShift Container Platform 서비스를 다시 시작하십시오.

# systemctl restart atomic-openshift-master-api atomic-openshift-master-controllers
Pod Preset 생성
관리자 또는 개발자는 settings.k8s.io/v1alpha1 API, 삽입할 정보, Pod와 일치하는 라벨 선택기를 사용하여 사전 정의된 Pod를 생성합니다.
kind: PodPreset
apiVersion: settings.k8s.io/v1alpha1
metadata:
  name: allow-database
spec:
  selector:
    matchLabels:
      role: frontend
  env:
    - name: DB_PORT
      value: "6379"
  volumeMounts:
    - mountPath: /cache
      name: cache-volume
  volumes:
    - name: cache-volume
      emptyDir: {}
Pod 생성

개발자는 Pod 사전 설정의 라벨 선택기와 일치하는 라벨을 사용하여 Pod를 생성합니다.

  1. Pod 사전 설정의 라벨 선택기와 일치하는 라벨을 사용하여 표준 Pod 사양을 생성합니다.

    apiVersion: v1
    kind: Pod
    metadata:
      name: website
      labels:
        app: website
        role: frontend
    spec:
      containers:
        - name: website
          image: ecorp/website
          ports:
            - containerPort: 80
  2. Pod를 생성합니다.

    $ oc create -f pod.yaml
  3. 생성 후 Pod 사양을 확인합니다.

    $ oc get pod website -o yaml
    
    apiVersion: v1
    kind: Pod
    metadata:
      name: website
      labels:
        app: website
        role: frontend
      annotations:
        podpreset.admission.kubernetes.io/allow-database: "resource version" 1
    spec:
      containers:
        - name: website
          image: ecorp/website
          volumeMounts: 2
            - mountPath: /cache
              name: cache-volume
          ports:
            - containerPort: 80
          env: 3
            - name: DB_PORT
              value: "6379"
      volumes:
        - name: cache-volume
          emptyDir: {}
    1 2 3
    주석이 존재하며 컨테이너 스토리지 및 환경 변수가 삽입됩니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.