inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

대세는 쿠버네티스 (초급~중급편)

Kubernetes Cluster 설치

vagrant up

517

ak4686

작성한 질문수 26

1

curl -O , curl -k -O 명령어를 모두 사용해봐도 위에 사진처럼 실행되고, 강사님의 화면과 많이 다르게 실행됩니다..

 

가상머신 Oracle VM VirtualBox 7.0.10 이 있는데 vagrant up 을 하면 오류가 발생합니다.

 

어떻게 해결해야 할까요..?

docker kubernetes

답변 3

0

inchangson21

저는 인증서 관련된 오류 몇 차례 났었는데, host os 의 보안 프로그램 일시 정지해두고 실습 진행하니 일정 부분 해결 되었습니다.

0

김영호

저도 ak4686님과 동일한 현상이 발생하고 있습니다.

다운받아지는 Vargrantfile의 내용은 답변 해주신것과 동일하고요.

0

일프로

한번 아래 내용대로 하나씩 해보시겠어요?

1. 지금 올린 내용처럼, 직접 URL로 다운 받은 Vagrant 파일을 [k8s] 폴더에 복사해 놓고 vagrant up을 해보세요.

2. [vagrant plugin install vagrant-vbguest] 실행 후 vagrant up 해보기

3. 직접 provider 줘서 실행히기

-> vagrant up --provider virtualbox

그리고 어떤걸 했을 때 되는지, 혹은 그래도 안되는지 알려주시면 감사하겠습니다.

0

일프로

안녕하세요.

Vagrantfile 파일이 정상적으로 다운 받아졌는지 확인해 봐야 할 것 같은데요.

받은 파일 내용을 올려봐주시겠어요?

0

ak4686

받은 파일 내용이라는게 curl 에 있는 URL 경로로 들어가서 다운 받아지는 걸 말씀하시는 건가요?

 

 

NodeCnt = 2

Vagrant.configure("2") do |config|

# config.vbguest.installer_options = { allow_kernel_upgrade: true }

config.vm.box = "centos/7"

config.vm.provider :virtualbox do |vb|

vb.memory = 3072

vb.cpus = 4

end

config.vm.provision :shell, privileged: true, inline: $install_common_tools

config.vm.define "k8s-master" do |master|

master.vm.hostname = "k8s-master"

master.vm.network "private_network", ip: "192.168.56.30"

master.vm.provision :shell, privileged: true, inline: $provision_master_node

end

(1..NodeCnt).each do |i|

config.vm.define "k8s-node#{i}" do |node|

node.vm.hostname = "k8s-node#{i}"

node.vm.network "private_network", ip: "192.168.56.#{i + 30}"

end

end

end

$install_common_tools = <<-SHELL

# ssh password 접속 활성화

sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config

sed -i 's/#PermitRootLogin yes/PermitRootLogin yes/g' /etc/ssh/sshd_config;

systemctl restart sshd.service

# 방화벽 해제

systemctl stop firewalld && systemctl disable firewalld

systemctl stop NetworkManager && systemctl disable NetworkManager

# Swap 비활성화

swapoff -a && sed -i '/ swap / s/^/#/' /etc/fstab

# br_netfilter 모듈 로드

cat <<EOF | tee /etc/modules-load.d/k8s.conf

br_netfilter

EOF

# Iptables 커널 옵션 활성화

cat <<EOF > /etc/sysctl.d/k8s.conf

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

EOF

sysctl --system

# permissive 모드로 SELinux 설정(효과적으로 비활성화)

setenforce 0

sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

# 쿠버네티스 YUM Repository 설정

cat <<EOF | tee /etc/yum.repos.d/kubernetes.repo

[kubernetes]

name=Kubernetes

baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64

enabled=1

gpgcheck=1

repo_gpgcheck=0

gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg

exclude=kubelet kubeadm kubectl

EOF

# Centos Update

yum -y update

# Hosts 등록

cat << EOF >> /etc/hosts

192.168.56.30 k8s-master

192.168.56.31 k8s-node1

192.168.56.32 k8s-node2

EOF

# 도커 설치

yum install -y yum-utils device-mapper-persistent-data lvm2

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

yum install -y containerd.io-1.4.9-3.1.el7 docker-ce-3:20.10.8-3.el7.x86_64 docker-ce-cli-1:20.10.8-3.el7.x86_64

mkdir /etc/docker

cat > /etc/docker/daemon.json <<EOF

{

"exec-opts": ["native.cgroupdriver=systemd"],

"log-driver": "json-file",

"log-opts": {

"max-size": "100m"

},

"storage-driver": "overlay2",

"storage-opts": [

"overlay2.override_kernel_check=true"

]

}

EOF

mkdir -p /etc/systemd/system/docker.service.d

# 도커 재시작

systemctl daemon-reload

systemctl enable --now docker

# 쿠버네티스 설치

yum install -y kubelet-1.22.0-0.x86_64 kubeadm-1.22.0-0.x86_64 kubectl-1.22.0-0.x86_64 --disableexcludes=kubernetes

systemctl enable --now kubelet

SHELL

$provision_master_node = <<-SHELL

# 쿠버네티스 초기화 명령 실행

kubeadm init --apiserver-advertise-address 192.168.56.30 --pod-network-cidr=20.96.0.0/12

kubeadm token create --print-join-command > ~/join.sh

# 환경변수 설정

mkdir -p $HOME/.kube

cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

chown $(id -u):$(id -g) $HOME/.kube/config

# Kubectl 자동완성 기능 설치

yum install bash-completion -y

source <(kubectl completion bash)

echo "source <(kubectl completion bash)" >> ~/.bashrc

# Calico 설치

kubectl create -f https://raw.githubusercontent.com/kubetm/kubetm.github.io/master/yamls/k8s-install/calico.yaml

kubectl create -f https://raw.githubusercontent.com/kubetm/kubetm.github.io/master/yamls/k8s-install/calico-custom.yaml

curl https://docs.projectcalico.org/manifests/calico.yaml -O

kubectl apply -f calico.yaml

# Dashboard 설치

kubectl apply -f https://kubetm.github.io/yamls/k8s-install/dashboard-2.3.0.yaml

nohup kubectl proxy --port=8001 --address=192.168.56.30 --accept-hosts='^*$' >/dev/null 2>&1 &

SHELL

 

이게 다운 받아지는 파일의 내용입니다.

yml 작성하다가 에러 발생해서 문의 드립니다.

0

37

2

설치수업중에 질문드립니다.

1

54

2

기초다지기 설치 문의드립니다.

1

104

4

HPA 부분 Auto Scaler 설치하는 링크가 없습니다!!

1

64

3

클러스터 초기화 및 팟 네트워크 세팅시 문제가 있습니다

1

100

1

환경 구성에 있어서 질문드립니다

1

92

2

configMap 파일생성

1

77

2

dashboard에서 pod 생성이 되지 않습니다.

1

77

2

nodePort 서비스 접근 Client sent an HTTP request to an HTTPS server

1

74

2

대시보드 화면이 달라요 ㅠㅠ

1

58

2

대시보드 접근이 안됩니다!

1

98

2

Ingress실습에 난관이 있습니다

1

66

2

master 노드에서 ssh 로그인 창이 안뜨는 오류

1

82

3

안녕하세요 일프로님 궁금한 거 있습니다

0

50

1

7강 마지막 대시 보드 출력에 관한 문제

1

57

2

Could not resolve host: externalname1; Unknown error

0

59

2

Failed to create pod sandbox

1

89

2

자료실을 못 찾겠습니다 ㅜ ㅡ ㅜ

0

57

2

0/3 nodes are available

1

57

2

Back-off restarting fail~~

1

99

4

쿠버네티스 대시보드 접속 문제

1

89

2

설치관련 질문입니다

1

116

2

raw.githubusercontent.com 에 대한 질문

1

137

2

worker노드 추가시에

1

68

1