YAML 편집기
YAML은 Kubernetes에서 리소스를 선언적으로 정의하는 표준 형식입니다. COP Console의 YAML 편집기는 웹 기반의 코드 편집기를 제공하며, 구문 하이라이팅, 자동 들여쓰기, 오류 표시 등의 기능을 통해 효율적인 YAML 편집 경험을 제공합니다.
개요
YAML 편집기는 다음과 같은 상황에서 사용합니다.
- 새로운 Kubernetes 리소스를 YAML로 직접 생성할 때
- 기존 리소스의 YAML을 확인하고 수정할 때
- 폼 편집기에서 지원하지 않는 고급 설정을 변경할 때
- 외부에서 작성한 YAML 매니페스트를 클러스터에 적용할 때
편집 화면 구성
편집기 영역
화면의 주요 영역을 차지하는 코드 편집기입니다. YAML 내 용을 입력하고 수정하는 공간으로, 줄 번호가 좌측에 표시됩니다. 편집기 내에서 마우스와 키보드를 사용하여 텍스트를 선택, 복사, 붙여넣기할 수 있습니다.
도구 모음
편집기 상단에 위치한 도구 모음에서는 다음 기능을 사용할 수 있습니다.
- Apply 버튼: 현재 YAML을 클러스터에 적용합니다.
- 폼 전환 버튼: 폼 편집기로 전환합니다 (지원되는 리소스 타입인 경우).
- Managed Fields 토글: Managed Fields 표시/숨기기를 전환합니다.
새 리소스 생성
리소스 목록 화면 상단의 + 버튼을 클릭하면 YAML 편집기가 열립니다.
빈 YAML 템플릿에서 시작
YAML 편집기가 열리면 선택한 리소스 타입에 맞는 기본 YAML 템플릿이 제공됩니다. 템플릿에는 apiVersion, kind, metadata 등 필수 필드가 미리 채워져 있으며, 사용자는 이를 기반으로 필요한 설정을 추가합니다.
예를 들어, 새 Deployment를 생성하는 경우 다음과 같은 기본 구조가 제공됩니다.
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-deployment
namespace: default
spec:
replicas: 1
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-container
image: nginx:latest
외부 YAML 붙여넣기
다른 도구나 문서에서 작성한 YAML 매니페스트를 편집기에 직접 붙여넣어 사용할 수 있습니다. 기존 템플릿 내 용을 모두 선택(Ctrl+A)한 후 외부 YAML을 붙여넣으면 됩니다.
기존 리소스 편집
기존 리소스의 상세 화면에서 편집 버튼을 클릭하면 YAML 편집기가 열립니다.
현재 YAML 로드
편집기가 열리면 클러스터에서 가져온 리소스의 현재 YAML이 자동으로 로드됩니다. 여기에는 리소스의 모든 필드가 포함되며, status 필드와 같이 서버에서 관리하는 읽기 전용 필드도 함께 표시됩니다.
수정 및 Apply
YAML 내용을 원하는 대로 수정한 후 Apply 버튼을 클릭하여 변경 사항을 클러스터에 적용합니다. Apply는 kubectl apply와 동일한 방식으로 동작하며, 변경된 필드만 서버 측에서 업데이트됩니다.
참고:
metadata.name,metadata.namespace,apiVersion,kind등 불변(Immutable) 필드는 수정할 수 없습니다. 이러한 필드를 변경하려고 하면 Apply 시 오류가 발생합니다.