Quick provisioning using k8sClusterDynamic #1913
Replies: 2 comments 3 replies
-
@sykim-etri 예시 그대로 요청해봤는데, error 가 발생합니다. (참고 현재 예시의 json은 마지막에 { |
Beta Was this translation helpful? Give feedback.
-
k8sClusterDynamic/k8sNodeGroupDynamic API 사용 테스트 완료한 Request Body 샘플AWSawscli 필요aws configure 필수
ALIBABA
*k8sClusterDynamic
AZUREnodeGroupName: keep regular expression (^[a-z][a-z0-9]*$)
GCPgoogle-cloud-sdk-gke-gcloud-auth-plugin 필요gcloud auth login 필수
NHNCLOUD
TENCENT
|
Beta Was this translation helpful? Give feedback.
-
Quick provisioning using k8sClusterDynamic
1) CB-TB의 K8sCluster 동적 생성 방법
POST /ns/{nsId}/k8sClusterDynamic를 활용하면, 별도의 작업 없이 빠르게 클라우드 상에 쿠버네티스 클러스터 인프라의 생성이 가능하다.
commonSpec 및 commonImage 는
provider
+region
+keyword
형태로 구성되며init.sh
를 통해서 이미 오브젝트로 등록된 스펙 및 이미지들 중 InfraType 값에 "k8s"가 포함된 경우 적용 가능하다.일부 CSP(Azure, IBM 등)의 경우 워커노드의 이미지 지정이 불가능하기 때문에 commonImage의 값을 "default" 또는 ""(blank)로 설정해야 한다.
version은 값을 지정하지 않으면 k8sClusterinfo.yaml에 기재된 가장 최신 버전을, major.minor만 지정하면 가장 유사한 버전을 자동으로 선정한다.
K8sCluster Dynamic 을 통해서 K8sCluster를 생성하면, 내부적으로 공용
Network
,SG
,SSHKey
등이 생성됨 (내부적으로는 POST/ns/{nsId}/sharedResource를 활용)
commonSpec ID 획득 방법
워커노드들의 Spec 지정을 위해 commonSpec ID를 조회가 필요하며, 이를 위해 POST /k8sClusterRecommendNode를 활용한다.
k8sClusterRecommendNode를 통해서 워커노드의 Spec 을 조회하는 방법은 mciRecommendVM 가이드와 동일한 방식으로 사용 가능하며, 차이점은 결과값에 InfraType 값에 "k8s"가 포함된 항목만 포함되는 점이 다르다.
예를 들어,
로 요청하는 경우, 아래와 같이, 필터링 및 우선순위 처리된 리스트를 확인할 수 있다.
여기서, 원하는 spec의 ID를 선정하여 k8sClusterDynamic 요청문에 활용하면 된다.
commonImage ID 획득 방법
commonSpec
를 선정했을 때, 가용한commonImage
를 찾을 수 있다.예를 들어,
를 입력하여 요청한 경우, 아래와 같은 응답을 받을 수 있으며,
응답
details
image
항목에 가용한 image 리스트가 리턴되므로, 이 중에서 선정하여commonImage
로 활용하면 된다.commonImage
는provider
+region
+keyword
형태의 ID값으로 요청 가능하며,Ubuntu22.04
와 같은 형태로guestOS
의 명칭으로 지정할 수도 있다.K8sCluster dynamic 생성 결과 (예시)
요청
결과
details
2) K8sNodeGroup 동적 생성 방법
POST /ns/{nsId}/k8sNodeGroupDynamic를 활용하면, 상기 생성한 K8sCluster를 대상으로 손쉽게 노드그룹을 생성/추가할 수 있다.
3) K8sCluster 생성시 노드그룹 동시 생성 유무에 따른 주의사항
K8sCluster 생성시 CSP에 따라 노드그룹을 함께 생성하기도 하고 그렇지 않기도 하다. 자세한 사항을 PMKS 개발 현황의 NodeGroup 추가 방법 탭을 참고하면 된다.
노드그룹을 함께 생성하지 않는 CSP의 경우 POST /ns/{nsId}/k8sCluster/{k8sClusterId}/k8sNodeGroup를 통해 노드그룹을 생성해야 정상적으로 K8sCluster를 활용할 수 있다.
4) K8sCluster 상태 조회, 노드그룹(K8sNodeGroup) 추가/삭제, K8sCluster 삭제
5) K8sCluster Dynamic에 의해서 자동 생성된 자원 정리
Network
,SG
,SSHKey
등이 생성된다.DELETE /ns/{nsId}/sharedResources 를 사용하여, 해당 자원들을 정리하는 것이 필요하다.
Beta Was this translation helpful? Give feedback.
All reactions