A, KUBE-프록시 개방 IPVS 전제 조건
// 1 넷 필터 모듈의 하중 이 modprobe br_netfilter // 2 프로파일 추가 CAT > /etc/sysconfig/modules/ipvs.modules << EOF의 # / 빈 /! 배시 으로 modprobe - ip_vs 으로 modprobe - ip_vs_rr 으로 modprobe - ip_vs_wrr 될지 modprobe - ip_vs_sh 으로 modprobe - nf_conntrack_ipv4 EOF // 3, 허가 및지도 제공 chmod를 755 /etc/sysconfig/modules/ipvs.modules bash는 /etc/sysconfig/modules/ipvs.modules && && lsmod를 | 그렙 -e -e nf_conntrack_ipv4 ip_vs
둘째, 설치 고정 표시기의 소프트웨어
// 1, 부두 노동자가 의존하고 냠 설치 -y 냠-utils를-장치 - 매퍼 persistent- 데이터 LVM2 // 2, 수입 알리 구름 고정 표시기-CE웨어 하우스를 냠 -config- 관리자 \ --add-의 repo \의 HTTP : // 거울 .aliyun.com / 도커-CE / 리눅스 / CentOS는 / 도커-ce.repo // . 3, 시스템이 설치-CE 도커 업데이트 냠 업데이트 -Y && 냠 -Y docker- 설치 CE를 // . 4, -R &은 uname 버전을 감지 LT, 다음 버전을 설정 한 다음 재부팅 다시 시작 GRUB2 -set- 기본 "에 CentOS 리눅스 (4.4.182-1.el7.elrepo.x86_64) 7 (코어)" // 시작, 5 도커 시작 systemctl // 6, 카이에서 부팅 systemctl을 도커 가능 // 7, 구성 데몬을 고양이 > /etc/docker/daemon.json << EOF { "간부-OPTS"[ "native.cgroupdriver = systemd" , "로그 - 구동기": "JSON 파일" , "로그 OPTS을" { " 최대 크기 ":"100m " } } EOF // 8创建目录存放고정 표시기配置文件 에서 mkdir -p / 등 / systemd / 시스템 / docker.service.d // 9重启고정 표시기 systemctl 데몬 -reload && 다시 시작 systemctl 고정 표시기 &&는 고정 표시기를 사용 systemctl
셋째, 설치 Kubeadm ( 마스터 - 슬레이브 구성 )
// 1 알리 구름 YUM 저장소로 CAT << EOF> /etc/yum.repos.d/ kubernetes.repo [는 Kubernetes] 이름 = 는 Kubernetes base을 = HTTP : // mirrors.aliyun.com/kubernetes/yum/repos /는 Kubernetes-EL7 x86_64- 사용 = 1. gpgcheck = 0 repo_gpgcheck = 0 gpgkey = HTTP : // mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg HTTP : // mirrors.aliyun.com/kubernetes/ 얌 / DOC / - key.gpg RPM 패키지 EOF // (고정 표시기를 생성하기 위해 컨테이너 CRI 상호 작용) 2, 장착 kubeadm (초기화 수단)의 각 노드, kubectl (커맨드 라인 관리 툴) kubelet를 얌1.15.1 kubectl 설치 kubeadm - Y-1.15.1 1.15.1-kubelet // . 3, 카이에서 K8S 부팅 용기 인터페이스를 시작하는 용기와 상호 작용해야하며 포드 예에서 장착함으로써 K8S 아웃 후 Kubeadm 존재 .kubelet 즉, 방식으로 용기의 바닥을 실행, 그래서 카이에서 부팅해야합니다 kubelet.service 수 있도록 systemctl
넷째, 마스터 노드를 초기화 ( 마스터 )
1 미러 도입
Xshell의 RZ의 명령
kubeadm-basic.images.tar.gz
2 , 추출
타르 -zxvf kubeadm-basic.images.tar.gz
3 , 가져 오기, 파일 생성 load-images.sh을
4 , 편집 load-images.sh
5 허가 및 실행을 제공
6 다른 노드에 복제,
SCP -r kubeadm-basic.images load-images.sh 루트 @의 K8S-node01 : / 루트 /
노드 가져 오기 ./load-images.sh
7 , 노드 초기화
// 기본 초기화 init 파일을 표시하고 파일 - config.yaml kubeadm 그것을 인쇄 초기화 kubeadm의 설정 인쇄 -defaults> kubeadm-config.yaml을
8 , 원화 kubeadm 초기화 템플릿을 수정
8.1의 IP 주소가 변경 그들의 모르는 ifconfig를을
8.2 버전 번호 변경
8.3 의 추가 포드 세그먼트 : podSubnet : "10.244.0.0/16"
8.4 기본 스케줄링 모드를 수정
--- apiVersion : kubeproxy.config.k8s.io / v1alpha1 종류 : KubeProxyConfiguration의 featureGates : SupportIPVSProxyMode : 진정한 모드 : IPVS
9 으로부터 지정, YAML은 자동 설치 파일을 초기화 인증서를 발급하고, 모든 정보를 기록 kubeadm-init.log을
kubeadm 초기화 --config = kubeadm-config.yaml --experimental 업로드-인증서 표시 | 티 kubeadm-init.log
10 참조 kubeadm-init.log을
11 인증서를 참조
도 12는 로그에 따른 성공 프롬프트 후에
(13) , 참조 노드
네트워크 다섯째, 전개
기타 수필 :
다른 이미지 파일을 복사 SCP -R & LT kubeadm - basic.images는 루트 amdha01 K8S을 load-images.sh @ 루트 / / : wget과의 HTTPS // raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel. YML의 노드가 클러스터에 조인 조인 kubeadm - 192.168.100.179:6443 토큰 abcdef.0123456789abcdef \ 운세 - 더 CERT-CA-token- 2bb6e02e45b59bdba86e0478b60d984730995924379c2973a4049a601316689f : 해시 SHA256 // 보기 로그인 정력 kubeadm - init.log // 보기 노드 정보 포드를 얻을 수 kubectl을 -n kube- 시스템 POD GET kubectl -n -w KUBE-시스템을 // 모니터링 POD는 GET kubectl -n -o KUBE 시스템 전체 // 세부 // 파일을 저장 MV 설치 -k8s /는 / usr / 로컬 / 수정 창을 가지고 nmtui 명령
링크 : https://www.bilibili.com/video/av66617940/?p=7