검색

5.3.3. Go 기반 Operator의 프로젝트 레이아웃

download PDF

operator-sdk CLI에서는 각 Operator 프로젝트에 대해 다양한 패키지 및 파일을 생성하거나 스캐폴드를 지정할 수 있습니다.

5.3.3.1. Go 기반 프로젝트 레이아웃

operator-sdk init 명령을 사용하여 생성된 기본 유형의 Go 기반 Operator 프로젝트에는 다음 파일과 디렉터리가 포함됩니다.

파일 또는 디렉터리목적

main.go

Operator의 기본 프로그램으로, 모든 CRD(사용자 정의 리소스 정의)를 apis/ 디렉터리에 등록하고 controllers/ 디렉터리의 모든 컨트롤러를 시작하는 새 관리자를 인스턴스화합니다.

apis/

CRD의 API를 정의하는 디렉터리 트리입니다. apis/<version>/<kind>_types.go 파일을 편집하여 각 리소스 유형에 대한 API를 정의하고 컨트롤러에서 이러한 패키지를 가져와서 해당 리소스 유형이 있는지 조사해야 합니다.

controllers/

컨트롤러 구현입니다. controller/<kind>_controller.go 파일을 편집하여 지정된 유형의 리소스 유형을 처리하도록 컨트롤러의 조정 논리를 정의합니다.

config/

CRD, RBAC, 인증서를 포함하여 클러스터에 컨트롤러를 배포하는 데 사용하는 Kubernetes 매니페스트입니다.

Makefile

컨트롤러를 빌드하고 배포하는 데 사용하는 대상입니다.

Dockerfile

컨테이너 엔진에서 Operator를 빌드하는 데 사용하는 지침입니다.

manifests/

CRD 등록, RBAC 설정, Operator를 배포로 배포하는 Kubernetes 매니페스트입니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.