rancher 설치
Official site docs : https://rancher.com/docs/rancher/v2.x/en/
참고: https://rancher.com/docs/rancher/v2.x/en/installation/single-node/single-node-install-external-lb/
docker-compose 를 이용하여 blog 및 docs Site 를 운영 하고 있습니다.
사용량이 적은 Micro service 의 경우 크게 문제는 없지만 서비스가 늘어 갈수록 다소 부족함을 느껴
뒤늦게 알게된 rancher 를 테스트 하고 있습니다.
일반적인 설치와 기본 기능들만 테스트 하며 여러대의 docker 의 경우 별도로 포스팅 하겠습니다.
- rancher 설치전 docker Version 을 확인하여 rancher 지원여부를 확인해야 합니다.
- 만약 지원 하지 않는 버전의 docker인 경우 삭제 / 재설치를 먼저 진행 해야 합니다.
- 자세한 내용은 다음 site 를 통해 확인 할수 있습니다. https://rancher.com/docs/rancher/v1.6/en/hosts/#supported-docker-versions
1.docker 삭제후 재설치
rancher 에서 지원 하지 않는 docker version 을 사용할 경우 docker 를 삭제 합니다.
[root@CentOS7 ~]# yum remove docker-ce-* [root@CentOS7 ~]# curl https://releases.rancher.com/install-docker/18.06.sh | sh [root@CentOS7 ~]# docker version Client: Version: 18.06.3-ce API version: 1.38 Go version: go1.10.3 Git commit: d7080c1 Built: Wed Feb 20 02:26:51 2019 OS/Arch: linux/amd64 Experimental: false Server: Engine: Version: 18.06.3-ce API version: 1.38 (minimum version 1.12) Go version: go1.10.3 Git commit: d7080c1 Built: Wed Feb 20 02:28:17 2019 OS/Arch: linux/amd64 Experimental: false [root@CentOS7 ~]#
2.rancher 설치
주의!!! rancher 에서 지원 하는 docker Version 을 사용 해야 합니다.
[root@CentOS7 ~]# docker run -d --restart=unless-stopped -p 8080:8080 rancher/server 설치 완료 [root@CentOS7 ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES fda18a057b90 rancher/server "/usr/bin/entry /usr…" 11 seconds ago Up 9 seconds 3306/tcp, 0.0.0.0:8080->8080/tcp admiring_meitner [root@CentOS7 ~]#
3. host:8080 으로 접속 합니다.
4.INFRASTRUCTURE 를 클릭합니다.
5. Add Host 를 클릭합니다.
6. Save 를 클릭 합니다.
테스트로는 Single node 로 테스트 합니다.
7.IP 정보를 입력합니다.
8.스크립트를 복사하여 실행 합니다.
9. 터미널 에서 스크립트를 실행 합니다.
[root@CentOS7 ~]# sudo docker run -e CATTLE_AGENT_IP="192.168.0.10" --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher \ rancher/agent:v1.2.11 http://192.168.0.10:8080/v1/scripts/E0A2CBD52872D58CC86C:1546214400000:EIL0DLMlcfxqiOLg3bxlr9chelc
10. rancher agent 확인
[root@CentOS7 ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES fc16c6b8a09c rancher/agent:v1.2.11 "/run.sh run" 4 seconds ago Up 3 seconds rancher-agent fda18a057b90 rancher/server "/usr/bin/entry /usr…" 12 minutes ago Up 12 minutes 3306/tcp, 0.0.0.0:8080->8080/tcp admiring_meitner [root@CentOS7 ~]#
11. rancher 상태 확인
rancher agent 가 설치 되고 나면 INFRASTRUCTURE 에서 상태를 확인 할수 있습니다.
정상구동이 안될시 docker version 을 확인 해야 하며, docker 재설치가 필요 합니다.
rancher 지원 docker version 확인 https://rancher.com/docs/rancher/v1.6/en/hosts/#supported-docker-versions 에서 확인할수 있습니다.
12. rancher 확인
single node 구성시 INFRASTRUCTURE 에서 상태를 확인 할수 있습니다.
13. rancher nginx 컨테이너 생성
rancher 를 이용하여 nginx 컨테이너를 생성 합니다. 사전작업으로는 디렉토리 생성 및 nginx config 파일을 생성 해야 합니다.
[root@CentOS7 ~]# mkdir -p /Workspace/nginx/conf [root@CentOS7 ~]# mkdir /Workspace/wiki [root@CentOS7 ~]# vi /Workspace/nginx/conf/default.conf server { listen 80 default_server; server_name localhost _; index index.html index.htm; root /code; location / { autoindex on; } }
14.rancher 에 접속 하여 Service 를 생성 합니다.
Default -> Default 를 클릭하여 Stack 매뉴어 들어 갑니다.
Add Service 를 클릭하여 nginx Service 를 생성 합니다.
15. Add Service 생성
Name / Select Image / port Map 를 설정합니다.
16. Volumes 탭 설정
기존에 생성해 놓은 디렉토리를 연결 합니다.
17. Nginx Service 상태 확인
Create 를 클릭하면 rancher 에서 컨테이너를 생성 합니다.
- nginx 컨테이너를 생성중입니다.
- nginx 컨테이너를 생성 완료 하였습니다.
- web-site 확인
IP 로 접속하면 nginx Default 디렉토리인 /Workspace/wiki 디렉토리 내용을 확인 할수 있습니다.
간단한 docs 를 운영할때는 이정도 설정이면 충분 합니다.