갤럭시 전화 방지 당한다면 알 수 있는 방법

갤럭시 전화 방지 당한다면 알 수 있는 방법

apiVersion


클라우드 로드밸런서 사용하기
클라우드 로드밸런서 사용하기

클라우드 로드밸런서 사용하기

로드밸런서는 공개적으로 액세스 가능한 하나의 IP 주소를 가지며 모든 연결을 서비스로 전달합니다. 따라서 로드밸런서의 IP로 서비스에 액세스할 수 있어요.

쿠버네티스가 로드밸런서 서비스를 지원하지 않는 환경에서라면 로드밸런서는 프로비저닝되지 않지만 서비스는 여전히 노드포트 서비스처럼 작동합니다. 로드밸런서는 노드포트 서비스의 확장이기 때문입니다.

1 헤드리스 서비스 생성
1 헤드리스 서비스 생성

1 헤드리스 서비스 생성

서비스 스펙의 clusterIP 필드를 None으로 설정하면 쿠버네티스는 클라이언트가 서비스의 파드에 연결할 수 있는 클러스터 IP를 할당하지 않기 때문에 서비스가 헤드리스 상태가 됩니다.

apiVersion: v1kind: Servicemetadata: name: kubia-headlessspec: clusterIP: None # 이 부분이 서비스를 헤드리스 서비스로 만든다. ports: – port: 80 targetPort: 8080 selector: app: kubia

클러스터 IP가 없고 엔드포인트에 파드 셀렉터와 일치하는 파드가 포함돼 있음을 알 수 있어요.

파드에 레디니스 프로브가 포함돼 있다고 해서 준비된 파드만 서비스의 엔드포인트로 조회됩니다.

서비스 사용 개요
서비스 사용 개요

서비스 사용 개요

서비스를 왜 사용함? 파드는 일시적이고 가변에는 IP를 갖고 있고 수평 파드 스케일링을 사용하면 하나의 인입점이 필요하기 때문에 서비스는 서비스가 존재하는 동안 IP와 포트가 절대 바뀌지 않습니다. 클라이언트는 파드가 어느곳에 위치하는 지 알 필요 없이 서비스만 호출하면 동일한 애플리케이션을 제공 받을 수 있음 고객 프론트엔드 서비스 프론트엔드 파드 백엔드 서비스 백엔드 파드 이런 흐름으로 접근이 됩니다.

서비스는 레이블 셀렉터를 사용해 서비스 하위의 파드들을 정의합니다. 또한 kubectl expose 명령어를 사용해 서비스를 생성할 수 있어요.

헤드리스 서비스로 개별 파드 찾기

클라이언트가 모든 파드에 연결하고자 한다면 어떠한 방안으로 해야할까? 쿠버네티스는 클라이언트가 DNS 조회로 파드 IP를 찾을 수 있도록 합니다. 서비스 스펙에서 ClusterIP None 으로 설정이 되어 있는 경우 쿠버네티스는 클라이언트가 서비스의 파드에 연결할 수 있는 클러스터 IP를 할당하지 않기 때문에 서비스가 헤드리스 상태가 됩니다. 만약 헤드리스 상태인 서비스에 nslookup 명령어를 실행하게 되면 서비스의 셀렉터로 묶여 있는 파드들의 모든 IP를 얻을 수 있어요.

헤드리스 서비스는 고객 입장에서는 일반 서비스와 비슷하게 DNS 이름에 연결해 파드에 연동 가능합니다. 그런데요 헤드리스 서비스에서는 DNS가 파드의 IP를 회수 해 클라이언트는 서비스 프록시 대신 파드에 직접 연결합니다.

서비스 엔드포인트 사용

위 경우 Endpoints 에 서비스로 노출되는 파드의 IP 주소와 포트 목록이 있습니다. 이는 파드 셀렉터를 통해 엔드포인트 리양념에 저장됩니다. 엔드포인트는 그저 IP와 포트 목록을 작성해 저장하고, 이를 통해 클라이언트가 서비스에 연결되면 서비스 프록시가 목록을 보고 파드로 전달해줍니다. 파드 셀렉터 없이 서비스를 만들게 되면 쿠버네티스는 엔드포인트 리소스를 만들지 못하며, 수동으로 엔드포인트를 사용해 서비스를 만들려면 서비스와 엔드포인트 리소스를 모두 수동으로 만들어야 합니다.

수동으로 서비스와 엔드포인트를 만든 경우 엔드포인트 오브젝트의 metadata.name은 서비스의 metadata.name과 동일해야합니다. 위와 같이 구성하면 파드 셀렉터가 있는 일반 서비스처럼 서비스를 사용할 수 있어요.

2 인그레스 서비스 액세스

서비스에 액세스하려면 도메인 이름이 인그레스 컨트롤러의 IP와 매핑되도록 확인해야 합니다.

$ kubectl get ingressesNAME HOSTS ADDRESS PORTS AGEkubia kubia.example.com 192.168.99.100 80 29m192.168.99.100 kubia.example.com

IP를 알고나면 /etc/hosts에 위 항목을 추가해 매핑해줍니다.

curl httpkubia.example.comYouve hit kubiake823

인그레스에 성공적으로 접근했다.

위와 같은 과정이 된 이유를 더 살펴보면, 클라이언트는 먼저 kubia.example.com의 DNS 조회를 수행했으며 DNS 서버가 인그레스 컨트롤러의 IP를 반환합니다.

서비스 점포 찾기

GS25, CU 편의점 모두 제주도는 제주도내 만 가능합니다. 모든 편의점이 택배 서비스를 하는 것은 아니므로 가까운 택배 서비스를 하는 편의점을 찾아보고 방문하시기 바랍니다. 이상으로 저렴하게 택배 보내는 방법에 관해 알아보았습니다. 주말공휴일도 가능하다는 것을 제외하고는 GS25, CU 모두 별차이 없으므로 가까운 편의점을 이용하시는 것이 편리해 보입니다.

자주 묻는 질문

클라우드 로드밸런서

로드밸런서는 공개적으로 액세스 가능한 하나의 IP 주소를 가지며 모든 연결을 서비스로 전달합니다. 좀 더 구체적인 사항은 본문을 참고하시기 바랍니다.

1 헤드리스 서비스 생성

서비스 스펙의 clusterIP 필드를 None으로 설정하면 쿠버네티스는 클라이언트가 서비스의 파드에 연결할 수 있는 클러스터 IP를 할당하지 않기 때문에 서비스가 헤드리스 상태가 됩니다. 좀 더 구체적인 사항은 본문을 참고하시기 바랍니다.

서비스 사용 개요

서비스를 왜 사용함? 파드는 일시적이고 가변에는 IP를 갖고 있고 수평 파드 스케일링을 사용하면 하나의 인입점이 필요하기 때문에 서비스는 서비스가 존재하는 동안 IP와 포트가 절대 바뀌지 않습니다. 구체적인 내용은 본문을 참고 해주시기 바랍니다.