[k8s] k8s Dashboard install guide (설치 가이드)
·
Container Platform/Kubernetes (k8s)
k8s dashboard 설치 및 구성가이드입니다. 1. Dashboard 설치 git clone https://github.com/kubernetes/dashboard.git wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml ## Off-line kubectl apply -f recommended.yaml ## On-line kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml ## 전체 namespace pod 조회 kubectl get pods ..
[k8s] k8s cluster install guide (설치 가이드)
·
Container Platform/Kubernetes (k8s)
Kubenetes Cluster Install Guide입니다. 본 가이드는 Master 3 노드 및 Worker 2노드 기준이며, HAProxy 및 Keepliaved를 통한 HA 환경입니다.내용도 많아 설치 및 설정 값 위주이며, 현재 RHOCP 구성으로 인해 k8s cluster가 없어 당시에 정리했던 설치가이드를 공유하는 차원이라 구성 정보 조회 내용은 빠져있습니다.  VM 구성 정보 1. HAProxy 설치 및 설정 (Master 전체)dnf install -y haproxyvi /etc/haproxy/haproxy.cfg#---------------------------------------------------------------------# main frontend which proxys..
[Container] Podman 설치 및 사용법
·
Container Platform/Kubernetes (k8s)
podman 은 Pod Manager tool 의 약자로 OCI 표준 container와 런타임을 개발, 관리, 실행할 수 있게 해주는 container engine 입니다. docker와의 차이점은 크게 3가지로 볼 수 있습니다. 1. docker와 podman의 차이점 A. daemon-less docker는 docker daemon을 통해 모든 작업이 이루어지고, 사용자는 docker 명령어로 데몬을 제어하는방식입니다. 하지만 docker daemon이 죽거나 재시작하면 컨테이너가 정지됩니다. 그래서 Podman은 데몬에서 관리하지 않고, podman이 직접 각 컨테이너들을 fork/exec 하는 방식으로 별도로 구동하여 별도의 데몬 없이 각 컨테이너들을 안정적으로 실행할 수 있습니다. B. roo..
[Container] Docker 설치 및 사용법
·
Container Platform/Kubernetes (k8s)
CentOS에서 간략하게 Docker 설치에서부터 nginx 컨테이너 구성, 그리고 삭제까지 하는 방법입니다. 1. 설치 환경정보 CentOS 7.7 firewalld와 Selinux 비활성화 1 NIC (Public) 2. docker 설치 docker 설치 방법입니다. [root@hk-test ~]#yum install -y docker 3. docker 서비스 실행 docker 서비스 시작 및 활성화 방법입니다. [root@hk-test ~]#systemctl enable --now docker [root@hk-test ~]#systemctl status docker 4. nginx 컨테이너 시작 및 상태 확인 nginx 컨테이너를 시작하는 방법입니다. [root@hk-test ~]#docker r..
[k8s] kubernetes 구조
·
Container Platform/Kubernetes (k8s)
1. 컨트롤러와 오브젝트 쿠버네티스는 크게와 오브젝트를 관리하는 컨트롤러와 오브젝트로 나뉜다. 사용자는 자원의 원하는 상태를 정의하고 - 컨트롤러 : 사용자가 바라는 상태가 일치하도록 오브젝트를 생성/삭제 - 오브젝트 : Pod, Service, namespace, volume등이 있음 2. 네임스페이스 - 클러스터 하나를 여러 개의 논리적인 단위로 나눠서 사용함 - 네임스페이스 별로 별도의 쿼터를 설정해서 특정 네임스페이스의 사용량을 제한할 수 있음 k8s에서는 기본으로 몇 개의 네임스페이스가 자동 생성됨. 이중에서 default, kube-system, kube—public, kube-node—lease 등은 쿠버네티스가 기본으로 생성 docker는 도커로 설치한 쿠버네티스이므로 도커에서 만든 네임스..
[k8s] 주요 컴포넌트 설명
·
Container Platform/Kubernetes (k8s)
k8s 클러스터를 관리하는데 필수인 마스터용 컴포넌트, 워커 노드용 컴포넌트, 필수는 아니지만 추가로 사용할 수 있는 애드온(add-on)용 컴포넌트로 구성된다. 1. 마스터용 컴포넌트 etcd / kube-apiserver / kube-scheduler / kube-controller-manager / cloud-controller-manager 등이 마스터용 컴포넌트이다. 1.1 etcd - 코어OS에서 개발한 고가용성을 제공하는 key-value 저장소 - 분산 시스템에서 노드 사이의 상태를 공유하는 raft 알고리즘을 구현한 것으로 k8s의 모든 데이터를 저장하는 DB 역할 수행 - 서버 하나당 1개 프로세스만 사용 가능 - 꽤 안정적이지만 주기적으로 데이터를 백업하는 것을 권고 1.2 kube-..
[k8s] 명령어
·
Container Platform/Kubernetes (k8s)
### kubeadm 초기화 (join을 다시 하고 싶거나 할때 설정 초기화) kubeadm reset && rm -rf /etc/cni/net.d ### Master 노드에서 Pod를 허용하고자 할 때 kubectl taint nodes --all node-role.kubernetes.io/master- ### k8s dashboard 인증 토큰 확인 명령어 kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')