1. IngressIngress란 클러스터 외부에서 클러스터 내부의 service로의 HTTP, HTTPS 경로를 노출시키는 역할을 합니다. 쿠버네티스의 Service가 클러스터 내부에서만 접근 가능한것과 달리 외부에서 kubernetes 클러스터 내부의 service로 접근할 수 있도록 규칙을 정의하는 역할을 합니다.즉, '이 도메인의 이 경로로 들어오면 어떤 서비스로 보내라'는 규칙을 선언하는 YAML 객체입니다.Ingress를 사용하지 않는다고 가정할때, 외부 접근에 대한 처리를 위해 NodePort, External IP 등을 이용할 수 있지만 이는 대부분 Layer4에서의 요청을 처리하는 것이며, Ingress는 Layer7에서의 도메인/경로 분기, TLS 관리 등과 같은 규칙을 처리할 수 있습..
최근 회사에서 해양에서 Application간의 데이터 교환 표준인 SECOM을 적용하는 과정에서 필수적인 요소인 server - client간의 mutual TLS에 대해 공부한 내용과 적용을 위한 KeyStore, TrustStore의 세팅등을 정리해보려고 합니다. HTTPSHTTPS는 HTTP 프로토콜 상위에서 TLS 암호화를 구현한 것으로 HTTPS를 사용하는 웹 사이트는 TLS 암호화를 이용합니다.즉 HTTPS = HTTP + TLS를 의미합니다.TLS는 OSI 7계층 중 5~6계층 사이, 좀 더 정확하게는 4계층(TCP Layer)위에서, 7계층(Application Layer) 아래에서 동작하는 보안 프로토콜 입니다. 따라서 위의 그림과 같이 Client가 Server에 접속할때 TCP 3-..
지난 글에 이어 이번 글에서는 Kubernetes에 대해 본격적으로 알아보겠습니다. 1. Kubernetes CommponentsClusterCluster는 하나의 시스템처럼 동작하도록 구성된 컴퓨터(또는 자원)의 집합Kubernetes에서 가장 상위의 논리 단위컨테이너화된 애플리케이션을 구동하는 노드(Node)들의 집합각 Cluster는 마치 하나의 거대한 시스템처럼 동작하도록 설계되어 있으며,사용자는 클러스터라는 단일 API 엔드포인트를 통해전체 인프라를 제어 Node컨테이너를 실제로 실행하는 물리 혹은 가상 머신 단위역할에 따라 크게 아래 두 가지로 나뉨Master Node(Control Plane)Control Plane은 클러스터의 제어 영역으로 스케줄링, 상태 관리, 이벤트 감지, 리소스 조정..
저번 글에 이어서 이번에는 Docker와 Kubernetes의 전반적인 컴포넌트에 대해 다뤄보겠습니다. 1. DockerDocker는 엄밀히 말하면 회사 이름(Docker Inc.)이기도 하며, 초기에는 컨테이너 런타임 및 도구 세트를 포함한 오픈소스 프로젝트의 이름이기도 했으나 현재는 오픈소스 프로젝부분이 Moby라는 이름으로 분리되었음Docker Inc.는 사용 플랫폼(Docker Desktop, Hub)등을 포함한 도구와 생태계를 중심으로 한 회사로 운영됨 Docker는 개발자가 컨테이너가 사용할 파일 시스템의 내용을 Dockerfile로 정의한 후,이를 기반으로 Docker Image를 생성하고 이를 레지스트리에 push하거나pull 하여 로컬에서 직접 실행(run)할 수 있게 해주는 플랫폼 Do..