centos 7 시스템 에 rancher2. x 를 배치 하고 k8s 군집 을 만 듭 니 다.
7564 단어 rancher2.xk8sdockerRancher
본문 목표:
1. rancher - server UI 배치, 버 전: 2.3.52, rancher 를 통 해 k8s 클 러 스 터 crystal - cluster 3 배치, k8s 클 러 스 터 crystal - cluster 상부 nginx 인 스 턴 스
2 배치 의 몇 가지 전제:
1. 공식 적 인 요구 에 따라 rancher 버 전이 지원 하 는 시스템 버 전과 docker 버 전 을 선택 합 니 다.2. ntp 를 설치 하여 모든 서버 간 의 시간 동기 화 를 확보 합 니 다. 그렇지 않 으 면 인증서 인증 오류 가 발생 할 수 있 습 니 다.3. 방화벽 과 selinux 를 닫 습 니 다.(방화벽 을 열 려 면 방화벽 에 rancher 에 필요 한 포트 를 놓 으 려 면 서버 와 Helm (Kubernetes 의 패키지 관리 도구) 의 통신 을 확보 하 는 기본 방화벽 규칙 을 다시 한 번 확인 하 는 것 이 좋 습 니 다) 4. 모든 노드 서버 가 정적 IP 를 분배 하고 노드 에 분 배 된 IP 가 동일 하도록 DHCP 를 유지 해 야 합 니 다.5. 모든 노드 의 hostname 은 밑줄 '' 을 가지 고 있 지 않도록 주의 하 세 요.(상기 내용 은 홈 페이지 링크 를 참조 하 시기 바 랍 니 다.https://rancher.com/docs/rancher/v2.x/en/installation/requirements/)
세 번 의 실험 환경 묘사
시스템 버 전: CentOS Linux release 7.7.1908 (Core) docker 버 전: 18.06.2 - cerancher - server 버 전: 2.3.5 (현재 최신 버 전) 호스트 할당 및 설정:
hostname
IP
rancher 역할
시스템 설정 (cpu / mem)
kubernets 군집 캐릭터
test102
10.0.0.102
rancher-server
1C/1G
없다
test103
10.0.0.103
rancher-node1
1C/2G
etcd、Control Plane、Work
test104
10.0.0.104
rancher-node2
1C/1G
Work
환경 준비
1. yum 기본 설치 버 전 은 13 버 전 으로 docker 를 18.06.2 - ce 버 전 으로 업그레이드 합 니 다.
1) 3.10 :uname -a
2) :yum remove -y docker docker-common docker-selinux docker-engine # docker , docker
3) :yum install -y yum-utils device-mapper-persistent-data lvm2
4) Docker yum :yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
5) docker :yum list docker-ce --showduplicates | sort -r
6) docker:yum -y install docker-ce-18.06.2.ce-3.el7
7) :systemctl enable docker
8) :systemctl start docker
9) :systemctl status docker
10) :docker version
2. docker 에 아 리 소스 가속 기 를 설정 합 니 다: 1) 설정 파일 생 성 / 수정 / etc / docker / daemon. json
[root@test102 ~]# cat /etc/docker/daemon.json # , ,
{
"registry-mirrors": ["https://fzhifedh.mirror.aliyuncs.com"]
}
[root@test102 ~]#
2) 새로 수 정 된 설정 을 다시 불 러 오고 docker 를 다시 시작 합 니 다.
systemctl daemon-reload
systemctl restart docker
3. ntp 를 설치 하여 서버 시간 동기 화 확보:
yum -y install ntp
systemctl enable ntpd
systemctl start ntpd
timedatectl set-ntp yes
ntpdate -u cn.pool.ntp.org
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
watch -n 1 'date'
환경 부
1 rancher 서버 배치
1.1 명령:
# docker run -d --restart=unless-stopped -p 8080:80 -p 8443:443 -v /data/rancher/ranchermaster:/var/lib/rancher rancher/rancher:latest
1.2 포트 설명:1.3 용기 가 일어 날 때 까지 기다 리 면 접근 할 수 있다.
1.4 IP + 포트 통과 (https://10.0.0.102/) admin 사용자 의 암 호 를 방문 하고 설정 합 니 다.
1.5 암 호 를 설정 한 후 rancher - server 를 설정 하 는 URL 주소 로 이동 합 니 다.여 기 는 공공 네트워크 IP / 내부 네트워크 IP 를 사용 할 수 있 습 니 다. 다른 rancher - node 가 이 URL 을 통 해 rancher - server 에 접근 할 수 있 도록 보장 하면 됩 니 다.특별한 네트워크 원인 이 없다 면 내부 네트워크 IP 를 사용 하 는 것 이 좋 습 니 다.
1.6 "Save URL" 을 클릭 하고 rancher - server 홈 페이지 로 이동 합 니 다.왼쪽 아래 에 현재 rancher - server 버 전 번 호 를 볼 수 있 습 니 다. 오른쪽 아래 에 언어 를 바 꾸 면 클 러 스 터 를 만 들 고 마음껏 놀 수 있 습 니 다.
2 사용자 정의 k8s 클 러 스 터 crystal - cluster 를 만 들 고 node 노드 두 개 를 추가 합 니 다.
2.1 오른쪽 상단 "Add Cluster" 단 추 를 누 르 면 클 러 스 터 생 성:
2.2 사용자 정의 클 러 스 터 를 만 드 는 것 도 선택 할 수 있 고 클 러 스 터 가 져 오 는 것 도 선택 할 수 있 습 니 다.새로운 클 러 스 터 를 만 드 는 것 이 므 로 사용자 정의 (Custom) 를 선택 하 십시오.
2.3 클 러 스 터 관련 정 보 를 설정 하기 시작 합 니 다:
이상 설정 설명: Cluster Name: 클 러 스 터 이름 (crystal - cluster) Member Roles 를 입력 하 십시오. 클 러 스 터 에 접근 하 는 사용자 와 모든 사용자 가 클 러 스 터 에 대한 작업 권한 을 설정 합 니 다. Label & Annotations: 클 러 스 터 에 탭 과 설명 을 설정 하고 필요 에 따라 설정 합 니 다.Kubernetes Options: - > Kubernetes Version: kubernets 버 전 선택 - > Network Provider: 필요 한 네트워크 드라이브 선택 - > Project Network Isolation: namespace 간 네트워크 격 리 설정 - > Cloud Provider: 클 라 우 드 공급 자 선택.본 고 는 VMware 가상 머 신 배 치 를 사용 하여 기본적으로 Private Registry 없 음 을 선택 합 니 다. 개인 미 러 창고 Advanced Options 설정: 사용자 정의 클 러 스 터 파 라 메 터 를 설정 하고 필요 에 따라 설정 합 니 다.Authorized Endpoint: 권한 수여 방문 주소 이상 의 매개 변 수 를 설정 하면 페이지 의 알림 과 자신의 요구 에 따라 해당 하 는 설정 을 할 수 있 습 니 다. 본 실험 은 Cluster Name 을 제외 하고 나머지 는 모두 기본 설정 을 선택 하 였 습 니 다.
2.4 그리고 "Next" 를 누 르 면 다음 단계 에 호스트 명령 을 추가 하고 호스트 역할 을 선택 합 니 다. (호스트 역할 선택, 포트 실행 참고:https://rancher.com/docs/rancher/v2.x/en/installation/references/)
캐릭터 선택: 호스트 마다 여러 캐릭터 를 실행 할 수 있 습 니 다.클 러 스 터 마다 최소한 하나의 Etcd 캐릭터, 하나의 Control 캐릭터, 하나의 Worker 캐릭터 가 캐릭터 를 선택 하면 다음 코드 상 자 는 선택 한 캐릭터 에 따라 호스트 명령 을 생 성 한 다음 명령 을 node 호스트 에 복사 하여 실행 합 니 다 (node 노드 가 지원 버 전의 docker 를 설치 하고 docker 가 running 상태 에 있 는 지 주의 하 십시오).
2.5 캐릭터 를 선택 한 후 명령 을 node 노드 배치 로 복사 합 니 다: test 103 (10.0.0.103), etcd, Control Plane, Work 캐릭터 를 실행 합 니 다.따라서 test 103 에서 이 명령 을 수행 합 니 다.
메모: 만약 에 당신 도 특정한 노드 에 세 개의 역할 을 배치 하 는 것 을 선택 하면 메모리 가 최소 2G 이상 이 어야 합 니 다. 1G 메모리 가 일어 날 수 있 지만 클 러 스 터 가 오래 살 지 못 하면 끊 습 니 다. 어떻게 알 았 는 지 묻 지 마 세 요.
이 단 계 는 설치 해 야 할 구성 요소 가 많아 서 인내심 을 가지 고 좀 더 기 다 려 야 한다.구성 요소 가 설치 되 어 있 을 때 rancher - server 는 다음 과 같은 힌트 를 볼 수 있 습 니 다.
두 번 째 노드 를 계속 추 가 했 습 니 다.test 104 (10.0.0.104) 에서 work 라 는 역할 을 실행 하기 때문에 test 104 에서 이 명령 을 실행 합 니 다.
2.6 "완료" 단 추 를 누 르 고 홈 페이지 로 돌아 가 클 러 스 터 정 보 를 확인 합 니 다.
위의 그림 에 있 는 "2" 를 누 르 면 이 화면 에 들 어가 면 방금 추 가 된 두 노드 의 State, hostname, IP, Roles 등 정보 아래 그림 에 표 시 된 몇 가지 부분 을 볼 수 있 습 니 다. 1. edit: 호스트 를 편집 하고 호스트 에 별명 을 설정 할 수 있 습 니 다. 예 를 들 어 테스트 기 1042, Delete: 이 호스트 3, Edit Cluster 를 삭제 할 수 있 습 니 다. 이 단 추 를 누 르 면방금 호스트 를 만 든 인터페이스 편집 클 러 스 터 로 돌아 갑 니 다.새로운 노드 를 추가 해 야 합 니 다. 여기 서 들 어가 서 호스트 추가 명령 을 찾 을 수 있 습 니 다.
왼쪽 상단 의 클 러 스 터 이름 을 누 르 면 클 러 스 터 에 대응 하 는 계기판 정 보 를 볼 수 있 습 니 다.
이로써 클 러 스 터 추가 가 완료 되 었 습 니 다.
3 크 리 스 탈 - cluster 군집 에서 procject 와 namespace 를 만 듭 니 다.
3.1 procject 생 성: 더 좋 은 관 리 를 위해 rancher 는 kubernetes 의 namespace 에 procject 의 개념 을 밀봉 하고 하나의 procject 는 여러 개의 namespace 를 포함 할 수 있 으 며 먼저 procject 를 추가 할 수 있 습 니 다.3.1.1 프로젝트 / Namespace 를 클릭 하여 프로젝트 창 만 들 기 에 들 어 갑 니 다.
3.1.2 오른쪽 상단 에 있 는 "Add Project" 를 클릭 합 니 다.
3.1.3 Project Name 을 작성 하고 Create 를 누 르 면 "crystal - cluster - project" 라 는 project 를 만 듭 니 다.
그리고 procject - namespaces 페이지 의 끝 에 방금 만 든 procject 를 볼 수 있 습 니 다.
3.2 Namespace: 3.2.1 앞의 이름 규칙 에 따라 "Add Namespace" 를 누 르 면 "crystal - cluster - procject - name space" 라 는 namespace 를 만 듭 니 다.
3.2.2 procject 를 만 드 는 것 과 마찬가지 로 name 만 작성 하고 나머지 설정 은 기본 값 (Container Default Resource Limit 라 는 용기 자원 제한, 정식 환경 에서 설정 을 권장 하고 OOM 위험 을 감소):
procject - namespaces 인터페이스 에서 방금 만 든 namespace 를 볼 수 있 습 니 다:
4 배치 nginx 실례
4.1 방금 만 든 procject 에 먼저 들 어 갑 니 다.
4.2 오른쪽 상단 의 "Deploy" 를 클릭 하여 배 치 를 시작 합 니 다.
4.3 Name, Docker Image, Port Mapping 등 과 관련 된 배치 정 보 를 작성 합 니 다. 완전한 관련 정 보 를 작성 하고 launch 배 치 를 클릭 합 니 다. 뒤의 사각형 상자 에 있 는 환경 변수, 호스트 스케줄 링, 건강 검사, 데이터 볼 륨, 크기 조정 / 업그레이드 전략 은 실제 환경 에서 매우 유용 합 니 다. 기능 은 rancher 1 과 유사 합 니 다. 여 기 는 기본적으로 군말 하지 않 습 니 다.
이후 이 페이지 로 넘 어가 면 상태 가 active 로 변 하 는 것 을 보고 소속 이 성공 합 니 다.
상세 한 화면 에서 이 응용 프로그램의 관련 설정 을 볼 수 있 고 확대 도 할 수 있 습 니 다.
4.4 액세스 인증: nginx 의 IP + 포트 를 통 해 액세스 인증 기능:
여기에 이르다.본문 끝!
끝 에 쓰기:
1. rancher 는 docker 를 관리 하 는 데 실 용적 이 고 세대교체 가 빠 른 편 입 니 다.이전에 rancher 2.1.1 을 배 치 했 는데 인터페이스 와 2.3.5 는 약간의 차이 가 있다.2. 본 고 는 간단 한 입문 작업 을 기록 하 는 백 노트 에 속 하고 더 많은 기능 설명 과 이론 을 통 해 rancher 홈 페이지 와 k8s 관련 홈 페이지 설명 을 볼 수 있다.3. 마지막 으로 환경 차이 든 다른 요소 든 이 방안 에 따라 배치 하면 구덩이 에 부 딪 힐 수 있 으 니 기어 오 르 세 요!화 이 팅!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[K8s學習筆記] 透過depolyment操控pod訂閱patreon即可看到更多文章 Youtube頻道 간단한 배포 만들기 最簡單的deployment就是啟動某個image,然後不帶其他設定 可以透過 kubectl get deployment 檢查deploy的狀態 等到狀態變成...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.