[설치] 도커&쿠버네티스 실습 환경 구축
필기자
2023-08-25 13:05
2,302
0
본문
도커&쿠버네티스 환경 구축 세가지 방법
가상머신을 사용하여 도커&쿠버네티스 실습 환경을 구축한 이유
VMware 설치 과정
- vmware 공식 홈페이지 접속 https://www.vmware.com/kr.html
- 제품 클릭후 데스크톱 하이퍼바이저에서 Workstaion Player 클릭
- GO TO DOWNLOADS 클릭
- 다운로드 파일 실행 및 설치
우분투 이미지 다운로드
- https://releases.ubuntu.com/focal/
- 패키지를 최신 상태로 업데이트
- 패키지 관리자가 https를 통해 데이터와 패키지에 접근할 수 있도록 도구 다운로드
- 컨테이너 런타임인 도커 설치
- 도커 서비스 상태 확인
- 우분투 사용자를 도커 그룹에 추가하여 권한 문제로 일어날 수 있는 제약 해결
- 물리 메모리가 부족할 경우를 대비해 만들어 놓은 공간이 스왑 메모리 비활성하기
- 쿠버네티스 리포지토리 지정을 위한 key 발급 및 리포지토리 지정
- 쿠버네티스 패키지 다운로드
- 세팅된 가상머신 설치 경로에서 필요한 노드 수 만큼 폴더 복사
- 복사한 가상머신의 설정 파일을 새로운 가상머신을 생성
- 설정 파일을 기반으로 만들어진 가상머신 이름을 각각 변경하고 실행
- 실행시 옵션 원본 가상 머신의 원본과 같은 상태로 시작할 수 있게 I Copied It 옵션
- 각 가상머신 고정 ip변경
- 각 가상머신 호스트명 변경
- 리눅스 컴퓨터에서 도커 사용
- 가상 머신(VMwaer)과 같은 렌탈 환경에 도커 설치 후 윈도우나 macOS 통해 사용
- 윈도우용/macOS용 도커 사용하기
가상머신을 사용하여 도커&쿠버네티스 실습 환경을 구축한 이유
- 실제 운영 환경을 돈을 아끼면서 유사하게 모방하여 연습할 수 있음
- 사용하기 간편하고 다양한 기능을 제공
- 확장성이 좋고 안정적인 환경을 제공
- 풍부한 지원과 사용자 친화적인 인터페이스로 쉽게 가상 머신을 생성하고 관리할 수 있음
- 기업 수준의 요구사항과 기준을 충족하는 서비스를 제공
VMware 설치 과정
- vmware 공식 홈페이지 접속 https://www.vmware.com/kr.html
- 제품 클릭후 데스크톱 하이퍼바이저에서 Workstaion Player 클릭
- GO TO DOWNLOADS 클릭
- 다운로드 파일 실행 및 설치
우분투 이미지 다운로드
- https://releases.ubuntu.com/focal/
- 위 경로에 가서 Desktop image[Ubuntu 20.04.6 LTS (Focal Fossa)] 다운로드
- 현재 시점 우분투 22.04 버전이 있으나 도커&쿠버네티스 운영을 위해 검증된 20.04.06 버전 설치
우분투 가상 머신 설치(도커&쿠버네티스 템플릿 이미지 만들기)
- 바탕화면에 있는 Vmware Workstation 17 Player 실행 후 새로운 가상머신 생성
- 운영 체제 나중에 설치 체크 후 Next
- 가상 머신에 어떤 운영체제를 설치 할 것인지 선택 후 Next
- 가상 머신 이름과 경로 선택 후 Next
- 가상 머신 하드 디스크 사이즈를 40GB로 설정 후 단일 파일로 저장하는 옵션 선택
- 가상 머신의 하드웨어 사용자 정의 클릭 후
- 다운로드 받은 우분투 이미지 선택
- 가상머신의 네트워크 어댑터 방식을 NAT(Network Address Translation)로 설정 후 close 및 Finish 클릭하여 가상 머신 생성
- IP 패킷에 있는 출발지 및 목적지의 IP 주소와 TCP/UDP 포트 숫자 등을 바꿔 재기록하면서 네트워크 트래픽을 주고 받게하는 기술
- 생성된 master 가상머신 실행
- ubuntu lilux 설치
- 첫 설치 화면에서 next 버튼이 보이지 않을시 조치
- 상단 install 제목 우측 끝 ⓧ 버튼 클릭
- 바탕화면에서 우클릭 후 Display Settings 접근
- 화면 해상도 조정(1280 x 768 추천)
- 해상도 조정후 바탕화면에 있는 install Ubuntu 20.04.6 LTS 클릭, 설치 진행
- 우분투 버전 업그레이드 X
- 소프트웨어 업데이트 필수 아님
도커&쿠버네티스 운영을 위한 공통 템플릿 제작
- 호스트 <-> 게스트 복사 붙여 넣기 기능 활성
user1@myubuntu:~$ sudo apt-get update
user1@myubuntu:~$ sudo apt-get install open-vm-tools-desktop
- 동적IP 해제 후 고정 IP를 할당하기 : ip 주소확인
- gateway 확인 : ip route
- 현재 할당된 ip 확인 :ip addr
- 동적IP 해제 후 고정 IP를 할당하기 : netplan설정
- sudo nano /etc/netplan/01-network-manager-all.yaml
- sudo netplan apply
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
ethernets:
ens33:
dhcp4: no
dhcp6: no
addresses: [192.168.74.128/24]
gateway4: 192.168.74.2
nameservers:
addresses: [192.168.74.2]
- 패키지를 최신 상태로 업데이트
- sudo apt-get update && sudo apt-get upgrade
- 패키지 관리자가 https를 통해 데이터와 패키지에 접근할 수 있도록 도구 다운로드
- sudo apt install apt-transport-https curl
- apt-transport-https: 패키지 저장소와 연결을 암호화하여 외부로부터 무단 접근을 방지
- curl: URL을 통해 데이터를 가져오고 보내는데 사용
- 컨테이너 런타임인 도커 설치
- sudo apt install docker.io
- 다운 중 “계속 하시겠습니까?” 메시지가 나타나면 ‘y’를 입력
- 도커 다운로드 후 sudo systemctl start docker 명령어로 도커 실행
- 재부팅 후에도 서비스가 자동으로 시작되도록 명령어 sudo systemctl enable docker
- 도커 서비스 상태 확인
- sudo systemctl status docker
- active (running) 상태이면 도커가 정상적인 상태
- 우분투 사용자를 도커 그룹에 추가하여 권한 문제로 일어날 수 있는 제약 해결
- sudo usermod -aG docker $USER
sudo usermod -aG docker $USER
#현재세션 새로고침
su - ${USER}
#도커 버전확인
docker --version
#간단한 테스트
docker run hello-world
#Hello from Docker! 출력 확인
- 물리 메모리가 부족할 경우를 대비해 만들어 놓은 공간이 스왑 메모리 비활성하기
- sudo swapoff -a
- sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
- sudo docker info | grep -i cgroup
- cgroup driver가 systemd로 설정되있으면 정상
- sudo nano /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
- sudo mkdir -p /etc/systemd/system/docker.service.d
- sudo systemctl daemon-reload
- sudo systemctl restart docker
- sudo docker info | grep -i cgroup
- 쿠버네티스 리포지토리 지정을 위한 key 발급 및 리포지토리 지정
- curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
- sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
- 쿠버네티스 패키지 다운로드
- sudo apt install kubeadm kubelet kubectl kubernetes-cni
- 다운로드 중 “계속 하시겠습니까?” 메시지가 보이면 ‘y’를 입력후 엔터
- 마스터 노드, 워커 노드 공통 템플릿 완성 가상머신 전원 끄기
- 세팅된 가상머신 설치 경로에서 필요한 노드 수 만큼 폴더 복사
- 복사한 가상머신의 설정 파일을 새로운 가상머신을 생성
- 설정 파일을 기반으로 만들어진 가상머신 이름을 각각 변경하고 실행
- 실행시 옵션 원본 가상 머신의 원본과 같은 상태로 시작할 수 있게 I Copied It 옵션
- 각 가상머신 고정 ip변경
- sudo nano /etc/netplan/01-network-manager-all.yaml
- 아래 내용 기입후 저장 sudo netplan apply로 변경사항 적용
- nameservers의 addresses부분 [8.8.8.8,8.8.4.4] 넣어도 무관함
- 구글에서 제공하는 공개 DNS서비스 아이피 주소, 8.8.8.8(기본 DNS 서버 주소), 8.8.4.4(보조 DNS 서버 주소)
- 각 가상머신 호스트명 변경
댓글목록0