2장. OpenShift Serverless 개요
OpenShift Serverless에서는 개발자가 OpenShift Container Platform에서 서버리스 이벤트 중심 애플리케이션을 생성하고 배포할 수 있는 Kubernetes 기본 구성 블록을 제공합니다. 서버리스 애플리케이션은 요청 시 확장 및 축소(0)할 수 있으며 여러 이벤트 소스에 의해 트리거됩니다. OpenShift Serverless는 엔터프라이즈급 서버리스 플랫폼을 활성화하여 하이브리드 및 멀티 클라우드 환경에 이식성과 일관성을 제공하는 오픈 소스 Knative 프로젝트를 기반으로 합니다.
OpenShift Serverless는 OpenShift Container Platform과 다른 주기로 릴리스되므로 OpenShift Serverless 설명서는 이제 제품의 각 마이너 버전에 대한 별도의 문서 세트로 제공됩니다.
OpenShift Serverless 문서는 https://docs.openshift.com/serverless/ 에서 확인할 수 있습니다.
특정 버전에 대한 문서는 버전 선택기 드롭다운을 사용하거나 URL에 버전을 추가하여 직접 확인할 수 있습니다(예: https://docs.openshift.com/serverless/1.28 ).
또한 OpenShift Serverless 설명서는 https://access.redhat.com/documentation/en-us/red_hat_openshift_serverless/ 의 Red Hat 포털에서도 사용할 수 있습니다.
OpenShift Serverless 라이프 사이클 및 지원되는 플랫폼에 대한 자세한 내용은 플랫폼 라이프 사이클 정책을 참조하십시오.
2.1. OpenShift Serverless의 구성 요소 링크 복사링크가 클립보드에 복사되었습니다!
2.1.1. Knative Serving 링크 복사링크가 클립보드에 복사되었습니다!
Knative Serving은 Kubernetes에 빌드되어 서버리스 컨테이너로 애플리케이션 및 기능의 배포 및 서비스를 지원합니다. 서빙은 애플리케이션 배포를 단순화하고, 들어오는 트래픽을 기반으로 동적으로 확장하며 트래픽 분할을 통해 사용자 정의 롤아웃 전략을 지원합니다.
Knative Serving에는 다음 기능이 포함되어 있습니다.
- 서버리스 컨테이너 배포 간소화
- scale-to-zero를 포함한 트래픽 기반 자동 확장
- 라우팅 및 네트워크 프로그래밍
- 지정 시간 애플리케이션 스냅샷 및 해당 구성
2.1.2. Knative Eventing 링크 복사링크가 클립보드에 복사되었습니다!
Knative Eventing에서는 구성 가능 프리미티브를 제공하는 플랫폼을 제공하여 late-binding 이벤트 소스 및 이벤트 소비자를 활성화합니다.
Knative Eventing에서는 다음과 같은 아키텍처 클라우드 네이티브 개념을 지원합니다.
- 서비스는 개발 중에 느슨하게 결합되어 프로덕션에 독립적으로 배포됩니다.
- 생산자는 소비자가 수신 대기하기 전에 이벤트를 생성할 수 있으며, 소비자는 아직 생성되지 않은 이벤트 또는 이벤트 클래스에 대한 관심을 나타낼 수 있습니다.
- 서비스를 연결하여 생산자 또는 소비자를 수정하지 않고 특정 생산자에서 특정 이벤트 하위 집합을 선택할 수 있습니다.
2.1.3. OpenShift Serverless Functions 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Serverless Functions를 사용하면 Knative 서비스로 배포된 함수를 작성하고 Knative Serving 및 Eventing을 활용할 수 있습니다.
OpenShift Serverless Functions에는 다음 기능이 포함되어 있습니다.
다음 빌드 전략에 대한 지원:
- S2I(Source-to-Image)
- Buildpacks
- 여러 런타임
-
Knative(
kn) CLI를 통한 로컬 개발자 경험 - 프로젝트 템플릿
- CloudEvents 및 일반 HTTP 요청 수신 지원
2.1.4. OpenShift Serverless Logic 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Serverless Logic을 사용하면 YAML 또는 JSON 파일을 사용하여 선언적 워크플로 모델을 정의할 수 있습니다. 선언적 워크플로 모델은 이벤트 중심 서버리스 애플리케이션을 오케스트레이션합니다. OpenShift Serverless Logic을 사용하면 워크플로우 실행을 시각화하여 디버깅 및 최적화를 간소화할 수 있습니다. 또한 기본 제공 오류 처리 및 내결함성을 포함하므로 워크플로우 실행 중에 발생하는 오류 및 예외를 더 쉽게 처리할 수 있습니다. OpenShift Serverless Logic은 CNCF Serverless Workflow 사양 을 구현합니다.
2.1.5. Knative CLI 링크 복사링크가 클립보드에 복사되었습니다!
Knative(kn) CLI를 사용하면 명령줄에서 또는 쉘 스크립트 내에서 Knative 리소스를 생성할 수 있습니다. 광범위한 도움말 페이지 및 자동 완성 지원을 통해 Knative 리소스 스키마의 세부 구조를 암기할 수 있습니다.
Knative(kn) CLI에는 다음 기능이 포함되어 있습니다.
다음 Knative Serving 기능 관리 지원
- 서비스
- 버전
- 라우트
다음 Knative Eventing 엔티티 관리 지원
- 소스
- 브로커
- Trigger
- 채널
- 서브스크립션
-
쿠버네티스 (
kubectl) CLI 툴의 설계를 기반으로 하는 플러그인 아키텍처 - Knative를 Tekton 파이프라인에 통합