1.8. Red Hat OpenShift Serverless 1.27 릴리스 노트

OpenShift Serverless 1.27이 공개되었습니다. 이 문서에는 OpenShift Container Platform의 OpenShift Serverless와 관련된 새로운 기능, 변경 사항, 알려진 문제가 포함되어 있습니다.

중요

OpenShift Serverless 1.26은 OpenShift Container Platform 4.12에서 완전히 지원되는 초기 릴리스입니다. OpenShift Serverless 1.25 이상은 OpenShift Container Platform 4.12에 배포되지 않습니다.

이러한 이유로 OpenShift Container Platform을 버전 4.12로 업그레이드하기 전에 먼저 OpenShift Serverless를 버전 1.26 또는 1.27로 업그레이드합니다.

1.8.1. 새로운 기능

  • OpenShift Serverless에서 Knative Serving 1.6을 사용합니다.
  • OpenShift Serverless에서 Knative Eventing 1.6을 사용합니다.
  • OpenShift Serverless에서 Kourier 1.6을 사용합니다.
  • OpenShift Serverless에서 Knative(kn) CLI 1.6을 사용합니다.
  • OpenShift Serverless에서 Knative Kafka 1.6을 사용합니다.
  • kn func CLI 플러그인은 이제 func 1.8.1을 사용합니다.
  • 이제 네임스페이스 범위 브로커를 기술 프리뷰로 사용할 수 있습니다. 예를 들어 이러한 브로커를 사용하여 역할 기반 액세스 제어(RBAC) 정책을 구현할 수 있습니다.
  • KafkaSink 는 기본적으로 CloudEvent 바이너리 콘텐츠 모드를 사용합니다. 바이너리 콘텐츠 모드는 CloudEvent 대신 본문에서 헤더를 사용하므로 구조화된 모드보다 효율적입니다. 예를 들어 HTTP 프로토콜의 경우 HTTP 헤더를 사용합니다.
  • OpenShift Container Platform 4.10 이상에서 OpenShift 경로를 사용하여 외부 트래픽에 HTTP/2 프로토콜을 통해 gRPC 프레임워크를 사용할 수 있습니다. 이를 통해 클라이언트와 서버 간 통신 효율성 및 속도가 향상됩니다.
  • Knative Operator Serving 및 Eventings CRD의 API 버전 v1alpha1 은 1.27에서 더 이상 사용되지 않습니다. 향후 버전에서는 제거될 예정입니다. 대신 v1beta1 버전을 사용하는 것이 좋습니다. 이는 CRD가 Serverless Operator를 업그레이드할 때 자동으로 업데이트되므로 기존 설치에는 영향을 미치지 않습니다.
  • 이제 전달 시간 초과 기능이 기본적으로 활성화되어 있습니다. 전송된 각 HTTP 요청에 대한 시간 제한을 지정할 수 있습니다. 기능은 기술 프리뷰로 남아 있습니다.

1.8.2. 해결된 문제

  • 이전에는 Knative 서비스가 Ready 상태가 되지 않아 로드 밸런서가 준비될 때까지 기다리는 동안 보고되는 경우가 있었습니다. 이 문제가 해결되었습니다.

1.8.3. 확인된 문제

  • OpenShift Serverless를 Red Hat OpenShift Service Mesh와 통합하면 클러스터에 보안이 너무 많은 경우 net-kourier Pod가 시작 시 메모리가 부족해집니다.
  • 네임스페이스 범위 브로커는 네임스페이스 범위 브로커를 삭제한 후에도 사용자 네임스페이스에 ClusterRoleBinding 을 남겨 둘 수 있습니다.

    이 경우 사용자 네임스페이스에서 rbac-proxy-reviews-prom-rb-knative-kafka-broker-data-plane-{{.Namespace}} 이라는 ClusterRoleBinding 을 삭제합니다.

  • Ingress에 net-istio 를 사용하고 security.dataPlane.mtls: true 를 사용하여 SMCP를 통해 mTLS를 활성화하는 경우 서비스 메시는 OpenShift Serverless의 DomainMapping 을 허용하지 않는 *.local 호스트에 DestinationRules 를 배포합니다.

    이 문제를 해결하려면 security.dataPlane.mtls: true 를 사용하는 대신 PeerAuthentication 을 배포하여 mTLS를 활성화합니다.