적합한 베이스 선택
컨테이너 베이스 이미지에는 다양한 옵션이 있는데, Red Hat UBI(Universal Base Image)를 선택해야 하는 이유는 무엇일까요? 우선, Red Hat Universal Base Image의 모든 코드는 RHEL( Red Hat Enterprise Linux)에서 파생되었기 때문입니다. UBI를 선택해야 하는 이유를 설명하려면 다음의 RHEL의 임무를 언급해야 합니다:
"Red Hat Enterprise Linux는 워크로드의 성공을 지원하는, 안전성과 신뢰성이 높은 Linux 혁신을 위한 소스입니다."
컨테이너는 Linux이고 UBI는 RHEL에서 파생되므로, 동일한 가치가 UBI에 적용됩니다.
- 혁신: 조직은 운영을 간소화하고 개발 및 관리를 중앙화하여 마찰 없이 신속하게 혁신하고 데이터센터에서 엣지까지 일관성을 제공하기 위해 끊임없이 노력하고 있습니다.
- 최적화: 인프라 복잡성으로 인해 쉽게 비용이 증가하고 효율성이 저하될 수 있습니다.
- 보호: 워크로드 구축, 확장, 관리를 포함하여 하이브리드 클라우드 전반에서 지속적으로 위험을 완화하는 것은 대부분의 조직에는 어려운 과제일 수 있습니다.
- 신뢰: 애플리케이션 라이프사이클과 워크로드 호환성, 보안 패치 적용, 컴플라이언스 리포팅의 복잡성을 관리하는 것은 조직에 있어 끝없는 과제입니다.
컨테이너는 Linux 운영 체제의 유저랜드(userland)(운영 체제와 함께 제공되는 모든 프로그램, 라이브러리, 종속성)의 경량 버전을 제공합니다. 컨테이너에 애플리케이션을 배치하면 이러한 종속성이 필수 요소로 축소되지만, 여전히 운영 체제이며 컨테이너 베이스 이미지의 품질은 호스트 운영 체제만큼 중요합니다. 조직에 적합한 컨테이너 베이스 이미지를 선택하는 것은 표준 운영 환경(SOE)을 구축하는 것과 마찬가지로 보안 및 라이프사이클에 영향을 미치는 중요한 선택입니다.
Red Hat은 베이스 이미지가 조직에 얼마나 중요한지 일찍 인식하고 RHEL 7 릴리스와 함께 RHEL(Red Hat Enterprise Linux) 이미지를 제공하기 시작했습니다(그 직후 RHEL 6 이미지도 릴리스함). 이러한 이미지 덕분에 RHEL 고객은 더욱 안전하고 성능이 뛰어난 최신 엔터프라이즈급 컨테이너를 확보하게 되었습니다. RHEL 컨테이너 호스트에서 RHEL 컨테이너 이미지를 실행하면 익숙한 환경뿐만 아니라 환경 간 호환성과 이식성도 확보됩니다. 하지만 한 가지 문제가 있었습니다. RHEL 서브스크립션이 포함된 엔터프라이즈 계약으로 인해 고객은 구축한 컨테이너 이미지를 조직 외부와 쉽게 공유(컨테이너의 핵심 가치 중 하나)할 수 없었습니다.
Red Hat UBI(Universal Base Image)가 릴리스되면서 다음 두 가지 주요 사항이 변경되었습니다.
- 고객은 UBI를 기반으로 구축한 컨테이너 이미지를 조직 내부 또는 외부의 누구와도 공유할 수 있습니다.
- 비고객은 Red Hat Universal Base Image에서 릴리스된 모든 콘텐츠를 활용할 수 있습니다.
이제 공식 Red Hat 컨테이너 이미지의 향상된 신뢰성, 보안 풋프린트, 성능을 누구나 활용할 수 있습니다. 즉, UBI에서 컨테이너화된 애플리케이션을 빌드한 후에 원하는 컨테이너 레지스트리 서버로 푸시하여 전 세계와 공유할 수 있습니다. UBI를 사용하면 어디서든 원하는 방식으로 컨테이너화된 애플리케이션을 빌드하고 공유하고 관련하여 협업할 수 있습니다.
UBI에서 애플리케이션을 빌드하면 원하는 곳 어디서나 자유롭게 애플리케이션을 공유하고 실행할 수 있지만, RHEL 또는 Red Hat OpenShift에서 애플리케이션을 실행하면 추가적인 가치를 실현할 수 있습니다. 다음과 같이 작동합니다.
- 어디서나 실행: 동일한 품질을 얻을 수 있지만, 커뮤니티 및 셀프 지원만 제공됩니다.
- RHEL 또는 OpenShift에서 실행: 동일한 품질을 얻을 수 있지만, Red Hat에서 전체 지원되므로 도움이 필요한 경우 지원 티켓을 제출하기만 하면 됩니다.
UBI를 사용해야 하는 이유
다음은 UBI가 조직에 적합한지 파악하는 데 도움이 될 수 있는 일련의 요구 및 필요 사항입니다.
- 내 팀의 개발자가 공개적으로 배포할 수 있는 고품질 컨테이너 이미지를 원함
- 내 운영 팀이 엔터프라이즈 라이프사이클을 가진, 지원 가능한 베이스 이미지를 원함
- 내 제품 팀이 Red Hat과 공동으로 지원하는 Red Hat 인증 컨테이너를 제공하고자 함
- 내 고객이 Red Hat 환경 내 엔터프라이즈 지원을 원함
- 내 커뮤니티에서 컨테이너화된 애플리케이션을 더 자유롭게 공유하기를 원하는 동시에 매우 높은 품질의 컨테이너 이미지를 원함
귀사가 위 상황 중 일부 또는 전부를 원한다면 다음을 계속 읽어보세요.
베이스 이미지 이상
UBI는 전체 운영 체제라기보다는 다음 세 가지를 의미합니다.
- 베이스 이미지 4개 세트(ubi-micro, ubi-minimal, ubi standard, ubi-init)
- 실행 환경 이미지 세트(Node.js, Ruby, Python, PHP, Perl 등)
- 일반적인 애플리케이션 종속성을 충족하는 YUM 리포지토리의 관련 패키지 세트
모든 UBI 콘텐츠는 RHEL의 하위 집합입니다. UBI의 모든 패키지는 RHEL 채널에서 제공되며 RHEL 또는 OpenShift에서 실행되는 경우 RHEL처럼 지원됩니다.
컨테이너 이미지에 대해 양질의 지원을 제공하려면 많은 엔지니어링과 보안 분석 및 리소스가 필요합니다. 베이스 이미지뿐만 아니라 지정된 컨테이너 호스트에서 베이스 이미지의 동작도 테스트해야 합니다.
Red Hat은 업그레이드 문제를 완화하기 위해 엔지니어링과 지원에 집중해 왔으며, 그 결과로 UBI 8을 RHEL 9 호스트에서 실행하고 UBI 9를 RHEL 8 호스트에서 실행할 수 있게 되었으며 기타 순열도 지원됩니다. 이를 통해 사용자는 컨테이너 이미지 또는 기본 컨테이너 호스트에서 애플리케이션의 플랫폼을 업그레이드하는 동안 더 큰 유연성과 안정성을 얻을 수 있습니다. 전체 지원 목록은 Red Hat 포털에서 컨테이너 호환성 매트릭스를 참조하세요.
4개의 베이스 이미지 비교
마이크로 - 자체 종속성을 포함하는 애플리케이션용으로 설계(Python, Node.js, .NET 등)
- 구축할 수 있는 절대적으로 작은 이미지
- 이미지를 더 축소시키는 패키지 관리자가 없음
- Dockerfile 대신 Buildah 권장
최소 - 자체 종속성을 포함하는 애플리케이션용으로 설계(Python, Node.js, .NET 등)
- 사전 설치된 콘텐츠 세트 최소화
- SUID 바이너리 없음
- 최소 패키지 관리자(설치, 업데이트, 제거)
표준 - RHEL에서 실행되는 애플리케이션용
- 통합된 OpenSSL 암호화 스택
- 전체 YUM 스택
- 유용한 기본 OS 툴(tar, gzip, vi 등) 포함
멀티서비스 - 단일 컨테이너에서 여러 서비스 실행 간소화
- 시작 시 systemd를 실행하도록 구성됨
- 빌드 시 서비스를 활성화할 수 있음
사전 구축된 실행 환경 컨테이너 이미지
언어를 설치할 수 있는 베이스 이미지 외에도, UBI는 다수의 실행 환경을 사용할 수 있도록 사전 구축된 이미지를 개발자에게 제공합니다. 많은 경우 개발자는 하나의 이미지를 사용하고 구축 중인 애플리케이션 작업을 시작할 수 있습니다.
사전 구축된 런타임 컨테이너 이미지의 전체 목록은 Red Hat Ecosystem Catalog에서 확인하세요.
관련 패키지
사전 구축된 이미지를 사용하면 매우 유용합니다. Red Hat은 새 버전의 RHEL이 릴리스되고 중요한 CVE(Common Vulnerabilities and Exposures)에 패치가 적용되면 새 이미지를 릴리스하고 RHEL 업데이트 정책을 미러링합니다. 전체 이미지 정책은 Red Hat 컨테이너 이미지 업데이트에서 확인할 수 있습니다. Red Hat은 사용자가 이미지 중 하나를 가져와 애플리케이션 빌드를 시작할 수 있도록 이미지를 설계했습니다.
그러나 애플리케이션을 빌드할 때 하나의 추가 패키지가 필요한 경우가 있습니다. 또는 애플리케이션이 작동하도록 패키지를 업데이트해야 하는 경우도 있습니다. 따라서 UBI는 YUM을 통해 사용할 수 있는 RPM 세트와 함께 제공되며 고가용성 콘텐츠 제공 네트워크에 배포됩니다. 프로덕션 릴리스를 수행해야 하는 중요한 시점에 CI/CD 파이프라인에서 YUM 업데이트를 실행하면 Red Hat 고객이 사용하는 것과 동일한 인프라를 사용하게 됩니다.
기반이 되는 RHEL
컨테이너화된 애플리케이션은 2014년에 도입되었을 때 엔터프라이즈 IT에 혁신의 물결을 불러일으켰습니다. 전통적인 모놀리식 애플리케이션의 개발 및 유지 관리를 개선하는 방식에 있어서도 혁신적인 변화를 가져옵니다. 하지만 컨테이너가 만병통치약은 아닙니다. 엔터프라이즈 환경에서 운영 체제는 강화된 안정성과 더 큰 신뢰성, 보안 툴, 지침, 시기적절한 수정을 필요로 합니다. RHEL은 이러한 요구 사항을 충족하도록 설계되었습니다. 다음은 Red Hat 팀이 수행하는 베이스 이미지 작업 중 일부입니다.
- 성능 엔지니어링 팀 - glibc 및 OpenSSL과 같은 기본 라이브러리와 Python 및 Ruby와 같은 실행 환경을 업데이트하고 유지 관리합니다(강력한 성능을 제공하고 컨테이너화할 워크로드와 안정적으로 작동하도록 설계됨).
- 제품 보안 팀 - 동일한 라이브러리와 언어에 적시에 보안 수정을 적용(관련 컨테이너 상태 지수 등급으로 측정)하는 업무를 전담합니다.
- 제품 관리 및 엔지니어링 팀 - 새로운 기능을 추가하고 긴 라이프사이클(고객이 신뢰를 바탕으로 투자할 수 있도록 설계됨)을 지원하는 업무를 전담합니다.
RHEL은 서브스크립션 기반이므로, 귀사에서는 릴리스별 라이센스에 큰 비용을 투입하거나 라이센스 비용 외에 지원을 받을 필요가 없습니다. RHEL 서브스크립션에 가입하면 현재 버전의 RHEL을 실행할 수 있습니다. 여기에는 Red Hat 지원 액세스와 더욱 안전하고 강화된 신뢰할 수 있는 Linux 운영 체제의 장점이 포함됩니다. RHEL은 컨테이너를 위한 훌륭한 호스트이자 이미지의 역할을 하지만, 많은 개발자가 더 광범위한 활용 사례를 지원해야 하며 그중 일부는 지원되는 시나리오를 벗어날 수 있습니다. 바로 여기에 UBI가 필요합니다.
현재와 미래
아마도 지금 귀사는 컨테이너화된 단순 애플리케이션을 빌드하기 위한 베이스 이미지를 찾고 계실 것입니다. 또는 컨테이너 엔진에서 실행되는 독립 실행형 컨테이너에서 클라우드 네이티브 환경으로 전환하여 OpenShift에서 실행되도록 설계된 오퍼레이터를 구축하고 인증하고자 할 수도 있습니다. 어느 경우이든, Red Hat은 UBI가 훌륭한 기반을 제공할 수 있다고 믿습니다.
컨테이너는 경량의 운영 체제 사용자 공간을 새로운 패키징 형식으로 캡슐화하며, Red Hat은 엔터프라이즈급 Linux 운영 체제의 리더입니다. UBI는 ISV(독립 소프트웨어 벤더), 고객, 오픈소스 커뮤니티가 엔터프라이즈급 컨테이너를 사용할 수 있도록 함으로써 컨테이너 개발을 위한 새로운 산업 표준을 정립하도록 설계되었습니다.
특히 ISV는 쿠버네티스 오퍼레이터를 포함하여 컨테이너화된 애플리케이션을 위한 신뢰할 수 있는 단일 기반에서 표준화할 수 있습니다. UBI를 사용하는 ISV는 Red Hat Container Certification을 활용하여 Red Hat 플랫폼에 배포된 OpenShift 등의 소프트웨어를 지속적으로 검증할 수 있습니다.
타사 OCI 호환 플랫폼의 UBI | +Red Hat 플랫폼 | +인증 | |
신뢰할 수 있는 로드맵 | 예 | 예 | 예 |
입증된 기반 | 예 | 예 | 예 |
최소 이미지 | 예 | 예 | 예 |
패키지 업데이트 | UBI 콘텐츠만 해당 | 모든 RHEL 콘텐츠 | 모든 RHEL 콘텐츠 |
클라우드 네이티브 실행 환경 | 예 | 예 | 예 |
배포/재배포 | 예 | 예 | 예 |
Red Hat 플랫폼 테스트 | 예 | 예 | |
Red Hat 고객 지원 | Red Hat 구성 요소 | 모든 구성 요소의 공동 지원 | |
보안 검사 | 예 | 예 | |
Red Hat과 공동 프로모션 | 예 | ||
컨테이너 빌드 서비스 | 예 |
시작하기
시작하는 방법은 간단합니다. 원하는 컨테이너 엔진을 사용하여 이러한 이미지를 가져올 수 있지만, 커맨드라인을 선호하는 경우 Podman Desktop 또는 Podman을 사용하는 것이 좋습니다. 이러한 리포지토리 중 하나에서 이미지를 가져와서 사용할 수 있습니다.
UBI 9의 경우:
podman pull registry.access.redhat.com/ubi9/ubi
podman pull registry.access.redhat.com/ubi9/ubi-minimal
podman pull registry.access.redhat.com/ubi9/ubi-init
UBI 8의 경우:
podman pull registry.access.redhat.com/ubi8/ubi
podman pull registry.access.redhat.com/ubi8/ubi-minimal
podman pull registry.access.redhat.com/ubi8/ubi-init
UBI 7의 경우:
podman pull registry.access.redhat.com/ubi7/ubi
podman pull registry.access.redhat.com/ubi7/ubi-minimal
podman pull registry.access.redhat.com/ubi7/ubi-init
자세한 내용은 Red Hat Universal Base Image e-book 전문 또는 Red Hat Universal Base Image FAQ를 참조하세요.
저자 소개
At Red Hat, Scott McCarty is Senior Principal Product Manager for RHEL Server, arguably the largest open source software business in the world. Focus areas include cloud, containers, workload expansion, and automation. Working closely with customers, partners, engineering teams, sales, marketing, other product teams, and even in the community, he combines personal experience with customer and partner feedback to enhance and tailor strategic capabilities in Red Hat Enterprise Linux.
McCarty is a social media start-up veteran, an e-commerce old timer, and a weathered government research technologist, with experience across a variety of companies and organizations, from seven person startups to 20,000 employee technology companies. This has culminated in a unique perspective on open source software development, delivery, and maintenance.
유사한 검색 결과
채널별 검색
오토메이션
기술, 팀, 인프라를 위한 IT 자동화 최신 동향
인공지능
고객이 어디서나 AI 워크로드를 실행할 수 있도록 지원하는 플랫폼 업데이트
오픈 하이브리드 클라우드
하이브리드 클라우드로 더욱 유연한 미래를 구축하는 방법을 알아보세요
보안
환경과 기술 전반에 걸쳐 리스크를 감소하는 방법에 대한 최신 정보
엣지 컴퓨팅
엣지에서의 운영을 단순화하는 플랫폼 업데이트
인프라
세계적으로 인정받은 기업용 Linux 플랫폼에 대한 최신 정보
애플리케이션
복잡한 애플리케이션에 대한 솔루션 더 보기
오리지널 쇼
엔터프라이즈 기술 분야의 제작자와 리더가 전하는 흥미로운 스토리
제품
- Red Hat Enterprise Linux
- Red Hat OpenShift Enterprise
- Red Hat Ansible Automation Platform
- 클라우드 서비스
- 모든 제품 보기
툴
체험, 구매 & 영업
커뮤니케이션
Red Hat 소개
Red Hat은 Linux, 클라우드, 컨테이너, 쿠버네티스 등을 포함한 글로벌 엔터프라이즈 오픈소스 솔루션 공급업체입니다. Red Hat은 코어 데이터센터에서 네트워크 엣지에 이르기까지 다양한 플랫폼과 환경에서 기업의 업무 편의성을 높여 주는 강화된 기능의 솔루션을 제공합니다.