Packer 사용자 정의 미 러 를 이용 하여 용기 클 러 스 터 를 만 듭 니 다.

아 리 클 라 우 드 용기 서비스 Kubernetes 클 러 스 터 는 CentOS 운영 시스템 을 지원 하고 대부분 상황 에서 고객 의 요 구 를 만족 시 킬 수 있 습 니 다.그러나 일부 고객 들 은 업무 시스템 이 운영 체제 에 대한 의존 도가 높 기 때문에 일부 운영 체제 의 매개 변 수 를 맞 추 려 면 사용자 정의 미 러 로 Kubernetes 군집 을 만 들 수 있다.
사용자 정의 운영 체제 미 러 를 만 드 는 방법 은 두 가지 가 있 습 니 다. 하 나 는 콘 솔 에서 ECS 에 스냅 샷 을 만 드 는 방식 으로 미 러 를 만 드 는 것 입 니 다. 아 리 클 라 우 드 CentOS 를 기반 으로 운영 체제 에 대한 맞 춤 형 업 데 이 트 를 미 러 로 만 들 면 됩 니 다.그러나 이런 방식 의 불편 한 점 은 운영 체제 미 러 가 업 데 이 트 될 때마다 수 동 으로 한 번 씩 조작 해 자동화 하기 어렵 다 는 점 이다.또한 기 존의 Kubernetes 노드 에서 미 러 를 만 들 려 면 Docker, Kubelet 등 을 깨끗이 정리 해 야 미 러 를 만 들 수 있 고 절차 가 번 거 롭 고 빠 지기 쉽다.
또 다른 방식 은 본 고 에서 소개 한 Packer 로 미 러 를 구축 하 는 것 이다.관련 참고 문서: Packer 를 사용 하여 사용자 정의 미 러 를 만 듭 니 다.Packer 로 미 러 를 구축 하 는 장점 은 구축 방식 을 자동화 할 수 있 고 구축 에 필요 한 매개 변수 파일 에는 깨끗 한 기본 미 러 에 대한 수정 이 포함 되 어 있 으 며 한눈 에 알 수 있 으 며 설정 을 버 전 으로 관리 할 수 있다 는 것 이다.나중에 새로운 미 러 를 구축 해 야 합 니 다. 설정 을 바 꾸 고 Packer 구축 을 다시 실행 하면 됩 니 다. 매우 편리 하고 생산 환경 에서 사용자 정의 미 러 를 사용 하 는 추천 방식 입 니 다.
그렇다면 용기 서비스 클 러 스 터 를 위 한 Packer 설정 모델 이 있 습 니까?용기 서비스 팀 이 오픈 한 ack - image - builder 는 이러한 예제 항목 입 니 다.다음은 우리 함께 실천 해 봅 시다.
패 커 설치
공식 문서 에 따라 Packer 를 설치 할 수 있 습 니 다. https://www.packer.io/intro/getting-started/install.html 。
사용자 정의 미 러 만 들 기
클론 ack - image - builder 프로젝트 는 로 컬 에 있 습 니 다. config 와 scripts 디 렉 터 리 아래 에 예제 맞 춤 형 스 크 립 트 가 있 습 니 다. 독 자 는 자신의 수요 에 따라 업데이트 할 수 있 습 니 다.
$ git clone https://github.com/AliyunContainerService/ack-image-builder.git
$ cd ack-image-builder
ack-image-builder $ tree
.
├── LICENSE.txt
├── README.md
├── ack-centos.json
├── config
│   └── default.sh
└── scripts
    ├── cleanUpKerneles.sh
    ├── reboot.sh
    ├── updateKernel.sh
    └── verify.sh

2 directories, 8 files
ack-centos.json 생 성 된 사용자 정의 미 러 를 어느 구역 에 존재 하 는 지 설정 할 수 있 습 니 다 (예시 에서 cn-hangzhou).
{
  "variables": {
    "region": "cn-hangzhou",
    "image_name": "ack_test_image{{timestamp}}",
    "source_image": "centos_7_06_64_20G_alibase_20190218.vhd",
    ...
  },

알 리 클 라 우 드 계 정의 AK 를 설정 하고 빌 드 명령 을 수행 합 니 다.
export ALICLOUD_ACCESS_KEY=XXX
export ALICLOUD_SECRET_KEY=XXX
packer build ack-centos.json

약 7 - 8 분 동안 새로운 사용자 정의 미 러 가 구축 되 었 습 니 다. ECS 콘 솔 에 들 어가 새로 생 성 된 미 러 를 볼 수 있 습 니 다.
사용자 정의 미 러 를 이용 하여 용기 클 러 스 터 를 만 듭 니 다.
사용자 정의 미 러 화이트 리스트 개통
독자 가 사용자 정의 미 러 능력 을 시도 하려 면 먼저 작업 서 를 작성 해 용기 서비스 콘 솔 에 사용자 정의 미 러 의 화이트 리스트 를 개설 해 야 한다.
용기 클 러 스 터 만 들 기
화이트 리스트 개통 후 용기 서비스 콘 솔 진입 https://cs.console.aliyun.com/#/k8s/cluster/listKubernetes 군집 을 만 듭 니 다. 사용자 정의 미 러 가 있 는 곳 을 선택 하 십시오. 예제 에 서 는 cn - hangzhou 입 니 다.
클 러 스 터 를 만 드 는 페이지 에서 '고급 옵션 표시' 를 누 르 면 '사용자 정의 미 러' 선택 인터페이스 가 나타 납 니 다.
선택 에서 새로 만 든 미 러 를 찾 을 수 없다 면 클 러 스 터 와 사용자 정의 미 러 가 같은 지역 에 있 는 지 확인 하 십시오.
사용자 정의 미 러 를 선택 한 후 클 러 스 터 를 만 들 려 면 사용자 정의 미 러 클 러 스 터 를 만 들 수 있 습 니 다.
군집 확장 과 자동 신축
사용자 정의 미 러 를 사용 하여 클 러 스 터 를 만 든 후 클 러 스 터 의 확장 과 자동 신축 에 사용 되 는 것 은 모두 사용자 정의 미 러 입 니 다.
Terraform 에서 사용자 정의 미 러 지원
Terraform 을 이용 하여 용기 클 러 스 터 를 만 들 때 도 사용자 정의 미 러 를 사용 할 수 있 습 니 다. 구체 적 인 매개 변 수 는:
image_id - The ID of node image.

관련 링크 는 다음 과 같 습 니 다.
전유 군집:https://www.terraform.io/docs/providers/alicloud/r/cs_kubernetes.html
위탁 관리 클 러 스 터:https://www.terraform.io/docs/providers/alicloud/r/cs_managed_kubernetes.html
토론 하 다.
사용자 정의 미 러 생 성 클 러 스 터 는 운영 체제 에 대한 맞 춤 형 요 구 를 가 진 많은 고객 에 게 큰 편리 성 을 가 져 다 주 었 습 니 다. 사용자 정의 미 러 를 사용 하 는 과정 에서 몇 가지 좋 은 방법 은 아 리 클 라 우 드 가 제공 하 는 최신 CentOS 미 러 에 따라 맞 춤 형 으로 사용자 정의 로 클 러 스 터 를 만 든 후 운영 체제 변경 에 충돌 하지 않도록 충분히 테스트 하 는 것 입 니 다. 실천 에서 도 마찬가지 입 니 다.Packer 예제 항목 을 기반 으로 미 러 를 구축 하 는 것 을 권장 합 니 다.
본문 저자: libinjingshan
원문 을 읽다
본 고 는 운 서 지역사회 의 오리지널 내용 으로 허락 없 이 전재 할 수 없다.

좋은 웹페이지 즐겨찾기