8. 쿠버네티스 자동완성 기능 설정하기
2021. 8. 29. 04:10
DevOps/kubernetes
리눅스에서 보통 글자를 입력하고 TAB 을 치게 되면 자동으로 입력할 수 있는 문자가 완성된다. 쿠버네티스 명령어인 kubectl 을 사용하면 TAB 을 통해 자동완성이 되지 않는다. 예를 들어, ku 하고 TAB 하면 되지 않는다. 그래서 자동 완성 기능을 설정해보려고 한다. 쿠버네티스 자동 완성 기능과 관련된 글들은 정말 많기 때문에 여러 블로그를 참고하면 된다. 그리고 쿠버네티스에서도 자동완성과 관련된 문서를 제공해주고 있다. https://kubernetes.io/ko/docs/tasks/tools/included/optional-kubectl-configs-bash-linux/ 리눅스에서 bash 자동 완성 사용하기 리눅스에서 bash 자동 완성을 위한 몇 가지 선택적 구성에 대해 설명한다. k..
7. 쿠버네티스 클러스터 네트워크 플러그인 cailco 설치 및 적용하기
2021. 8. 29. 03:42
DevOps/kubernetes
쿠버네티스 클러스터를 구성하기 위해서는 컨테이너 네트워크 인터페이스(CNI) 도 같이 구성해야 한다고 한다. 그 중에서 나는 컨테이너 네트워크 인터페이스인 Calico 를 적용해서 네트워크를 구성하려고 한다. 일단 마스터노드에서 현재 pod 상태를 전부 확인해보면 [root@k8s-master ~]# kubectl get pod --all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE kube-system coredns-78fcd69978-fzpb2 0/1 Pending 0 26m kube-system coredns-78fcd69978-pmfnb 0/1 Pending 0 26m kube-system etcd-k8s-master 1/1 Running 0 26m..
6. 쿠버네티스 클러스터 워커 노드 설정하기
2021. 8. 29. 03:26
DevOps/kubernetes
마스터 노드를 설정했으니 이제 워커 노드를 설정해주어야 한다. 쿠버네티스 워커 노드 설정 요약 정리 1. 쿠버네티스 실행 systemctl enable --now kubelet 2. kubeadm 마스터 노드 연결 kubeadm join 10.0.2.10:6443 --token [token] \ --discovery-token-ca-cert-hash [sha256 hash] 3. 마스터 노드에서 연결된 워커 노드 확인 kubectl get nodes 1. 쿠버네티스 실행 마스터 노드와 마찬가지로 쿠버네티스를 실행시켜줘야 한다. [root@k8s-worker1 ~]# systemctl enable --now kubelet Created symlink from /etc/systemd/system/multi-..
5. 쿠버네티스 클러스터 마스터 노드 설정하기
2021. 8. 29. 03:15
DevOps/kubernetes
이제 쿠버네티스 클러스 마스터 노드를 설정할 차례다. 나는 kubeadm 를 사용해 클러스터를 만들어볼 생각이고 앞서 각 노드별 기본 설정과 필요한 것들을 설치했다. 쿠버네티스 마스터 노드 설정 요약 정리 1. 쿠버네티스 실행 systemctl enable --now kubelet 2. kubeadm 초기화 설정하기 kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=10.0.2.10 mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config 1. 쿠버네티스..
4. 가상 머신 복사해서 worker node 만들기
2021. 8. 29. 01:36
DevOps/kubernetes
우선 가상 머신으로 마스터 노드 하나를 만든 후에 기본적인 설정을 다 했다. 이제 워커노드 2개를 만들어야 하는데 처음부터 만드려면 시간이 오래 걸리기 때문에 마스터 노드인 가상 머신을 복제해서 필요한 부분을 수정하려고 한다. 1. 마스터 노드 가상 머신 복제하기 마스터 노드를 클릭하고 마우스 오른쪽 버튼을 누른 후 [복제] 버튼을 누른다. 그럼 이름과 경로를 수정할 수 있는데 이름을 k8s-worker1 로 수정하고 MAC 주소 정책을 [모든 네트워크 어댑터의 새 MAC 주소 생성] 으로 변경했다. 그런 다음 복제 방식은 완전한 복제를 선택하고 [복제]를 클릭한다. 이렇게 복제가 진행되고 끝나고 가상 머신을 확인하면 된다. 복제 완료 !! 하지만 여기서 완료된 게 아니다. 자원의 여유가 없어 워커노드의..
3. 쿠버네티스 클러스터 노드 서버 기본 설정 및 설치
2021. 8. 29. 01:16
DevOps/kubernetes
가상 머신 만들어서 CentOS 까지 설치가 끝났다. 이제 쿠버네티스 클러스터를 위한 노드 기본 설정을 해주어야 하는데 생각보다 해줄게 많다. 하나씩 해보면서 왜 해주어야 하는지 살펴볼 예정이다. 노드 기본 설정 요약 정리 1. SELinux 설정 setenforce 0 sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config sestatus 2. 방화벽 비활성화 - firewalld, NetworkManager systemctl stop firewalld && systemctl disable firewalld systemctl stop NetworkManager && systemctl disable NetworkManager 3. i..
2. VirtualBox CentOS 7 설치 과정
2021. 8. 28. 22:28
DevOps/kubernetes
가상 머신을 만들고 CentOS 7 버전을 설치해야 한다. 설치하는 과정에 대해서 간단하게 정리해보면 1. 언어 설정 : 한국어 2. Disk 설정 - 자동으로 파티션을 구성해도 상관없지만 원하는 파티션을 구성하고 싶다면 파티션 설정을 통해 기존에 구성된 파티션을 제거하고 다시 구성하면 된다. 3. 네트워크 설정 - Host 이름을 k8s-master 로 따로 설정해주었다. - 이더넷을 켜고 [설정] 탭을 클릭 - [일반] 탭에서 사용 가능하면 자동으로 이 네트워크에 연결을 체크한다. - [IPv4 설정] 탭에서 수동 방식으로 선택 - [Add] 버튼을 눌러 원하는 IP 설정을 해주면된다. - 저장하고 완료하면 된다. 4. 설치 시작 클릭 5. ROOT 암호 설정 6. 설치가 완료되면 재부팅 한다. 7...
1. 쿠버네티스 클러스터를 위한 VirtualBox 가상 머신 생성
2021. 8. 28. 21:21
DevOps/kubernetes
가상 머신을 만들기 전 쿠버네티스 클러스터를 구성하기 위한 노드의 최소 스펙이 필요하다고 한다. - 노드당 메모리 크기 2GB 이상 필요 - 마스터 노드에는 프로세서가 2개 이상 필요 - 클러스터의 모든 시스템 간 네트워크 연결이 필요 (공용이나 사설 네트워크 가능) - 모든 노드에 대해 고유한 호스트 이름이 있어야 한다. - 스왑 비활성화, kubelet 이 제대로 작동하게 하려면 반드시 스왑을 사용하지 않도록 해야한다. VirtualBox 를 사용해서 마스터 노드 가상 머신을 만들어보자. 가상 머신을 만드는 과정은 생각보다 쉬울 수도 있는데 처음하다보면 헷갈리는 부분이 정말 많다. 왜 이걸 선택하는지 궁금한 것도 많아지고 이것저것 찾아보다보면 시간이 정말 빠르게 지나간다. 다음으로 가상 머신 만드는 ..