Consul로 Lambda 서비스 연결하기
Consul로 Lambda 서비스 연결하기 (Connect Lambda services with Consul)
이 문서는 Consul 서비스 메시에서 AWS Lambda 함수를 호출하고, 또 Lambda 함수가 메시의 서비스를 호출하도록 구성하는 방법을 알려드릴게요. Lambda 등록과 호출 방향별 설정의 핵심을 이해할 수 있어요.
출처: 문서
본문
Consul을 구성하여 메시의 서비스가 Lambda 함수를 호출하고, Lambda 함수가 메시의 서비스를 호출하도록 할 수 있습니다. Lambda 함수는 AWS Lambda에서 실행되는 프로그램 또는 스크립트입니다. 추가 정보는 AWS Lambda 웹사이트 [https://aws.amazon.com/lambda/]를 참조하세요.
Consul에 Lambda 함수 등록 (Register Lambda functions into Consul)
첫 번째 단계는 Lambda 함수를 Consul에 등록하는 것입니다. Lambda 함수를 Consul에 자동으로 동기화하려면 Lambda registrator 모듈 [https://github.com/hashicorp/terraform-aws-consul-lambda/tree/main/modules/lambda-registrator]을 사용하는 것이 좋습니다. Lambda registrator를 사용할 수 없는 경우 Lambda 함수를 Consul에 수동으로 등록할 수도 있습니다.
Consul에 Lambda 함수를 등록하는 방법에 대한 자세한 내용은 Lambda 함수 등록 요구 사항 [/consul/docs/register/service/lambda]을 참조하세요.
Consul 서비스 메시에서 Lambda 함수 호출 (Invoke Lambda functions from Consul service mesh)
AWS Lambda 함수를 등록한 후 종료 게이트웨이(terminating gateway, 권장)를 통해 또는 연결된 프록시에서 직접 Consul 서비스 메시에서 Lambda 함수를 호출할 수 있습니다.
자세한 내용은 서비스에서 Lambda 함수 호출 [/consul/docs/connect/lambda/function]을 참조하세요.
Lambda 함수에서 메시 서비스 호출 (Invoke mesh services from Lambda function)
Lambda-to-mesh 기능은 현재 베타(beta)입니다
베타 기능과 관련된 기능은 변경될 수 있습니다. 보안 환경이나 프로덕션 시나리오에서는 베타 릴리스를 절대 사용해서는 안 됩니다. 베타 기능은 성능 문제, 확장 문제, 제한된 지원이 있을 수 있습니다.
Lambda 함수의 레이어로 consul-lambda-extension 플러그인을 추가하여 메시의 서비스에 요청을 보낼 수도 있습니다. 이 플러그인은 Lambda 함수의 요청을 메시 게이트웨이 [/consul/docs/connect/gateways#mesh-gateways]로 전달하는 경량 사이드카 프록시를 시작합니다. 게이트웨이는 트래픽을 대상 서비스로 라우팅하여 요청을 완료합니다.
Consul에 Lambda 함수를 등록하는 방법에 대한 자세한 내용은 Lambda 함수에서 서비스 호출 [/consul/docs/connect/lambda/service]을 참조하세요.
Lambda 함수에서 메시 서비스로 요청을 보내려면 Consul 메시 게이트웨이가 필요합니다. 자세한 내용은 Mesh Gateways [/consul/docs/east-west/mesh-gateway]를 참조하세요.
L7 트래픽 관리 기능은 지원되지 않는다는 점에 유의하세요. 결과적으로 Lambda 함수의 요청은 서비스 라우트(route)와 스플리터(splitter)를 무시합니다.