본문으로 바로가기

Raspberry pi4를 활용한 Kubernetes Cluster #1

OS 환경은 Ubuntu 20.04 64bit 라즈베리용에서 진행됨.

호스트네임 수정

sudo vi /etc/cloud/cloud.cfg

preserve_hostname = true

sudo hostnamectl set-hostname 호스트이름

sudo reboot

아이피 설정

sudo vi /etc/netplan/50-cloud-init.yaml

network:
    ethernets:
        eth0:
            dhcp4: false
            # optional: true
            addresses: [172.30.1.1/24]
            gateway4: 172.30.1.254
            nameservers:
                addresses: [168.126.63.1, 168.126.63.2]
    version: 2
    
sudo netplan apply

패키지 업데이트

sudo apt update
sudo apt -y upgrade && sudo systemctl reboot

Kubelet, Kubeadm, Kubectl 설치

sudo apt update
sudo apt -y install curl apt-transport-https
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list

sudo apt update
sudo apt -y install vim git curl wget kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

Cgroup 메모리 구성

cgroup="$(head -n1 /boot/firmware/cmdline.txt) cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1 swapaccount=1"
echo $cgroup | sudo tee /boot/firmware/cmdline.txt

메모리 스왑 비활성화

sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
sudo swapoff -a

커널 모듈 활성화

sudo modprobe overlay
sudo modprobe br_netfilter

sudo tee /etc/sysctl.d/kubernetes.conf<<EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF

sudo sysctl --system

 

'Programming > Kubernetes' 카테고리의 다른 글

Raspberry pi4를 활용한 Kubernetes Cluster #0  (0) 2021.12.14