도커와 쿠버네티스란?

이 블로그에서는 다음 주제에 대해 논의합니다.
  • 도커
  • 컨테이너
  • 도커 이미지
  • 쿠버네티스
  • 포드
  • 서비스
  • 인그레스
  • 네임스페이스

  • 도커란 무엇입니까?



    Docker는 애플리케이션을 빠르게 빌드, 테스트 및 배포할 수 있는 소프트웨어 플랫폼입니다. Docker는 라이브러리, 시스템 도구, 코드 및 런타임을 포함하여 소프트웨어를 실행하는 데 필요한 모든 것을 포함하는 컨테이너라는 표준화된 단위로 소프트웨어를 패키징합니다. Docker를 사용하면 애플리케이션을 모든 환경에 신속하게 배포하고 확장할 수 있으며 코드가 실행될 것임을 알 수 있습니다.



    컨테이너란?



    컨테이너는 모든 환경에서 실행하는 데 필요한 모든 요소를 ​​포함하는 소프트웨어 패키지입니다. 이러한 방식으로 컨테이너는 운영 체제를 가상화하고 프라이빗 데이터 센터에서 퍼블릭 클라우드 또는 개발자의 개인 노트북에 이르기까지 어디에서나 실행됩니다. Gmail에서 YouTube, 검색에 이르기까지 Google의 모든 것은 컨테이너에서 실행됩니다. 컨테이너화를 통해 개발팀은 빠르게 움직이고 소프트웨어를 효율적으로 배포하며 전례 없는 규모로 운영할 수 있습니다.

    컨테이너는 소프트웨어 서비스를 실행하는 데 필요한 특정 버전의 프로그래밍 언어 런타임 및 라이브러리와 같은 종속성과 함께 애플리케이션 코드의 경량 패키지입니다.



    도커 이미지란?

    Docker에서는 모든 것이 이미지를 기반으로 합니다. 이미지는 파일 시스템과 매개변수의 조합입니다. Docker에서 다음 명령의 예를 들어 보겠습니다.

    sudo docker run -it centos
    


    시스템의 Docker 이미지 목록을 보려면 다음 명령을 실행할 수 있습니다.

    docker images
    


    Dockerfile이란 무엇입니까?



    Dockerfile은 Docker 이미지를 빌드하기 위한 지침으로 구성된 간단한 텍스트 파일입니다.

    예시:

    FROM python:alpine3.7
    COPY ./app
    WORKDIR /app
    RUN pip install requirements.txt
    EXPOSE 5001
    ENTRYPOINT ["python","app.py"]
    


    쿠버네티스란?



    "k8s"또는 "kube"라고도 하는 Kubernetes는 컨테이너화된 애플리케이션의 배포, 관리 및 확장을 예약하고 자동화하기 위한 컨테이너 오케스트레이션 플랫폼입니다.



    POD가 무엇인가요?



    Pod는 Kubernetes에서 만들고 관리할 수 있는 배포 가능한 가장 작은 컴퓨팅 단위입니다.

    Pod(고래 꼬투리 또는 완두콩 꼬투리에서와 같이)는 공유 스토리지 및 네트워크 리소스와 컨테이너 실행 방법에 대한 사양이 있는 하나 이상의 컨테이너 그룹입니다.

    kubernetes에서 포드를 확인하려면 다음 명령을 사용하십시오.

    kubectl get pods
    




    서비스란 무엇입니까?



    서비스는 Pod의 논리적 집합으로 정의할 수 있습니다. 포드에 액세스할 수 있는 단일 IP 주소와 DNS 이름을 제공하는 포드 상단의 추상화로 정의할 수 있습니다. 서비스를 사용하면 로드 밸런싱 구성을 관리하기가 매우 쉽습니다. 포드가 매우 쉽게 확장되도록 도와줍니다.

    서비스는 새 인스턴스를 생성하기 위해 Kubernetes 마스터의 Kubernetes apiServer에 정의를 게시할 수 있는 Kubernetes의 REST 개체입니다.

    서비스 사용 명령을 확인하려면 다음을 수행하십시오.

    kubectl describe serice
    


    인그레스란?



    인그레스는 쿠버네티스를 위한 로드 밸런서이며, 인그레스의 주요 목적은 클러스터 외부에 있는 HTTPS 및 HTTP 경로를 클러스터 자체 내의 서비스에 노출하는 것입니다. 인그레스 컨트롤러를 사용하여 트래픽 라우팅을 제어할 수 있는 규칙을 정의할 수도 있습니다.



    네임스페이스란?



    Pod 및 컨테이너와 같은 Kubernetes 개체는 네임스페이스에 상주하며 기본적으로 네임스페이스는 kubernetes 클러스터에서 개체를 구성하는 방법입니다.

    네임스페이스는 다양한 유형의 애플리케이션을 실행 중이거나 클러스터를 공유하는 여러 팀이 있는 경우 매우 유용한 도구입니다.

    이 블로그가 통찰력이 있기를 바랍니다 🌟

    참조:
  • Kubernetes 문서
  • 튜토리얼 포인트
  • 좋은 웹페이지 즐겨찾기