코드 엔진에서 Knative 사용
IBM Cloud® Code Engine은 빌드된 기본 기술과 상호 작용할 필요가 없도록 설계되었습니다. 그러나 Knative를 기반으로 하는 기존 도구가 있는 경우 Code Engine에서 해당 도구를 계속 사용할 수 있습니다. Code Engine은 Knative API 및 Kubernetes와 및 해당 CLI 명령을 지원합니다. Kubernetes에 대한 자세한 정보는 코드 엔진에서 Kubernetes 사용을 참조하십시오.
지원되는 Knative 버전은 무엇입니까?
Code Engine 버전은 1.15 Knative API 및 해당 CLI 명령을 지원합니다.
Knative 명령행 인터페이스 설치
Knative kn 를 설치하려면 Knative CLI를 다운로드하여 설치합니다.
Code Engine에서 Knative를 사용하려면 먼저 Code Engine의 Kubernetes API와 상호작용하도록 환경을 설정해야 합니다. 자세한 정보는 Kubernetes 명령행 인터페이스 설치를 참조하십시오.
Kubernetes 및 Knative에 대한 자세한 정보와 Code Engine 아키텍처에서 작동하는 방식에 대한 자세한 정보는 Code Engine 아키텍처 및 워크로드 격리 알아보기를 참조하십시오.
Kubernetes API와 상호작용
Kubernetes 명령행 인터페이스(kubectl) 또는 Knative(kn)에서 프로젝트와 상호작용하려면 Code Engine의 Kubernetes API와 상호작용하도록 환경을 설정해야 합니다.
시작하기 전에
- 프로젝트를 작성해야 하고 프로젝트가
active상태여야 합니다. - Kubernetes CLI(
kubectl) 및 Knative CLI(kn)를 설치하십시오.
다음과 같은 방법으로 환경을 설정할 수 있습니다.
-
--kubecfg명령에project select옵션을 추가할 수 있습니다. 예를 들면 다음과 같습니다.ibmcloud ce project select --name PROJECT_NAME --kubecfg -
kubeconfig파일을 직접 내보낼 수 있습니다. 현재 대상 프로젝트를 찾으려면ibmcloud ce project current명령을 실행하십시오. 이 명령은 또한kubeconfig파일에 대해export명령을 리턴합니다. 예를 들면 다음과 같습니다.ibmcloud ce project current출력 예
Getting the current project context... OK Name: myproject ID: 01234567-abcd-abcd-abcd-abcdabcd1111 Subdomain: aabon2dfwa0 Domain: us-south.codeengine.appdomain.cloud Region: us-south Kubectl Context: 4svg40kna19 Kubernetes Config: Context: aabon2dfwa0 Environment Variable: export KUBECONFIG=/user/myusername/.bluemix/plugins/code-engine/myproject-01234567-abcd-abcd-abcd-abcdabcd1111.yaml그런 다음 내보내기 명령을 복사하여 명령행 인터페이스에 붙여넣은 후 실행하십시오.
kubectl config 명령을 실행하여 환경이 올바르게 설정되었는지 확인하십시오.
kubectl config current-context
컨텍스트가 올바르게 설정된 경우 출력은 프로젝트의 Kubectl Context 값과 일치합니다. 예를 들어, 프로젝트의 값이 Kubectl Context 값이 4svg40kna19이면 명령은 4svg40kna19를 리턴합니다.
Kubernetes 및 Code Engine 아키텍처에서의 작동 방법에 대한 자세한 정보는 Code Engine 아키텍처 및 워크로드 격리에 대해 알아보기를 참조하십시오.
Knative API 작업에 필요한 액세스 권한
환경을 설정한 후에는 Knative API와 상호 작용할 수 있습니다. 특정 태스크에 대한 올바른 레벨의 권한이 있어야 합니다. 이러한 역할은 ID및 액세스 관리에서 설정됩니다. IBM Cloud 서비스 역할을 참조하십시오.
| 자원 | 관리자 역할 | 작성자 역할 | 독자 역할 |
|---|---|---|---|
services.serving.knative.dev |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch |
configurations.serving.knative.dev |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch |
routes.serving.knative.dev |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch |
revisions.serving.knative.dev |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch |
pingsource.serving.knative.dev |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch |
kafkasource.serving.knative.dev |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch, create, delete, update, patch, apply, edit |
get, list, watch |