일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- singletone
- access modifier
- shebang
- extends
- 파이참
- Inbound
- Java
- 내부클래스
- public static final
- Wrapper class
- parameter group
- 셔뱅
- 자바
- 엔드포인트
- 스트림
- 얕은 복사
- has-a
- dbeaver
- Up Casting
- node.js
- down casting
- arraycopy
- pycharm
- finalize
- identityHashCode
- 깊은 복사
- Stream
- constructor
- generic programming
- lambda
- Today
- Total
목록Computer Science (63)
٩(๑•̀o•́๑)و

※ 간단 개념 정리 □ HPA(Horizontal Pod Autoscaler) : CPU 사용량 (또는 사용자 정의 메트릭, 아니면 다른 애플리케이션 지원 메트릭)을 관찰하여 레플리케이션 컨트롤러(ReplicationController), 디플로이먼트(Deployment), 레플리카셋(ReplicaSet) 또는 스테이트풀셋(StatefulSet)의 파드 개수를 자동으로 스케일 우선 자원 사용량을 확인해보자 HPA는 자원을 요청시, 메트릭 서버를 통해 계층 값을 전달받는데, 이부분에 대해 설정을 해주지 않았기 때문에 오류가 발생하고있다. 1. 메트릭 서버 설치 2. 아래 시나리오를 따라 테스트를 해보자 https://kubernetes.io/ko/docs/tasks/run-application/horizo..

온프레미스에서 구성된 쿠버네티스에서 로드밸런서를 사용해보자 => 외부에서 접속해보자! ※ 간단 개념 정리 □ LB(LoadBalancer) : 네트워크 또는 서버에 가해지는 부하(=로드)를 분산(=밸런싱) 해주는 기술을 의미. => 부하분산 □ MetalLB : 온프레미스/베어메탈로 구성된 쿠버네티스에서도 로드밸런서를 사용할 수 있게 고안된 프로젝트. 기존의 L2 네트워크(ARP/NDP)와 L3(BGP)로 로드밸런서를 구현. □ MetalLB controller : 작동 방식(프로토콜) 을 정의하고, External-ip를 부여해 관리 □ MetalLB speaker : 정해진 프로토콜(L2/ARP, L3/BGP)에 따라 경로를 만들 수 있게 네트워크 정보를 광고하고 수집해 각 파드의 경로를 제공 □ 온..

※ 간단 개념 정리 □ 서비스 : 파드 집합에서 실행중인 애플리케이션을 네트워크 서비스로 노출하는 추상화 방법. 즉, 외부에서 쿠버네티스 클러스터에 접속하는 방법. 쿠버네티스는 파드에게 고유한 IP와 파드 집합에 대한 단일 DNS명을 부여하고, 그것들 간에 로드-밸런스를 수행할 수 있다. 서비스가 대상으로 하는 파드 집합은 일반적으로 셀렉터가 결정한다. 이번에는 공식문서의 예제 일부를 따라해보기로함 https://kubernetes.io/ko/docs/concepts/services-networking/connect-applications-service/ 서비스와 애플리케이션 연결하기 컨테이너 연결을 위한 쿠버네티스 모델 지속적으로 실행중이고, 복제된 애플리케이션을 가지고 있다면 네트워크에 노출할 수 있..

※ 간단 개념 정리 □ 네임스페이스 :쿠버네티스 클러스터에서 사용되는 리소스들을 구분해서 관리하는 그룹. 특별히 지정하지 않으면 기본적으로 default 그룹에 지정되며, 쿠버네티스 시스템에서 사용되는 것은 kube-system. □ 레플리카셋 : 파드의 갯수를 지정한대로 맞춰주는 역할 쿠버네티스의 전체 컴포넌트는 공식문서에서 확인하자 https://kubernetes.io/ko/docs/concepts/overview/components/ 쿠버네티스 컴포넌트 쿠버네티스 클러스터는 컴퓨터 집합인 노드 컴포넌트와 컨트롤 플레인 컴포넌트로 구성된다. kubernetes.io 설치된 쿠버네티스 구성요소는 아래와 같이 확인 가능 # --all-namespaces를 통해 전체 네임스페이스 대상 조회 kubect..

※ 간단 개념 정리 □ CNI : 쿠버네티스 클러스터의 통신을 위해선 네트워크 플러그인을 선택하고 구성해야하며, 일반적으로 CNI(Container Network Interface, 컨테이너 네트워크 인터페이스)로 구성. 주로 사용하는 CNI로는 Calico, Flannel, Cilium, Kube-router, Romana, WeaveNet 등이 있으며, 이번 프로젝트에선 간단하게 WeaveNet으로 진행. CNI 마다 구성방식, 지원기능, 성능 등이 각기 다르기때문에 목적에 맞게 선택하면된다. □ 쿠버네티스 클러스터 : 컨트롤 플레인에서 관리하는 쿠버네티스 에이전트를 실행하는 노드의 집합 □ 노드(node) : 쿠버네티스에서 워커 머신을 말하며, 클러스터에 따라 가상 또는 물리머신일 수 있음. 각 노..

이번엔 worker노드들을 쿠버네티스 노드로 묶어보자 ※ 간단 개념 정리 □ kubeadm : 실행 가능한 최소 클러스터를 시작하고 실행하는 데 필요한 작업을 수행 □ kubectl : 쿠버네티스 클러스터를 제어하기 위한 커맨드 라인 도구. API서버를 통해 쿠버네티스에 명령을 내림 □ kubelet : 클러스터의 각 노드에서 실행되는 에이전트. Kubelet은 파드에서 컨테이너가 확실하게 동작하도록 관리. kubelet에 문제 발생시 파드가 정상적으로 관리되지 않는다. □ control-plane : 클러스터에 관한 전반적인 결정(예를 들어, 스케줄링)을 수행하고 클러스터 이벤트(예를 들어, 디플로이먼트의 replicas 필드에 대한 요구 조건이 충족되지 않을 경우 새로운 파드를 구동시키는 것)를 감지..

1. master 노드를 복제해서 3개의 worker 노드 생성하기 2. 이제 네트워크로 묶을 차례 (NAT Network 추가) # 할당된 ip 확인 sudo -i ip address VM ip Master 10.0.2.15 Worker1 10.0.2.4 Worker2 10.0.2.5 Worker3 10.0.2.6 3. ping test master에서 워커노드들에 ping 을 날려보자 master@master-VirtualBox:~/바탕화면$ cat pingTest.sh # ping 3 times per worker nodes echo "worker1" ping 10.0.2.4 -c 3 echo "worker2" ping 10.0.2.5 -c 3 echo "worker2" ping 10.0.2.6 -..

1. Docker sudo -i apt install docker.io +) root 가 아닌 계정에서 docker 사용시 하기와 같은 permission denied가 발생할 경우, 권한을 변경하면 된다 sudo chmod 666 /var/run/docker.sock 2. Kubeadm 공식 문서 따라하기. 우분투니까 데비안 기반 배포판 기준 https://kubernetes.io/ko/docs/setup/production-environment/tools/kubeadm/install-kubeadm/ # 네트워크 인터페이스 mac 주소 설정 확인 ip link # product_uuid 확인 sudo cat /sys/class/dmi/id/product_uuid # iptable이 연결된 트래픽을 보고..