CS/Cloud

[클라우드] 쿠버네티스 배포, Kubectl

0m1n 2023. 2. 2. 15:51
728x90
반응형
  • Kubectl : 쿠버네티스 접속 위해 사용
    • Kubectl은 쿠버네티스 CLI를 통해 디플로이먼트를 생성하고 관리하는 툴을 말한다.
  • 환경 변수 세팅 필요
    • Cluster: 컨트롤 플레인에 등록된 노드를 관리하는 정보
    • Credential: 인증에 필요한 자격 증명 등록, 본 셋팅에서는 본인의 컴퓨터에 대한 인증을 등록함
    • Context: Cluster와 Credential을 통해 등록된 유저 정보의 값
  • 쿠버네티스 배포 2가지 방법
    1. apply : 앱을 배포, expose로 서비스 생성 + 외부 연결
    2. yaml 파일 2개로 배포, 1은 배포되는 앱, 연결할 수 있는 포트번호 동일한 내용
    • yaml 파일에 타겟포트 있어서 그것들이 겹쳐 서비스가 자동적으로 yaml보고 서비스 생성
    사용 방법 차이 기억 expose 사용한다 이정도
  • get describe로 정보 조회
    • get은 간단하게, describe는 상세 정보
    • get deployments랑 get deployment <배포이름> 다름
      • deployments 는 배포된 모든 애들 봄
      • deployment 배포이름 : 해당 배포만 봄
  • 서비스 삭제 - delete , remove 아님
  • 로드밸런서 형으로 만드려면 yaml 파일에서 서비스 메니페스트에 type: LoadBalancer 추가
    • kind: deployment application인지 서비스 형태인지 결정
    • metadata.name: 배포되는 앱 이름 붙임
    • metadata.labels: 앱들을 그룹할 수 있는 레이블, 레이블 설정
    • spec.replicas: pod 개수 설정yaml 규칙
    • container.image: 해당하는 도커나 만들어진 컨테이너 저장 경로 등
    • container.name: 컨테이너 이름
    • contianers.imagePullPolicy
      • Always와 ifNotPresent 설정 가능
      • Always: 원격 레지스트리로부터 이미지 항상 다운로드
      • ifNotPresent: 우선적으로 캐싱된 이미지 있으면 해당 이미지 사용, 없으면 원격에서 다운로드
    보고 풀 정도면 됨 내용 주어짐→ 보기중 골라서 쓰면됨

업데이트

  • set : 이미지 경로 붙여줘 설정함
  • rollout : 업데이트나 이력 살펴봄
  • scale: pod개수 조정
  • logs : 기록 저장
728x90
반응형