일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- web3@1.2.8
- solidity
- BlockChain
- apache-spark
- python3
- Greeter
- pyspark
- geth
- Histogram
- remix
- MAP
- 이더리움
- word count
- RDD
- stopwords
- lambda
- macbook
- docker
- web3
- bigdata
- Python
- Apache Spark
- 블록체인
- OpenCV
- node
- jenv
- Ethereum
- nodejs
- HelloWorld
- Spark
- Today
- Total
이것저것 프로그래밍 정리(Macbook)
on-premise 환경에서 쿠버네티스(k8s) 설치하기(Ubuntu 18.04.5 LTS) 본문
이번 글에서는 쿠버네티스를 클라우드 환경이 아닌 컴퓨터 두대를 사용해서 on-premise 환경에서 설치하는 방법에 대해 알아보도록 하겠습니다.
개발 환경
computer1 - ubuntu 18.04.5 LTS : master node
computer2 - ubuntu 18.04.5 LTS : worker node
Docker 설치(master, worker node 모두 설치)
쿠버네티스에서 권장하는 docker의 버전인 18.06.2 버젼을 설치해 주도록 하겠습니다.
모든 설치 및 실행은 터미널에서 이루어집니다.
master node를 실행할 컴퓨터와 worker node를 실행할 컴퓨터 두대 모두에 docker를 설치해 주도록 하겠습니다.
# root 진입
$ sudo -i
# package 관리 도구 update
$ sudo apt update
$ sudo apt-get update
# 설치 되어 있는 docker 있으면 삭제
$ sudo apt-get remove docker docker-engine docker.io
# 라이브러리 설치
$ sudo apt-get install apt-transport-https ca-certificates curl software-properties-common -y
# docker 다운로드 링크 추가
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
# package 관리 도구 update
$ sudo apt-get update
# docker 설치
$ sudo apt-get install docker-ce=18.06.2~ce~3-0~ubuntu -y
Docker 데몬 사용 드라이버 변경(master, worker node 모두 변경)
Docker는 기본적으로 데몬 사용 드라이버를 cgroupfs를 사용하고 있습니다.
하지만 쿠버네티스를 사용하기 위해서는 systemd로 변경을 해줘야 합니다.
다음과 같이 변경해주고 데몬을 reload한 후 Docker를 재실행 해주도록 하겠습니다.
$ sudo cat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
EOF
$ sudo mkdir -p /etc/systemd/system/docker.service.d
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
k8s 환경 set up(kubeadm, kubelet, kubectl 설치 - master, worker node 모두 설치)
kubeadm은 쿠버네티스 클러스터를 구축할때 사용하는 커맨드입니다.
kubelet은 쿠버네티스 클러스터에서 실제로 작동하는 구성요소들로 pod 그리고 컨테이너 같은 것들이라 할 수 있습니다.
kubectl은 구축한 쿠버네티스 클러스터와 소통하기 위한 커맨드입니다.
다음 명령어를 통해 kubeadm, kubelet, kubectl을 설치해 주도록 하겠습니다.
$ sudo apt-get update
$ sudo apt-get upgrade
$ curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
$ cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
$ sudo apt-get update
$ sudo apt-get install -y kubelet kubeadm kubectl
$ sudo apt-mark hold kubelet kubeadm kubectl
$ kubeadm version
$ kubelet --version
$ kubectl version
여기까지 k8s를 on-premise 환경에서 설치하는 방법에 대해 알아보았습니다. 다음 글에서는 centos 환경에서 설치하는 방법을 알아보는 글과, 실제로 쿠버네티스 클러스터를 구성해 보도록 하겠습니다.
VM 우분투에서 진행할시 같은 방법으로 진행하면 됩니다.