정현수
현수 세상
정현수
전체 방문자
오늘
어제
반응형
  • 분류 전체보기 (267)
    • NEXTSTEP 자바스크립트 클린코드 2기 (1)
    • 우테코 4기 (6)
    • 회고록 (5)
    • 개발지식 (6)
    • React (3)
      • React Clone Coding (3)
    • React Native (2)
    • Kubernetes & Docker (36)
      • 궁금한 것 (13)
    • Flutter (2)
    • 알고리즘 (168)
      • 프로그래머스 1단계 (27)
      • 프로그래머스 2단계 (37)
      • 백준 (98)
      • 이론 (6)
    • 자료구조 (3)
    • 유튜브 (1)
    • 책 읽자 (1)
    • 취업준비 (1)
    • 대내 활동 (31)
      • 2022년 겨울방학 알고리즘 특강 (0)
      • 2020년 여름방학 모각코 (13)
      • 2020년 겨울방학 모각코 (13)
      • 웹프로그래밍 상상튜터링 (5)

인기 글

최근 글

공지사항

  • 블로그 이동

태그

  • 쿠버네티스
  • image run
  • image pull
  • 우테코
  • Deployment
  • Kubernetes
  • javascript
  • 공식문서
  • mysql
  • docker
  • replicaset
  • 노드
  • 그리디
  • 이코테
  • 알고리즘
  • 개발지식
  • flutter
  • 파이썬
  • 리액트
  • 디플로이먼트
  • NodePort
  • programmers
  • React
  • Jenkins
  • 모각코
  • 레플리카셋
  • 백준
  • 프로그래머스
  • 자바스크립트
  • kubelet

최근 댓글

블로그 메뉴

  • 홈

티스토리

hELLO · Designed By 정상우.
정현수

현수 세상

[Kubernetes]쿠버네티스 설치부터 배포까지(kubespray 이용)
Kubernetes & Docker

[Kubernetes]쿠버네티스 설치부터 배포까지(kubespray 이용)

2020. 8. 21. 15:57
반응형

멀티 노드를 구현하기 위해서는 여러 대의 서버가 있거나

혹은 가상머신을 설치하여 여러 대의 가상 서버를 구축해야합니다.

1. 가상머신 설치(리눅스기반 설치)

1-1. Virtual Box 설치

https://www.virtualbox.org/wiki/Download_Old_Builds_5_2(Virtual Box 설치 링크)

 

위 링크 접속 후

 

메인 PC의 OS에 맞는 것을 다운로드!

 

1-2. CentOS7 ISO 설치

https://www.centos.org/download/(centOS7 설치 링크)

 

x86_64 ISO 클릭!

 

저기서 아무곳 클릭! (네이버 클릭했음)

 

저기서 맨 위에있는 iso 파일 다운로드 했습니다.

 

적은 용량으로 하고싶다면 밑에 Minimal 버전 iso 파일 다운로드!

 

 

나머지 Virtual box에 centOS7 설정 및 실행은 https://xxsiyoung.tistory.com/2 참조

 

2. SSH 연결 

kubespray는 ansible을 기반으로 하기 때문에 SSH 연결이 되어있어야 합니다.

 

https://amorfati-1000.tistory.com/50(윈도우 SSH 설치 및 연결)

 

마스터 노드가 될 노드에서 key 생성

ssh-keygen -t rsa

마스터로부터 노드에게 key를 복사

ssh-copy-id root@<ip>

 

master에도 ssh-copy-id 작업을 해주어야합니다.

 

3. 마스터 노드 환경 구성

 

마스터 노드에 필요한 패키지들 설치

yum install -y python3, python3-pip

 

4. Kubernetes 설치 전 환경설정

4-1. /proc/sys/net/ipv4/ip_forward 활성화 (Master Node & Worker Node)

sysctl net.ipv4.ip_forward=1

4-2. firewalld 중지 및 disable (Master Node & Worker Node)

systemctl stop firewalld && systemctl disable firewall

4-3. swap 메모리 중지

swapoff -a

4-4. selinux off

setenforce 0

vi /etc/selinux/config 파일을 확인!

5. Kubespray 설치 및 구성

5-1. kubespray git clone 하기

sudo git clone https://github.com/kubernetes-sigs/kubespray
cd kubespray

 

5-2. 필요한 패키지들 설치

sudo pip3 install -r requirements.txt

 

 설치 성공했을 때

5-3. inventory.ini 파일 정의

- kubespray/inventory/sample/inventory.ini 파일 정의

예시입니다.

5-4. 필요한 addons 설정

- kubespray/inventory/sample/group_vars/k8s-cluster/addons.yml 파일

 

helm repo (쿠버네티스의 패키지 매니저)

metrics_server(쿠버네티스 리소스 현황 및 모니터링 패키지)

ingress_controller(쿠버네티스 네트워크 관련 오브젝트 패키지)

 

true로 바꿔주기

 

5-5. iptables로 바꿔주기

- kubespray/inventory/sample/group_vars/k8s-cluster/k8s-cluster.yml 파일

ipvs => iptables 로 바꿔주기

 

5-6. ansible-playbook 실행

- kubespray 폴더(cluster.yml 파일이 존재하는 곳)에서 실행

 

ansible-playbook --flush-cache -K -b --become-user=root -i inventory/sample/inventory.ini cluster.yml -v

 

이렇게 하면 설치가 진행됩니다.

그리고 전부 완료가되면 쿠버네티스가 구축이 완료가 된 것입니다. 

 

설치 도중 & 이후 참고 사이트

설치시 나타나는 오류 해결 했던 것들

https://junghyeonsu.tistory.com/49

PHP - Redis 이용한 방명록 애플리케이션 배포하기

https://kubernetes.io/ko/docs/tutorials/stateless-application/guestbook/

[Kubernetes 공식문서 파헤치기] Redis를 사용한 PHP 방명록 애플리케이션 배포하기 + PV, PVC, Affinity 사용해보기

쿠버네티스 고가용성 테스트하기 (방명록 애플리케이션 기준)

https://junghyeonsu.tistory.com/58

쿠버네티스 CI/CD 맛보기

https://m.blog.naver.com/PostView.nhn?blogId=alice_k106&logNo=221562805601&proxyReferer=https:%2F%2Fwww.google.com%2F

 

 

반응형

'Kubernetes & Docker' 카테고리의 다른 글

[Amazon] EC2 인스턴스에 S3 스토리지 마운트하기  (1) 2020.08.27
[Kubernetes]쿠버네티스 CI/CD에 대해서  (0) 2020.08.24
[Kubernetes]쿠버네티스 컨트리뷰터 되기 : 쿠버네티스 문서에 기여하기  (0) 2020.08.19
[Kubernetes 공식문서 파헤치기] 고가용성 테스트(pod 부하분산, auto scaler 적용하기)  (2) 2020.08.13
[Kubernetes 공식문서 파헤치기] Redis를 사용한 PHP 방명록 애플리케이션 배포하기 + PV, PVC, Affinity 사용해보기  (0) 2020.08.10
    정현수
    정현수
    깃허브 : https://github.com/junghyeonsu 개인 블로그 : https://junghyeonsu.com/ (양질의 글을 올리려고 항상 노력합니다.)

    티스토리툴바