2

AWS로드 밸런서의 작동 방식이 혼란 스럽습니다. 나는 매우 간단한 설정을 가지고있다 ...로드 밸런서가 양호한 상태 확인을 할 수 없음

나는 내 부하 분산 장치를 통해 인터넷 (포트 80)에 노출되어야하는 나머지 기반 API를 가지고있다. 로드 밸런서 만 인터넷 트래픽에 노출되기를 원합니다. 테스트 목적으로 만 내 IP 주소로의 직접 액세스를 제한하는 인스턴스 보안 그룹 설정이 있습니다.

로드 밸런서가 http에서 제한되지 않고 포트 80이 열려 있습니다 (포트 3001의 API 서비스에 리스너가 있음). 문제는 인스턴스의 IP 제한을 설정하면로드 밸런서가 내 인스턴스를 볼 수 없다는 것입니다. 인스턴스에서 이러한 제한 사항을 제거하면 상태 확인이 작동하기 시작하며 부하 분산 장치를 통해 서비스에 액세스 할 수 있습니다. 문제는 나의 인스턴스가 이제 인터넷에 개방 된 포트를 갖고있어서 내가 원하지 않는 것입니다.

IP 제한을 사용할 때로드 균형 조정기가 내 인스턴스에 액세스 할 수 있도록 추가적으로 필요한 작업이 있습니까?

마지막으로 건강 상태 확인이 문제가 아닌 것으로 알고 있으므로 인스턴스 수준의 IP 제한을 추가 할 때까지 내 건강 상태가 제대로 작동합니다. 로드 밸런서의 IP를 화이트리스트에 추가하면 작동 할 것이지만,이 IP는 동적이며 이러한 목적으로는 실행 가능하지 않습니다.

+0

당신은 IP 제한을 설정하는) 1 단계에서 IP 주소/마스크하지만 보안 그룹 ID를 입력하지 않도록주의하여 ELB 인스턴스가 건강에 해로운하게 인스턴스에 어떤 포트에? – error2007s

+0

나는 나의 ipaddress에 대해서만 열린 포트 3001을 제한했다. 액세스를 제한 할 때 나는 인터넷 트래픽에 대해서만 해당한다고 가정하지만,로드 밸런서의 인스턴스 액세스를 제한 할 수도 있습니다. ELB는 인스턴스 자체를 건강에 해 롭지 않게 만들지 만 건강 검진에 실패합니다. – bstar

+0

AWS ELB 상태 확인서에 무엇을 설정 했습니까? – error2007s

답변

3

IP 제한을 사용하지 마십시오.

1) LB를 선택하고 Security 탭을 선택하고 보안 그룹 ID (sg-5555abb와 같은 것)를 기록하십시오. 해당 ID를 클릭하여 편집하십시오.

2) Load Balancer 보안 그룹을 편집 할 때 하나의 허용 규칙 (HTTP TCP 80 0.0.0.0/0) (및 필요한 경우 443 개 (및/또는 필요한 경우 443 개)을 추가하십시오.

3) 다음으로 인스턴스의 보안 그룹으로 이동하십시오. Load Balancer의 보안 그룹 만 포트 3001의 인스턴스에 액세스하도록 허용하십시오 (Custom TCP Rule TCP 3001 sg-5555abb (my-load-balancer)). Source 분야에서 당신이

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#security-group-rules

+0

로드 밸런서 보안 그룹이 IP를 제한하지 않고 인스턴스의 보안 그룹 만 제한합니다. LB가 인스턴스의 보안 그룹 규칙에 영향을받지 않을 것이라고 생각했습니다 ... 로컬 아마존 네트워크를 통해 인스턴스에 액세스하는 것으로 생각했습니다. – bstar

+0

죄송합니다, 아마도 내가 충분히 명확하지 않았을 것입니다, 나는 대답을 확장 할 것입니다. –

+0

@bstar 내 대답을 삭제했습니다.이 답변을 따라 가십시오. 이것은 당신이 찾고있는 것이며 정확히 원하는 방식으로 작동합니다. – error2007s

관련 문제