반응형

The network must be deployed before any applications. Also, CoreDNS will not start up before a network is installed. kubeadm only supports Container Network Interface (CNI) based networks (and does not support kubenet).

https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/#pod-network

 

Creating a single control-plane cluster with kubeadm

 

kubernetes.io

클러스터를 생성하기 전에 네트워크가 완전히 연결되어있어야 한다. 포드 간 네트워크 연결을 위해 포드-네트워크-애드온 중 Calico를 선택했다. 우선 단일 클러스터 생성 및 Calico 설치를 진행해보았다.

아래 설치 내용은 다음 사이트에서 확인 할 수 있습니다. 

https://docs.projectcalico.org/v3.11/getting-started/kubernetes/

 

Quickstart for Calico on Kubernetes

Quickstart for Calico on Kubernetes Overview This quickstart gets you a single-host Kubernetes cluster with Calico in approximately 15 minutes. You can use this cluster for testing and development. To deploy a cluster suitable for production, refer to Inst

docs.projectcalico.org

=============================

*20200109 추가

firewalld, swap off

# swapoff -a

# systemctl stop firewalld

# systemctl disable firewalld 

=============================

우선 제어평면노드(etcd, API 서버 등) 초기화를 진행합니다.

1. 제어평면노드 초기화 

sudo kubeadm init --pod-network-cidr=192.168.0.0/16

 

 

2. root 외 사용자 kubectl 허용

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

 

안했을 경우 The connection to the server localhost:8080 was refused 발생

3. Calico 설치

#Calico 설치
kubectl apply -f https://docs.projectcalico.org/v3.11/manifests/calico.yaml

#설치 확인
watch kubectl get pods --all-namespaces

 

4. taint 설정, 포드 예약 (기본적으로 클러스터는 보안상의 이유로 포드를 예약하지 않음)

kubectl taint nodes --all node-role.kubernetes.io/master-

 

5. 클러스터 노드 확인

kubectl get nodes -o wide

 

6. NetworkManager를 사용하는 경우

*Calico 에이전트가 올바르게 라우팅하는 기능을 방해 할 수 있습니다.

vi /etc/NetworkManager/conf.d/calico.conf
[keyfile]
unmanaged-devices=interface-name:cali*;interface-name:tunl*

 

반응형

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

Kubernetes 4] kubeadm join 노드 가입  (0) 2019.12.23
Kubernetes 2] kubeadm, kubelet 및 kubectl 설치  (0) 2019.12.20
Kubernetes 1] 시작!  (0) 2019.12.20
Posted by kev1n
,