Rancher 설치

7924 단어 rancherkubernetes

개요


  • k8s 테스트 환경 구축
    Rancher 설치

  • 구축 목차


  • 전체 목차

  • 환경


  • Rancher: v2.6.3
  • kubernetes(Client): v1.22.4
  • kubernetes(Server): v1.22.4

  • 구성도





    상세




    이름

    IP(192.168.245.0/24)
    OS


    Rancher01
    Rancher Server\NTP
    192.168.245.101
    CentOS 7.9

    Master01
    Master Node
    192.168.245.102
    CentOS 7.9

    Worker01,2,3 (3대)
    Worker Node
    192.168.245.103,192.168.245.104,192.168.245.105
    CentOS 7.9

    ClientPC
    클라이언트
    DHCP
    우분투 데스크톱 v20.04


    ※OS 버전에 대해서:
    CentOS stream 8로 변경했지만 Rnacher 시작에 실패했기 때문에 7.9 선택
    → 최신 커널로 실패한다는 기사를 보았지만 링크를 잊었다.

    서버 환경 구축


  • Rancher Install Page
    htps : // 란치ぇr. 코 m / 드 cs / 란치 r / v2.

  • 대상 서버:


  • Rancher01
  • Master01
  • Worker01,2,3

  • OS 설정


  • 공통 설정: SELinux 비활성화, Firewall 비활성화
  • Rancher01 전용 Docker 설치
    htps : // / cs. 도 c r. 코 m/엔기네/인 s타르/전과 s/

  • Rancher 환경 구축



    Rancher Server 설치


  • 작업 장소: Rancher01
  • $ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged rancher/rancher
    
    ## 確認 ##
    $ sudo docker ps
    CONTAINER ID   IMAGE             COMMAND           CREATED        STATUS          PORTS                                                                      NAMES
    f23b05b51ac6   rancher/rancher   "entrypoint.sh"   25 hours ago   Up 51 minutes   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   relaxed_faraday
    
    ## 初期パスワード確認 ##
    $ docker logs f23b05b51ac6 2>&1 | grep "Bootstrap Password:"
    2021/12/29 04:10:18 [INFO] Bootstrap Password: xxxxxxxxxxxxxxxxxxxx
    

    Cluster 만들기


  • 작업 위치 : ClientPC
  • 브라우저 시작 → Rancher Server에 액세스
    htps // 192.168.245.101
  • Rancher Server 설치에서 확인한 초기 암호를 입력하고 Log in with Local User를 클릭합니다.
  • 다음과 같이 설정하고 Continue 클릭
    · [Set a specific password to use] 선택 → 비밀번호 설정
    · [I agree to the Terms...] 체크
  • [Create] 클릭
  • RKE2/K3s 사용 > Custom 클릭
  • 다음과 같이 설정하고 [Create] 클릭
    · [Cluster Name] 설정
    · [NGINX Ingress] 체크를 해제
    → Ingress는 수동으로 설정하기 때문에 제거했지만 기본 Ingress를 사용하는 경우 설치할 수 있습니다.
  • Master Node 용 명령 작성 : [etcd] 및 [Control Plane] 만 체크 → 명령을 메모장에 복사
    ※ 같은 순서로 Worker Node용 커맨드 작성: [Worker]만 체크 → 커맨드를 메모장에 복사

  • Master Node 구축


  • 작업 장소: Master01
    메모장에 복사 한 Master Node 명령을 실행

  • Master01
    $ curl -fL https://192.168.245.101/system-agent-install.sh | sudo  sh -s - --server https://192.168.245.101 --label 'cattle.io/os=linux' --token xxxxxxxxxxxx --ca-checksum xxxxxxxxxxxxxxxxxx --etcd --controlplane
    

    Worker Node 구축


  • 작업 장소: Worker01,2,3
    메모장에 복사 한 Worker Node 명령을 실행

  • Worker01,2,3
    $ curl -fL https://192.168.245.101/system-agent-install.sh | sudo  sh -s - --server https://192.168.245.101 --label 'cattle.io/os=linux' --token xxxxxxxxxxxxxxxxxx --ca-checksum xxxxxxxxxxxxxxxxxxxxxx --worker
    

    Node 구축 완료 확인


  • 작업 위치: ClientPC
  • 메뉴에서 내가 만든 클러스터 선택
  • [Nodes] 클릭 → 모든 노드가 Active인지 확인

  • ClientPC(작업 단말기) 설정


  • 작업 위치 : ClientPC
    kubectl 명령 다운로드 및 PATH 설정
    htps : // 곰팡이 s. 이오/도 cs/타 sks/와 오/s
  • $ curl -LO https://dl.k8s.io/release/v1.22.4/bin/linux/amd64/kubectl
    $ chmod +x ./kubectl
    $ sudo mv ./kubectl /usr/local/bin/
    $ kubectl version --short
    Client Version: v1.22.4
    ..........
    

    Kubeconfig 파일 저장
  • 메뉴에서 내가 만든 클러스터 선택
  • Copy KubeConfig to Clipboard 클릭
  • config 만들기
    복사한 설정을 config 파일에 붙여넣기
  • $ mkdir ~/.kube
    $ vi .kube/config
    $ cat .kube/config
    apiVersion: v1
    kind: Config
    clusters:
    - name: "obi-cluster"
      cluster:
        server: "https://192.168.245.101/k8s/clusters/c-m-ltmgdtdx"
    
    ..........省略..........
    
    contexts:
    - name: "obi-cluster"
      context:
        user: "obi-cluster"
        cluster: "obi-cluster"
    
    current-context: "obi-cluster"
    
  • 확인
  • $ kubectl version --short
    Client Version: v1.22.4
    Server Version: v1.22.4+rke2r2
    
    $ kubectl get nodes -owide
    NAME       STATUS   ROLES                       AGE   VERSION          INTERNAL-IP       EXTERNAL-IP   OS-IMAGE                KERNEL-VERSION                CONTAINER-RUNTIME
    master01   Ready    control-plane,etcd,master   24h   v1.22.4+rke2r2   192.168.245.102   <none>        CentOS Linux 7 (Core)   3.10.0-1160.49.1.el7.x86_64   containerd://1.5.8-k3s1
    worker01   Ready    worker                      23h   v1.22.4+rke2r2   192.168.245.103   <none>        CentOS Linux 7 (Core)   3.10.0-1160.49.1.el7.x86_64   containerd://1.5.8-k3s1
    worker02   Ready    worker                      23h   v1.22.4+rke2r2   192.168.245.104   <none>        CentOS Linux 7 (Core)   3.10.0-1160.49.1.el7.x86_64   containerd://1.5.8-k3s1
    worker03   Ready    worker                      23h   v1.22.4+rke2r2   192.168.245.105   <none>        CentOS Linux 7 (Core)   3.10.0-1160.49.1.el7.x86_64   containerd://1.5.8-k3s1
    

    좋은 웹페이지 즐겨찾기