분류 전체보기

반응형

    Docker/Kubernetes - (12) Kubernetes Ingress

    Environment: Ubuntu 18.04 1. Ingress Ingress network는 외부에서 서버로 들어오는 트래픽을 처리하며 네트워크 7계층 레벨에서 정의되는 k8s object입니다. 주요 기능은 다음과 같습니다. 외부 요청의 라우팅 /request, /request/you 등과 같이 특정 경로로 들어오는 요청을 어떠한 service로 전달할지 결정 가상 호스트의 요청 처리 같은 IP에 대해 다른 도메인 이름으로 요청이 도착했을 때, 어떻게 처리할 지 정의 SSL/TLS 보안 연결 처리 여러개의 서비스로 요청을 라우팅할 때, 보안 연결을 위한 인증서를 쉽게 적용 1.1 Ingress 사용 이유 구체적으로 기존에 설명하였던 NodePort, LoadBalancer타입의 service도 위와..

    Docker/Kubernetes - (11) Kubernetes 리소스의 관리와 설정

    Environment: Ubuntu 18.04 1. Namespace: 리소스를 논리적으로 구분하는 장벽 k8s에서 용도에 따라 container와 그와 관련된 리소스를 구분 지어 관리할 수 있는, 하나의 논리적인 그룹을 제공하기 위해 Namespace라는 object를 사용합니다. 예를 들어 모니터링을 위한 리소스들은 monitoring이라는 이름의 namespace로 생성될수 있고 테스트를 위한 리소스들은 test라는 namespace를 생성가능합니다. 1.1 Namespace 이해 Namespace는 namespace(ns)라는 이름으로 k8s에서 사용가능하며 다음과 같이 namespace목록을 확인가능하다. 기본적으로 3개의 namespace가 존재하는데 각각의 namespace는 논리적인 리소스..

    Docker/Kubernetes - (10) Kubernetes 이해 및 사용

    Environment: Ubuntu 18.04 1. Kubernetes(k8s) 이해 Kubernetes(k8s)이 가지는 고유한 특성에 대해 알아봅시다. 1. 모든 리스소는 object형태로 관리됨 이전 글에서 swarm mode의 container 집합을 service(서비스)라고 하였습니다. K8s은 이러한 개념을 폭넓고 세밀한 단위로 사용하기 위해 object라는 개념을 사용합니다. 예로 container 집합(Pods), Pods을 관리하는 컨트롤러(Replica Set), 사용자(Service Account), 노드(Node) 모두를 하나의 object로 사용가능합니다. 사용가능 한 object는 kubectl api-resources명령어로 확인가능합니다. 2. YAML파일을 통한 k8s 사..

    Docker/Kubernetes - (9) Kubernetes란?

    Environment: Ubuntu 18.04 1. Kubernetes(k8s)란? Kubernetes(k8s)는 docker swarm mode처럼 여러 대의 docker host를 하나의 cluster로 만들어 준다는 것은 같지만 세부적으로 폭넓은 기능을 제공한다는 점이 다릅니다. 구체적으로 특징은 다음과 같습니다. (K8s라는 표기는 "K"와 "s"와 그 사이에 있는 8글자를 나타내는 약식 표기) 서버 자원 clustering, 마이크로서비스 구조의 container 배포, 서비스 장애 복구 등 container기반의 서비스 운영에 필요한 폭넓은 오케스트레이션(Orchestration) 기능을 제공 Orchestration: container의 배포, 관리, 확장 ,네트워킹을 자동화하는 기술로, 복..

    Docker/Kubernetes - (8) Docker Compose

    Environment: Ubuntu 18.04 1. Docker Compose 다른 image로 이루어진 여러개의 container가 하나의 어플리케이션으로 동작시키려면 run명령어를 여러번 사용해야합니다. 하지만 이는 편리성 및 관리의 불편함이 있기 때문에 docker compose를 사용하게 됩니다. docker compose는 container를 이용한 서비스 개발과 CI를 위해 여러 개의 container을 하나의 project로 다룰 수있는 작업환경을 제공합니다. run명령어의 옵션을 모두 사용가능하면 swarm cluster처럼 서비스의 container수를 유동적으로 조절가능하며 container의 서비스 디스커버리도 자동으로 이루어집니다. 1.1 Docker Compose 설치 sudo c..

    Docker/Kubernetes - (7) Docker Swarm

    Environment: Ubuntu 18.04 1. Docker Swarm 지금까지 저희는 하나의 host에서만 docker engine을 구동하였습니다. 하지만 하나의 Host는 CPU, memory측면에서 자원의 한계를 가지므로 여러 대의 서버를 cluster로 만들어 자원을 병렬로 확장하여 사용해야 합니다. 이때 여러 대의 서버를 사용할 때나 또는 서버를 추가하고 싶을 때 container 할당에 대한 스케줄러, 로드 밸런스 문제 등 이런 문제를 해결하는 것이 바로 docker swarm과 swarm mode입니다. 2. Docker Swarm mode Swarm mode는 여러 대의 docker server를 하나의 클러스터로 만들어 container를 생성하는 여러 기능을 제공하고 특징점은 다음..

반응형