ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [K8S] Kubespray 설정 파일 변경하기
    Kubernetes 2024. 3. 9. 20:32

    Kubespray 내의 다양한 설정 파일을 조작하여 Kubernetes 클러스터를 사용자의 요구 사항에 맞게 자유롭게 조정할 수 있습니다.

    변경한 설정 파일에 맞게 자동으로 설치 및 구성되기 때문에 클러스터의 구성을 쉽게 수정하고 맞춤형 환경을 만들 수 있습니다.

     

    그럼 간단히 몇가지 설정을 변경하여 클러스터를 구성해보도록 하겠습니다!

     

     

     

    k8s-cluster.yml

    ( inventory/mycluster/group_vars/k8s_cluster/k8s-cluster.yml )

    'k8s-cluster.yml' 파일은 Kubernetes 클러스터를 배포하는데 필요한 구성 정보를 담고 있습니다.

    • Container manager 지정
      • 컨테이너 생성, 배포, 실행 등을 관리하는 소프트웨어 ex ) Docker
    ## Default: containerd
    container_manager: docker

    해당 설정으로 배포시 docker 설치 확인

     

     

    • audit 활성화
      • 감사 로그
    # audit log for kubernetes
    kubernetes_audit: true

     

     

    • event 유지 시간 설정 (event 로그 보존 시간)
      • ex ) Pod의 생성, 삭제, 스케일링, 에러 등
    ## Amount of time to retain events. (default 1h0m0s)
    event_ttl_duration: "48h0m0s"

     

     

    • 인증서 자동 갱신
      • 매월 첫 번째 월요일에 자동 갱신
    ## Automatically renew K8S control plane certificates on first Monday of each month
    auto_renew_certificates: true

     

     

     

     

     

    addons.yaml

    ( inventory/mycluster/group_vars/k8s_cluster/addons.yml )

    'addons.yml' 파일은 Kubernetes 클러스터에 추가로 설치되는 애드온(Add-ons) 구성을 담고있습니다.

    • Helm 설치
      • Kubernetes 애플리케이션을 쉽게 배포하고 관리하기 위한 패키지 매니저
    ### addons.yml ###
    helm_enabled: true

    해당 설정으로 배포시 helm 확인

     

     

    • Local Path Provisoner 설치
      • 클러스터 내에서 pv(Persistent Volumes)를 동적으로 생성하고 할당하는 프로비저너
    # Rancher Local Path Provisioner
    local_path_provisioner_enabled: true

     

     

    • Metrics Server 설치
      • 클러스터 내에서 리소스 사용량 및 성능에 대한 정보 수집
        → Pod 및 Node의 CPU, MEMORY 사용량 등 쿼리 가능
    # Rancher Local Path Provisioner
    local_path_provisioner_enabled: true

     

     

    • Nginx Ingress Controller 설치
      • 클러스터에서 서비스를 외부로 노출, HTTP 및 HTTPS 트래픽을 관리하고 라우팅하는 소프트웨어
    # Nginx ingress controller deployment
    ingress_nginx_enabled: true
    
    # 호스트 머신의 네트워크 사용
    ingress_nginx_host_network: true
    
    # 특정 IP로 노출X
    ingress_publish_status_address: ""

     

    해당 설정으로 배포시 ingress-nginx-controller, metrics-server, local-path-provisioner 파드 확인

     

     

     

     

     

     

Designed by Tistory.