우분투에 Rancher를 사용하여 Kubernetes 구축

소개



RancherOS + Rancher로 Kubernetes를 구축하고 있었습니다만, Storage계의 어플리케이션이 아직 제대로 움직이지 않았으므로, 일단 Ubuntu에 이행해 구축하고 있으므로 메모 정도로.

사용하는 것


  • 우분투 16.04
  • Cluster로 만들기 때문에 3 인스턴스
  • 버전은 Rancher의 Doc을 참조하여 선택.

  • Docker 17.03.2
  • 이쪽도 Rancher 기준으로.

  • Rancher 2.x

  • 설치하기



    우분투



    적당히 부디.
    인터넷 접속만 확보해 주세요.

    루트가 아닌 사용자로 Docker를 실행하려면 특정 사용자에게 Docker 그룹 권한을 부여하십시오.
    Docker에 액세스하려면 Unix 소켓에 대한 권한이 필요합니다.
    user@rancher01:~$ ll /var/run/docker.sock
    srw-rw---- 1 root docker 0 Jul 23 20:36 /var/run/docker.sock=
    
    # usermod -a -G docker <Username>
    

    도커



    지정된 버전을 설치하는 스크립트가 Rancher에 있으므로 여기를.
    wget https://releases.rancher.com/install-docker/17.03.sh
    sh 17.03.sh
    

    직접 실행해도 OK이지만 내용을 체크하고 싶었으므로 일단 wget하고 확인 후에 실행하고 있습니다.
    실행 로그는 생략하지만 docker version의 결과가 표시되면 OK.
    + sudo -E sh -c docker version
    Client:
     Version:      17.03.2-ce
     API version:  1.27
     Go version:   go1.7.5
     Git commit:   f5ec1e2
     Built:        Tue Jun 27 03:35:14 2017
     OS/Arch:      linux/amd64
    
    Server:
     Version:      17.03.2-ce
     API version:  1.27 (minimum version 1.12)
     Go version:   go1.7.5
     Git commit:   f5ec1e2
     Built:        Tue Jun 27 03:35:14 2017
     OS/Arch:      linux/amd64
     Experimental: false
    

    수동으로도 한 번 두드려 보면 좋다고 생각합니다.

    Rancher



    Docker가 움직이면 Rancher 응용 프로그램을 시작합니다.
    $ sudo docker run -v /opt/mysql:/var/lib/mysql -d --restart=unless-stopped -p 8080:80 -p 8443:443 rancher/rancher
    

    Rancher가 사용하는 mysql 데이터를 노드 측에 저장하여 컨테이너의 데이터 라이프 사이클에서 분리합니다.
    노드에서 8443이 Listen되면 브라우저에서 열면 Rancher의 WebUI에 연결됩니다.

    Kubernetes 클러스터 구축



    WebUI의 이미지까지 붙여 가면 번거롭기 때문에 적당하게 씁니다만, 클러스터의 추가로 「Custom」을 선택해, 각 노드의 CLI로 화면상에 표시되는 커멘드를 흘려 넣으면 나머지는 마음대로 Rancher의 Agent가 빌드를 해줍니다.
  • 글로벌 메뉴에서 클러스터 추가 버튼을 누르십시오.
  • 사용자 정의를 선택하고 클러스터 이름을 입력하고 하단의 다음
  • 노드 롤 프레임에서 Controller와 Etcd도 체크.
  • 노드 주소에 IP 주소 입력
  • 노드간의 통신에 이용하기 때문에 소통을 취할 수 있도록 합시다.

  • 페이지의 중간에 있는 투입용 커멘드를 카피해, CLI 로 각 노드에 두드린다.

  • 이렇게하면 Rancher-agent 컨테이너가 시작되어 Kubernetes 클러스터를 자동으로 구축합니다.

    문제없이 기동해 오면 대시보드가 ​​올 그린인 느낌이 됩니다.



    결론



    Kubernetes를 쉽게 구축할 수 있는 다양한 도구가 있지만 개인적인 관심사로 Rancher를 살펴보았습니다.

    솔직히 Rnacher의 대시보드로는 볼 수 없는 정보가 상당히 있으므로 결국 kubectl과 병용하고 있는 상황입니다만, 오이타 시각적이고 편한 것은 확실하네요.

    HELM 등도 포함하여 더욱 발전하고 안정되면 서비스로 이용하기 쉬워지기 때문에 앞으로 기대! 라는 기분입니다.

    좋은 웹페이지 즐겨찾기