Archive: 2023

0

쿠버네티스 - Pod

목차 Post not found: k8s/namespace Post not found: k8s/ingress 쿠버네티스 - Deployment Post not found: k8s/pod/replicaset 쿠버네티스 - Pod 참고 https://blog.2dal.com/2018/03/28/kubernetes-01-pod/ https://blog.heptio.com/core-kubernetes-jazz-improv-over-orchestration-a7903ea92ca 출처해당 포스트는 subicura 강사님의 초보를 위한 쿠버네티스 안내서 강의를 바탕으로 작성 됐습니다. Pod Pod 는 쿠버네티스에서 관리하는 기본단위 이며 가장 작은 배포 단위 쿠버네티스는 Pod 을 이용해 Container 를 관리 하며 Pod 내의 Container 는 모두 동일한 Host 에서 실행되며 네트워크와 저장소를 공유합니다. 이로 인해 컨테이너는 같은 Pod 내에서 다른 Container 와 효율적으로 통신하고 데이터를 공유할 수 있습니다.

0

EKS - eksctl 로 클러스터 생성 및 삭제

목차 EKS - Cluster Autoscaler EKS - EFS CSI Driver 설치 EKS - EBS CSI Driver 설치 EKS - ALB Controller 를 활용한 NLB 생성 EKS - ALB Controller 설치 EKS - Cluster Access 문제 EKS - NodeGroup 생성 EKS - eksctl 로 클러스터 생성 및 삭제 EKS (Elastic Kubernetes Service) 참고 eksctl Documnet https://eksctl.io/ eksctl로 클러스터 생성하기 https://catalog.us-east-1.prod.workshops.aws/workshops/9c0aa9ab-90a9-44a6-abe1-8dff360ae428/ko-KR/50-eks-cluster/100-launch-cluster Amazon EKS의 애플리케이션 로드 밸런싱 https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/alb-ingress.html 나만의 k8s 클러스터 구축하기 https://coffeewhale.com/kubernetes/cluster/eks/2020/09/03/k8s-eks/ EKSCTL 를 이용한 EKS 구성 https://kingofbackend.tistory.com/235 eksctl 설치 MAC OS # mac osbrew tap weaveworks/tapbrew install weaveworks/tap/eksctl Linux # eksctl 명령어 설치curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp# 전역적으로 사용할 수 있게 bin 파일로 이동sudo mv /tmp/eksctl /usr/local/bin

0

React - React Router Dom 사용하기

목차 Redux Saga Redux Middleware 만들기 Redux 사용하기 - 계산기 만들기 Redux 사용하기 React Router Dom 추가하기# npm 사용npm install react-router-dom# yarn 사용yarn add react-router-dom

0

쿠버네티스 - etcd

목차 쿠버네티스 - Namespace 쿠버네티스 - Ingress Post not found: k8s/deployment/deployment Post not found: k8s/replicaset/replicaset 쿠버네티스 - Node 쿠버네티스 - Pod 쿠버네티스 - Data Plane 쿠버네티스 - Control Plane 쿠버네티스 참고 공식문서 https://kubernetes.io/ko/docs/concepts/overview/components/ https://malwareanalysis.tistory.com/512 etcd쿠버네티스(etcd)는 쿠버네티스 클러스터의 상태와 구성 정보를 저장하고 관리하는 데 사용되는 분산 키-값 저장소입니다. etcd는 신뢰성과 일관성을 제공하여 쿠버네티스 클러스터의 안정적인 동작을 보장합니다. etcd는 분산 환경에서 동작하는 일관성 있는 데이터베이스로서, 분산 시스템에서 발생하는 다양한 문제에 대응하기 위해 설계되었습니다. 이를 위해 Raft라는 합의 알고리즘을 사용하여 일관성 있는 복제를 제공합니다. Raft 알고리즘은 분산 시스템에서 노드 간에 일관된 상태를 유지하고 리더 노드의 선택과 로그 복제를 통해 안정성을 보장하는 데 사용됩니다. 쿠버네티스 클러스터 내의 모든 구성 요소는 etcd에 상태 정보를 저장합니다. 이 정보에는 클러스터의 노드, 팟, 서비스, 볼륨, 설정 등의 데이터가 포함됩니다. etcd는 이러한 정보를 실시간으로 유지하고 변경 사항을 관리하여 쿠버네티스 클러스터의 모든 구성 요소가 항상 일관된 상태로 동작할 수 있도록 합니다. 또한, etcd는 분산 환경에서 안정적인 데이터 저장소로서 동작하므로, 장애가 발생하거나 노드가 추가되거나 제거될 때에도 클러스터의 안정성을 유지할 수 있습니다. etcd는 데이터를 여러 노드에 복제하여 가용성과 내결함성을 보장하며, 필요에 따라 데이터를 자동으로 복구하여 시스템의 일관성을 유지합니다.

0

쿠버네티스 - Data Plane

목차 쿠버네티스 - Namespace 쿠버네티스 - Ingress Post not found: k8s/deployment/deployment Post not found: k8s/replicaset/replicaset 쿠버네티스 - Node 쿠버네티스 - Pod 쿠버네티스 - Data Plane 쿠버네티스 - Control Plane 쿠버네티스 공식 홈페이지 https://istio.io/latest/docs/setup/getting-started/ Data Plane 이란데이터 플레인은 클러스터 내에서 컨테이너화된 애플리케이션들의 통신과 네트워크 기능을 담당합니다. Data Plane은 Kubernetes Worker Node에 위치한 컨테이너 런타임 환경과 관련된 구성 요소들로 이루어져 있습니다. 예를 들어, 각 Worker Node에는 쿠버네티스 컨트롤 플레인에서 제어되는 파드(Pod)가 배치됩니다. 이러한 파드는 각각 하나 이상의 컨테이너를 실행하며, 이 컨테이너는 애플리케이션 또는 서비스를 제공합니다. Data Plane의 핵심 구성 요소 중 하나는 kube-proxy입니다. kube-proxy는 서비스(Services)를 처리하며, 클러스터 내부의 파드와 서비스 간의 네트워크 연결을 관리합니다. 이를 위해 kube-proxy는 파드와 서비스에 대한 가상 IP 주소를 할당하고, 이를 통해 라우팅하며, 로드 밸런싱과 같은 작업을 수행합니다. 또 다른 중요한 구성 요소는 컨테이너 네트워크 인터페이스(CNI) 플러그인입니다. CNI 플러그인은 클러스터의 노드와 파드에 할당된 IP 주소를 관리하고, 네트워크 보안을 제공하며, 네트워크 트래픽을 제어합니다.

0

쿠버네티스 - Control Plane

목차 쿠버네티스 - Namespace 쿠버네티스 - Ingress Post not found: k8s/deployment/deployment Post not found: k8s/replicaset/replicaset 쿠버네티스 - Node 쿠버네티스 - Pod 쿠버네티스 - Data Plane 쿠버네티스 - Control Plane 쿠버네티스 공식 홈페이지 https://istio.io/latest/docs/setup/getting-started/ Control Plane 이란Control Plane은 Kubernetes 클러스터 내에서 모든 매니지먼트 기능을 제공하는 중앙 집중화된 구성 요소입니다. 이것은 Kubernetes 클러스터를 구성하는 모든 노드에 설치되어 있으며, 클러스터 내의 다른 구성 요소와 상호 작용하여 Kubernetes 애플리케이션을 배포, 확장, 업데이트 및 관리하는 데 사용됩니다. Control Plane은 크게 세 가지 주요 컴포넌트로 구성됩니다. API Server 클러스터 내의 모든 리소스를 관리하고 Kubernetes API를 노출하는 중앙 집중화된 컴포넌트입니다. API 서버는 사용자가 Kubernetes 클러스터와 상호 작용하기 위한 인터페이스를 제공하며, 클러스터 리소스를 조작하는 모든 작업을 처리합니다. Controller Manager API 서버에서 리소스 변경 사항을 감지하고 해당 리소스 상태를 원하는 상태로 유지하기 위해 실행되는 컴포넌트입니다. 예를 들어, 노드가 다운되면 컨트롤러 매니저는 해당 노드에서 실행 중인 파드를 다른 노드로 이동시키기 위해 동작합니다. etcd 클러스터 상태를 저장하는 분산형 Key-Value 저장소입니다. Kubernetes 컨트롤 플레인의 모든 컴포넌트는 etcd를 통해 클러스터의 상태를 읽고 쓰게 됩니다. etcd 는 분산형 저장소이기 때문에 데이터 일관성과 가용성을 보장합니다. 이러한 컴포넌트는 모두 Kubernetes 클러스터 내에서 상호작용하며, 애플리케이션을 배포, 확장, 업데이트 및 관리하기 위한 모든 매니지먼트 작업을 수행합니다. Control Plane은 Kubernetes 클러스터의 중심적인 역할을 수행하며, 클러스터의 안정성과 가용성을 보장하기 위해 중요한 역할을 합니다.

0

쿠버네티스

목차 쿠버네티스 - Namespace 쿠버네티스 - Ingress Post not found: k8s/deployment/deployment Post not found: k8s/replicaset/replicaset 쿠버네티스 - Node 쿠버네티스 - Pod 쿠버네티스 - Data Plane 쿠버네티스 - Control Plane 쿠버네티스 참고 공식문서 https://kubernetes.io/ko/docs/concepts/overview/components/ https://malwareanalysis.tistory.com/512 쿠버네티스가 등장하게 된 배경MSA (Micro Service Architecture) 의 등장과 Container 화된 어플리케이션이 등장하고 많아지면서 여러 호스트로 구성되고 배포되는 서비스들을 중앙에서 통합, 관리해 줄 수 있는 플랫폼이 필요하게 됐다. 기존 컨테이너 가상화 기술인 도커는 단일 호스트에 컨테이너 서비스를 배포하는데 적합하나 여러 호스트로 구성된 컨테이너 서비스를 관리하는데에 있어서는 한계가 있었다. 여러 호스트로 구성된 컨테이너 환경을 중앙에서 통합 관리 하기 위해 컨테이너 오케스트레이션 플랫포인 쿠버네티스가 등장하게 됐다. 쿠버네티스란?

0

EKS (Elastic Kubernetes Service)

목차 EKS - Cluster Autoscaler EKS - EFS CSI Driver 설치 EKS - EBS CSI Driver 설치 EKS - ALB Controller 를 활용한 NLB 생성 EKS - ALB Controller 설치 EKS - Cluster Access 문제 EKS - NodeGroup 생성 EKS - eksctl 로 클러스터 생성 및 삭제 EKS (Elastic Kubernetes Service) EKS (Elastic Kubernetes Service) 란? Elastic Kubernetes Service 의 약자로 AWS 에서 제공하는 Kubernetes 관리 서비스 EKS를 사용하면 Kubernetes 마스터를 관리하고 보안, 스케일링, 업그레이드 및 가용성과 같은 관리적인 부담을 덜 수 있습니다. EKS는 Kubernetes API를 완전히 호환하며, AWS에서 제공하는 다양한 서비스와 통합할 수 있습니다. 이러한 서비스는 Amazon Elastic Load Balancer, Amazon Simple Storage Service, Amazon DynamoDB 등이 있습니다. EKS는 Kubernetes 마스터를 관리하므로 클러스터를 시작하기 위해 마스터 노드를 프로비저닝하고 구성할 필요가 없습니다. 대신, 단일 명령으로 새로운 Kubernetes 클러스터를 시작하고 노드를 추가하거나 제거할 수 있습니다. EKS는 또한 클러스터 보안을 제공하며, Kubernetes 마스터와 작업 노드가 모두 Amazon VPC(Virtual Private Cloud) 내에서 실행됩니다. 또한 EKS는 Kubernetes 마스터와 작업 노드 간의 통신을 위해 네트워크 라우팅 및 보안 구성을 자동으로 처리합니다. 마지막으로, EKS는 Amazon EC2와 같은 AWS 서비스와의 긴밀한 통합을 제공하며, 클러스터 노드의 Amazon Machine Image(AMI)를 사용하여 노드를 구성할 수 있습니다. 이는 사용자가 EKS와 다른 AWS 서비스를 쉽게 통합하고 관리할 수 있도록 도와줍니다. Kubernetes 클러스터를 쉽게 생성하고 관리할 수 있도록 지원한다.