정보
OpenShift Container Platform 소개
초록
1장. OpenShift Container Platform 4.10 문서
OpenShift Container Platform 4.10 공식적인 OpenShift Container Platform 4.10 문서에 오신 것을 환영합니다. OpenShift Container Platform에 대해 알아보고 해당 기능을 살펴보기 시작하십시오.
OpenShift Container Platform 4.10 문서를 탐색하려면 다음 방법 중 하나를 사용할 수 있습니다.
- 왼쪽 탐색 모음을 사용하여 문서를 찾습니다.
- 이 시작 페이지의 콘텐츠에서 관심 있는 작업을 선택합니다.
아키텍처 및 보안 및 규정 준수 부터 시작하십시오. 그런 다음 릴리스 노트 를 참조하십시오.
1.1. 클러스터 설치 프로그램 활동
이러한 OpenShift Container Platform 설치 작업을 살펴봅니다.
- OpenShift Container Platform 설치 개요: 설치 관리자 프로비저닝 또는 사용자 프로비저닝 인프라에 OpenShift Container Platform을 설치할 수 있습니다. OpenShift Container Platform 설치 프로그램은 다양한 플랫폼에 OpenShift Container Platform을 배포할 수 있는 유연성을 제공합니다.
- Alibaba에 클러스터 설치: 설치 관리자 프로비저닝 인프라에 Alibaba Cloud에 OpenShift Container Platform을 설치할 수 있습니다. 현재 기술 프리뷰 기능 전용입니다.
- AWS에 클러스터 설치 : AWS (Amazon Web Services)에 클러스터를 배포할 때 많은 설치 옵션이 있습니다. 기본 설정 또는 사용자 지정 AWS 설정을 사용하여 클러스터를 배포할 수 있습니다. 사용자가 프로비저닝한 AWS 인프라에 클러스터를 배포할 수도 있습니다. 요구 사항에 맞게 제공된 AWS CloudFormation 템플릿 을 수정할 수 있습니다.
- Azure에 클러스터 설치: Microsoft Azure 의 기본 설정,사용자 지정 Azure 설정 또는 사용자 지정 네트워킹 설정으로 클러스터를 배포할 수 있습니다. Azure Virtual Network 에 OpenShift Container Platform을 프로비저닝하거나 Azure Resource Manager 템플릿 을 사용하여 자체 인프라를 프로비저닝할 수도 있습니다.
- Azure Stack Hub에 클러스터 설치: 설치 관리자 프로비저닝 인프라에 Azure Stack Hub에 OpenShift Container Platform을 설치할 수 있습니다.
- GCP(Google Cloud Platform) 에 클러스터 설치: GCP (Google Cloud Platform)에서 기본 설정 또는 사용자 지정 GCP 설정으로 클러스터를 배포할 수 있습니다. 자체 인프라를 프로비저닝하는 GCP 설치도 수행할 수 있습니다.
- IBM Cloud에 클러스터 설치: 설치 관리자 프로비저닝 인프라에 IBM Cloud에 OpenShift Container Platform을 설치할 수 있습니다.
- IBM Power에 클러스터 설치: 사용자 프로비저닝 인프라에 IBM Power에 OpenShift Container Platform을 설치할 수 있습니다.
- VMware vSphere에 클러스터 설치 : 지원되는 vSphere 버전에 OpenShift Container Platform을 설치할 수 있습니다.
- VMware Cloud에 클러스터 설치: AWS의 지원되는 VMware Cloud (VMC) 버전에 OpenShift Container Platform을 설치할 수 있습니다.
- IBM Z 및 LinuxONE에 z/VM으로 클러스터 설치: 사용자 프로비저닝 인프라에 IBM Z 및 LinuxONE에 z/VM으로 OpenShift Container Platform을 설치할 수 있습니다.
- IBM Z 및 LinuxONE에 RHEL KVM으로 클러스터 설치: 사용자 프로비저닝 인프라에 IBM Z 및 LinuxONE에 RHEL KVM으로 OpenShift Container Platform을 설치할 수 있습니다.
- 베어 메탈에 설치 관리자 프로비저닝 클러스터 설치: 설치 관리자 프로비저닝 아키텍처를 사용하여 베어 메탈에 OpenShift Container Platform을 설치할 수 있습니다.
- 베어 메탈에 사용자 프로비저닝 클러스터 설치: 사용 가능한 플랫폼 및 클라우드 공급자 배포 옵션이 요구 사항을 충족하지 않는 경우 사용자가 프로비저닝한 베어 메탈 인프라에 OpenShift Container Platform을 설치할 수 있습니다.
RHOSP(Red Hat OpenStack Platform)에 클러스터 설치: 사용자 지정 , 네트워크 사용자 지정 또는 설치 관리자 프로비저닝 인프라의 제한된 네트워크에 RHOSP 에 클러스터를 설치할 수 있습니다.
사용자 정의 ,네트워크 사용자 지정 또는 사용자 프로비저닝 인프라에서 SR-IOV를 사용하여 RHOSP 에 클러스터를 설치할 수 있습니다.
- RHV(Red Hat Virtualization)에 클러스터 설치: 빠른 설치 또는 사용자 지정 설치를 사용하여 RHV(Red Hat Virtualization)에 클러스터를 배포할 수 있습니다.
- 제한된 네트워크에 클러스터 설치: AWS,GCP,vSphere,IBM Z 및 LinuxONE with z/VM ,IBM Z 및 LinuxONE with RHEL KVM,IBM Z 및 LinuxONE에서 사용자 프로비저닝 인프라를 사용하는 클러스터가 인터넷에 완전히 액세스할 수 없는 경우, OpenShift Container Platform 설치 이미지를 미러링 하고 제한된 네트워크에 클러스터를 설치합니다. https://access.redhat.com/documentation/en-us/openshift_container_platform/4.10/html-single/installing/#installing-restricted-networks-bare-metal
- 기존 네트워크에 클러스터 설치: AWS 또는 GCP 에서 기존 VPC(Virtual Private Cloud)를 사용하거나 Azure의 기존 VNet 을 사용하는 경우 클러스터를 설치할 수 있습니다.
- 개인 클러스터 설치: 클러스터에 외부 인터넷 액세스가 필요하지 않은 경우 AWS,Azure 또는 GCP 에 개인 클러스터를 설치할 수 있습니다. 클라우드 API 및 설치 미디어에 액세스하려면 여전히 인터넷 액세스가 필요합니다.
- 설치 로그 확인: 액세스 설치 로그에서 OpenShift Container Platform 설치 중에 발생하는 문제를 평가합니다.
- 액세스 OpenShift Container Platform: 설치 프로세스 끝에 인증 정보 출력을 사용하여 명령줄 또는 웹 콘솔에서 OpenShift Container Platform 클러스터에 로그인합니다.
- Red Hat OpenShift Data Foundation 설치: 컨테이너를 위한 고도로 통합된 영구 스토리지 관리를 제공하기 위해 Red Hat OpenShift Data Foundation을 Operator로 설치할 수 있습니다.
1.2. 개발자 활동
OpenShift Container Platform을 사용하여 컨테이너화된 애플리케이션을 개발하고 배포합니다. OpenShift Container Platform은 컨테이너화된 애플리케이션을 개발하고 배포하기 위한 플랫폼입니다. OpenShift Container Platform 설명서는 다음을 지원합니다.
- OpenShift Container Platform 개발 이해: 간단한 컨테이너에서 고급 Kubernetes 배포 및 Operator에 이르기까지 컨테이너화된 다양한 유형의 애플리케이션을 배웁니다.
-
프로젝트 작업: OpenShift Container Platform 웹 콘솔 또는 OpenShift CLI(oc
)
에서 프로젝트를 생성하여 개발한 소프트웨어를 구성하고 공유합니다. - 애플리케이션 작업:
OpenShift Container Platform 웹 콘솔 의 개발자 화면을 사용하여 애플리케이션을 생성하고 배포합니다.
토폴로지 보기를 사용하여 애플리케이션을 확인하고, 상태를 모니터링하고, 구성 요소를 연결 및 그룹화하며 코드 기반을 수정합니다.
- 워크로드를 백업 서비스에 연결하십시오: Service Binding Operator를 사용하면 애플리케이션 개발자가 워크로드와 바인딩 데이터를 자동으로 수집하고 공유하여 Operator에서 관리하는 백업 서비스를 사용하여 워크로드를 쉽게 바인딩할 수 있습니다. Service Binding Operator는 클러스터 환경에서 불일치를 방지하는 일관되고 선언적 서비스 바인딩 방법으로 개발 라이프사이클을 향상시킵니다.
-
개발자 CLI 툴 사용(
odo
CLI):odo
CLI 툴을 사용하면 개발자가 단일 또는 다중 구성 요소 애플리케이션을 쉽게 생성하고 배포, 빌드 및 서비스 경로 구성을 자동화할 수 있습니다. 복잡한 Kubernetes 및 OpenShift Container Platform 개념을 추상화하여 애플리케이션 개발에 집중할 수 있습니다. - CI/CD 파이프라인 생성: 파이프라인은 서버리스, 클라우드 네이티브, 연속 통합 및 격리된 컨테이너에서 실행되는 연속 배포 시스템입니다. 표준 Tekton 사용자 지정 리소스를 사용하여 배포를 자동화하고 마이크로 서비스 기반 아키텍처에서 작업하는 분산된 팀을 위해 설계되었습니다.
- 인프라 및 애플리케이션 구성 관리: GitOps는 클라우드 네이티브 애플리케이션에 대한 연속 배포를 구현하는 선언적 방법입니다. GitOps는 인프라 및 애플리케이션 정의를 코드로 정의합니다. 그런 다음 이 코드를 사용하여 여러 작업 공간과 클러스터를 관리하여 인프라 및 애플리케이션 구성 생성 작업을 단순화합니다. GitOps는 또한 복잡한 배포를 빠른 속도로 처리하고 자동화하여 배포 및 릴리스 주기 동안 시간을 절약합니다.
- Helm 차트 배포: Helm 은 OpenShift Container Platform 클러스터에 애플리케이션 및 서비스 배포를 간소화하는 소프트웨어 패키지 관리자입니다. Helm은 차트라는 패키징 형식을 사용합니다. Helm 차트는 OpenShift Container Platform 리소스에 대해 설명하는 파일 컬렉션입니다.
- 이미지 빌드 이해: Git 리포지토리, 로컬 바이너리 입력 및 외부 아티팩트와 같은 위치에서 다양한 소스 자료를 포함할 수 있는 다양한 빌드 전략(Docker, S2I, 사용자 정의 및 파이프라인) 중에서 선택합니다. 그런 다음 기본 빌드에서 고급 빌드로 빌드 유형 예제를 따릅니다.
- 컨테이너 이미지 생성: 컨테이너 이미지는 OpenShift Container Platform(및 Kubernetes) 애플리케이션에서 가장 기본적인 빌딩 블록입니다. 이미지 스트림을 정의하면 개발을 계속할 때 이미지의 여러 버전을 한 곳에 수집할 수 있습니다. S2I 컨테이너를 사용하면 Ruby, Node.js 또는 Python과 같은 특정 유형의 코드를 실행하도록 설정된 기본 컨테이너에 소스 코드를 삽입할 수 있습니다.
-
배포 생성:
Deployment
및DeploymentConfig
오브젝트를 사용하여 애플리케이션에 대한 세분화된 관리를 제공합니다. 워크로드 페이지 또는 OpenShift CLI(oc
)를 사용하여 배포를 관리합니다. 롤링, 재현 및 사용자 정의 배포 전략에 대해 알아봅니다. - 템플릿 생성: 기존 템플릿을 사용하거나 애플리케이션 빌드 또는 배포 방법을 설명하는 자체 템플릿을 생성합니다. 템플릿은 이미지를 설명, 매개변수, 복제본, 노출된 포트 및 애플리케이션 실행 또는 구축 방법을 정의하는 기타 콘텐츠와 결합할 수 있습니다.
- Operators 이해: Operator는 OpenShift Container Platform 4.10용 클러스터 내 애플리케이션을 생성하는 데 선호되는 방법입니다. Operator 프레임워크 및 설치된 Operator를 사용하여 프로젝트에 애플리케이션을 배포하는 방법을 알아봅니다.
- Operators 개발: Operator는 OpenShift Container Platform 4.10용 클러스터 내 애플리케이션을 생성하는 데 선호되는 방법입니다. Operator를 빌드, 테스트 및 배포하기 위한 워크플로를 알아봅니다. 그런 다음 Ansible 또는 Helm을 기반으로 자체 Operator를 생성하거나 Operator SDK를 사용하여 기본 제공 Prometheus 모니터링을 구성합니다.
- REST API 참조: OpenShift Container Platform 애플리케이션 프로그래밍 인터페이스 엔드포인트에 대해 알아봅니다.
1.3. 클러스터 관리자 활동
머신을 관리하고, 사용자에게 서비스를 제공하며 모니터링 및 로깅 보고서를 따릅니다. 이 문서를 통해 다음을 수행할 수 있습니다.
- OpenShift Container Platform 관리 이해: OpenShift Container Platform 4.10 컨트롤 플레인의 구성 요소에 대해 알아봅니다. Machine API 및 Operator 를 통해 OpenShift Container Platform 컨트롤 플레인 및 작업자 노드를 관리하고 업데이트하는 방법을 확인하십시오.
1.3.1. 클러스터 구성 요소 관리
- 머신 관리: 상태 점검을 배포하고 머신에 자동 스케일링을 적용하여 AWS,Azure 또는 GCP 에서 클러스터에서 머신을 관리합니다.
- 컨테이너 레지스트리 관리: 각 OpenShift Container Platform 클러스터에는 이미지를 저장하기 위한 기본 제공 컨테이너 레지스트리가 포함되어 있습니다. OpenShift Container Platform과 함께 사용하도록 별도의 Red Hat Quay 레지스트리를 구성할 수도 있습니다. Quay.io 웹 사이트에서는 OpenShift Container Platform 컨테이너 및 Operator를 저장하는 퍼블릭 컨테이너 레지스트리를 제공합니다.
- 사용자 및 그룹 관리: 클러스터를 사용하거나 수정할 수 있는 다양한 수준의 권한으로 사용자 및 그룹을 추가합니다.
- 인증 관리: OpenShift Container Platform에서 사용자, 그룹 및 API 인증이 작동하는 방식을 알아봅니다. OpenShift Container Platform은 여러 ID 공급자 를 지원합니다.
- 수신,API 서버 및 서비스 인증서 관리: OpenShift Container Platform은 Ingress Operator, API 서버 및 암호화가 필요한 복잡한 미들웨어 애플리케이션에 필요한 서비스에 기본적으로 인증서를 생성합니다. 이러한 인증서를 변경, 추가 또는 순환해야 할 수 있습니다.
- 네트워크 관리: OpenShift Container Platform의 클러스터 네트워크는 CNO (Cluster Network Operator)에서 관리합니다. CNO는 kube-proxy의 iptables 규칙을 사용하여 해당 노드에서 실행되는 노드와 Pod 간 트래픽을 전달합니다. Multus Container Network Interface는 여러 네트워크 인터페이스를 Pod에 연결하는 기능을 추가합니다. 네트워크 정책 기능을 사용하여 Pod를 격리하거나 선택한 트래픽을 허용할 수 있습니다.
- 관리 스토리지: OpenShift Container Platform을 사용하면 클러스터 관리자가 Red Hat OpenShift Data Foundation,AWS Elastic Block Store,NFS,iSCSI,CSI(Container Storage Interface) 등을 사용하여 영구 스토리지를 구성할 수 있습니다. 영구 볼륨을 확장하고, 동적 프로비저닝 을 구성하고, CSI를 사용하여 영구 스토리지의 스냅샷을 구성,복제 및 사용할 수 있습니다.
- Operator 관리: Red Hat, ISV 및 커뮤니티 Operator 목록은 클러스터 관리자가 검토하고 해당 클러스터에 설치할 수 있습니다. 설치한 후 클러스터에서 Operator를 실행,업그레이드, 백업 또는 관리할 수 있습니다.
1.3.2. 클러스터 구성 요소 변경
- CRD(사용자 정의 리소스 정의)를 사용하여 클러스터를 수정: Operator로 구현된 클러스터 기능은 CRD를 사용하여 수정할 수 있습니다. CRD를 생성하고 CRD에서 리소스를 관리하는 방법을 배웁니다.
- 리소스 할당량 설정: CPU, 메모리 및 기타 시스템 리소스에서 선택하여 할당량을 설정합니다.
- 리소스 정리 및 회수: 불필요한 Operator, 그룹, 배포, 빌드, 이미지, 레지스트리 및 cron 작업을 정리하여 공간을 회수합니다.
- 클러스터확장 및 조정 : 클러스터 제한을 설정하고, 노드를 튜닝하고, 클러스터 모니터링을 스케일링하며, 환경의 네트워킹, 스토리지 및 경로를 최적화합니다.
-
클러스터 업데이트: CVO (Cluster Version Operator)를 사용하여 OpenShift Container Platform 클러스터를 업그레이드합니다. OpenShift Update Service(OSUS)에서 업데이트를 사용할 수 있는 경우 OpenShift Container Platform 웹 콘솔 또는
oc
CLI( OpenShift CLI )에서 해당 클러스터 업데이트를 적용합니다.
- OpenShift Update Service 이해: 연결이 끊긴 환경에서 OpenShift Container Platform 업데이트를 권장하기 위해 로컬 OpenShift 업데이트 서비스를 설치 및 관리하는 방법에 대해 설명합니다.
1.3.3. 클러스터 모니터링
- OpenShift Logging 작업: OpenShift Logging에 대해 알아보고 Elasticsearch, Fluentd 및 Kibana와 같은 다양한 OpenShift Logging 유형을 구성합니다.
- 모니터: 모니터링 스택을 구성하는 방법을 알아봅니다. 모니터링을 구성한 후 웹 콘솔을 사용하여 대시보드 모니터링에 액세스합니다. 인프라 메트릭 외에도 자체 서비스에 대한 메트릭을 스크랩 및 볼 수 있습니다.
- 원격 상태 모니터링: OpenShift Container Platform은 클러스터에 대한 익명화된 집계 정보를 수집합니다. Telemetry 및 Insights Operator를 사용하여 이 데이터는 Red Hat에서 수신하며 OpenShift Container Platform을 개선하는 데 사용됩니다. 원격 상태 모니터링에서 수집한 데이터를 볼 수 있습니다.
2장. OpenShift Container Platform에 대해 자세히 알아보기
다음 섹션을 사용하여 OpenShift Container Platform에 대해 알아보고 사용하는 데 도움이 되는 콘텐츠를 찾습니다.
2.1. 아키텍트
OpenShift Container Platform에 대해 알아보기 | OpenShift Container Platform 배포 계획 | 추가 리소스 |
---|---|---|
2.2. 클러스터 관리자
OpenShift Container Platform에 대해 알아보기 | OpenShift Container Platform 배포 | OpenShift Container Platform 관리 | 추가 리소스 |
---|---|---|---|
2.3. 애플리케이션 사이트 안정성 엔지니어 (App SRE)
OpenShift Container Platform에 대해 알아보기 | 애플리케이션 배포 및 관리 | 추가 리소스 |
---|---|---|
2.4. 개발자
OpenShift Container Platform에서 애플리케이션 개발에 대해 알아보기 | 애플리케이션 배포 |
---|---|
Legal Notice
Copyright © 2024 Red Hat, Inc.
OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).
Modified versions must remove all Red Hat trademarks.
Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.
Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.