본문 바로가기

Study/Cloud,Docker,Kubernetes9

Kuberenetes- Deployment, Service 1.Deployment-정의: Replicaset 을 관리하는 controller-역할: 애플리케이션의 상태를 원하는 대로 설정하고 관리하는 방법.  nginx-deployment.yamlapiVersion: apps/v1kind: Deploymentmetadata: name: nginx-deployment labels: app: nginxspec: replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.14.2 ports:.. 2024. 10. 29.
Load Balancer 정의 및 정리 이번에 배포하면서 느낀점이 Load Balancer 에는 여러 종류가 있던걸 이번에 프로젝트를 하면서 배웠습니다. 어떤걸 언제 사용하면 좋을지에 대해, 또 load balancer 의 원리에 대해 알면 좋을꺼 같아서 정리했습니다.  1.Load Balancer?1) load balancer란? 현재 모든 정보는 인터넷을 통해 연결되어 있습니다. 이를 통해 트래픽의 폭발적인 증가로 이어지는데, 아무리 성능이 뛰어난 서버라 해도 이 모든 트래픽을 감당할 수 없게 됩니다. 이에 따라 기업들은 서버를 여러 개를 구축하고 여러 개에 동일한 데이터를 저장해 수많은 트래픽을 효과적으로 분산하게 됩니다.근데 단순히 다수의 서버를 구축해 운영한다고 해서 모든 클라이언트의 요청에 일관성 있게 응답하는게 아니라 쏟아지는 트.. 2024. 10. 29.
Container 기초 1.Container 개념 좌측 그림과 우측그림은 virtual machine 과 container 의 구조를 형상화한 그림입니다. 각 구성요소에 대해서 설명을 하면1. 가상 머신(Virtual Machines): 실제 field에선 instance라 불림 하드웨어/인프라(Hardware/Infrastructure): 실제 물리적 서버나 컴퓨터.호스트 운영 체제(Host Operating System): 물리적 서버 위에서 실행되는 기본 운영 체제.(ex. linux)하이퍼바이저(Hypervisor): 여러 가상 머신을 실행할 수 있도록 물리적 리소스를 분할해 가상화하는 소프트웨어.(ex, VMWARE, RedHAT)가상 머신(VM): 각 VM에는 독립적인 **게스트 운영 체제(Guest OS)**가 있.. 2024. 10. 15.
Kubernetes 1. 컨테이너 오케스트레이션 1) 개요 다수의 컨테이너를 유기적으로 연결 및 실행할 뿐만 아니라 상태를 추적하고 보전하는 등 컨테이너를 안정적으로 사용할 수 있게 만들어주는 것 2) 솔루션 - docker swarm **:** 간단하고 설치도 용이한데 기능이 다양하지 않아서 소규모 환경에서는 유용하지만, 대규모 환경에서는 거의 사용하지 않음 - meos : 아파치의 오픈 소스 프로젝트로 트위터, AirBnb, Apple, Uber 등에서 사용한 검증된 솔류션으로 대규모 서버 환경에서 자원을 유연하게 공유하고 하나의 자원처럼 관리하는 DC/OS의 지원으로 매우 간결하지만 기능이 충분하기는 한데 여러 가지 솔루션을 유기적으로 구성을 해야 하는 부담이 있음. - nomad : 베이그런트를 만든 해시코프 사에서.. 2024. 4. 8.
Docker(4)-DockerCompose Docker Compose 1.개요 =>시스템 구축과 관련된 명령어를 하나의 텍스트 파일(yaml)에 기재해서 한번에 시스템 전체를 실행하고 종료와 폐기까지 하도록 도와주는 도구 =>공통의 목적을 갖는 애플리케이션을 docker-compose.yml 파일에 코드로 정의해서 한번에 서비스를 올리고 관리할 수 있는 도구 =>하나의 서비스는 하나의 도구만 사용하는 경우는 드뭄 React Node, Python의 Web Frameword, Spring 데이터베이스 =>이런 경우 3개의 컨테이너를 정의해서 사용해야 하는데 이를 별개의 파일로 관리하는 것은 비효율적 여러 개로 관리하다보면 수정을 해야 하는 경우 3곳 모두 수정을 해야하는데 이런 경우 에러가 발생할 가능성이 높음 하나의 정의 파일을 이용해서 관리하는.. 2024. 4. 6.
Docker(3)-Dockerfile DockerFile 1.개요 =>DockerImage 을 생성하기 위한 스크립트 =>이미지를 사용하는 방법은 기존에 존재하는 이미지(DockerHub 나 Private Repositoty 에서 다운로드)를 이용하는 방법이 있고, 이미지를 직접 만들어서 사용하는 방법(동일한 환경을 만들어서 사용하거나 애플리케이션을 배포 =>이미지를 생성하는 방법 -현재 사용중인 컨테이너를 이미지로 생성 -스크립트를 이용(Dockerfile) =>IaC(Infrastructure as Code):인프라를 코드로 구성 -기존에는 하나의 개발팀이 개발을 하기 위해서 모여서 직접 동일한 버전의 소프트웨어를 설치해서 환경을 동일하게 생성 동일한 운영체제를 사용하거나 동일한 운영체제를 사용할 수 있는 VM을 이용 -리눅스 기반의 도.. 2024. 4. 4.