Auto Discovery 사용 - 아마존 ElastiCache

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Auto Discovery 사용

Auto Discovery를 사용하려면 다음 단계를 따릅니다.

1단계: 구성 Endpoint 확보

클라이언트 프로그램은 클러스터에 연결하기 위해 클러스터 구성 Endpoint를 알아야 합니다. 클러스터 엔드포인트 찾기(콘솔) 항목을 참조하세요.

또한 다음과 같이 aws elasticache describe-cache-clusters 파라미터를 포함하여 --show-cache-node-info 명령을 사용할 수 있습니다.

클러스터의 엔드포인트를 찾기 위해 어떤 방법을 사용하든지 구성 엔드포인트는 항상 주소에 .cfg를 포함합니다.

예 ElastiCache용 AWS CLI를 사용하여 엔드포인트 찾기

Linux, macOS 또는 Unix의 경우:

aws elasticache describe-cache-clusters \ --cache-cluster-id mycluster \ --show-cache-node-info

Windows의 경우:

aws elasticache describe-cache-clusters ^ --cache-cluster-id mycluster ^ --show-cache-node-info

이 작업은 다음과 유사한 출력을 생성합니다(JSON 형식).

{ "CacheClusters": [ { "Engine": "memcached", "CacheNodes": [ { "CacheNodeId": "0001", "Endpoint": { "Port": 11211, "Address": "mycluster.fnjyzo.cfg.0001.use1.cache.amazonaws.com" }, "CacheNodeStatus": "available", "ParameterGroupStatus": "in-sync", "CacheNodeCreateTime": "2016-10-12T21:39:28.001Z", "CustomerAvailabilityZone": "us-east-1e" }, { "CacheNodeId": "0002", "Endpoint": { "Port": 11211, "Address": "mycluster.fnjyzo.cfg.0002.use1.cache.amazonaws.com" }, "CacheNodeStatus": "available", "ParameterGroupStatus": "in-sync", "CacheNodeCreateTime": "2016-10-12T21:39:28.001Z", "CustomerAvailabilityZone": "us-east-1a" } ], "CacheParameterGroup": { "CacheNodeIdsToReboot": [], "CacheParameterGroupName": "default.memcached1.4", "ParameterApplyStatus": "in-sync" }, "CacheClusterId": "mycluster", "PreferredAvailabilityZone": "Multiple", "ConfigurationEndpoint": { "Port": 11211, "Address": "mycluster.fnjyzo.cfg.use1.cache.amazonaws.com" }, "CacheSecurityGroups": [], "CacheClusterCreateTime": "2016-10-12T21:39:28.001Z", "AutoMinorVersionUpgrade": true, "CacheClusterStatus": "available", "NumCacheNodes": 2, "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:", "CacheSubnetGroupName": "default", "EngineVersion": "1.4.24", "PendingModifiedValues": {}, "PreferredMaintenanceWindow": "sat:06:00-sat:07:00", "CacheNodeType": "cache.r3.large" } ] }

2단계: ElastiCache 클러스터 클라이언트 다운로드

Auto Discovery를 이용하려면 클라이언트 프로그램에서 ElastiCache 클러스터 클라이언트를 사용해야 합니다. ElastiCache 클러스터 클라이언트는 Java, PHP 및 .NET에 사용할 수 있으며 모든 캐시 노드를 검색하고 연결하는 데 필요한 모든 로직을 포함합니다.

ElastiCache 클러스터 클라이언트를 다운로드하려면
  1. AWS 관리 콘솔에 로그인하고 https://console.aws.amazon.com/elasticache/에서 ElastiCache 콘솔을 엽니다.

  2. ElastiCache 콘솔에서 ElastiCache Cluster Client(ElastiCache 클러스터 클라이언트)를 선택한 후 다운로드를 선택합니다.

Java용 ElastiCache 클러스터 클라이언트의 소스 코드는 https://github.com/amazonwebservices/aws-elasticache-cluster-client-memcached-for-java에서 사용할 수 있습니다. 이 라이브러리는 일반적으로 많이 사용되는 Spymemcached 클라이언트를 기반으로 합니다. ElastiCache 클러스터 클라이언트는 Amazon Software License(https://aws.amazon.com/asl)에 따라 릴리스됩니다. 원하는 대로 자유롭게 소스 코드를 수정할 수 있습니다. 소스를 다른 오픈 소스 Memcached 라이브러리 또는 자체 클라이언트 코드에 통합할 수도 있습니다.

참고

PHP용 ElastiCache 클러스터 클라이언트를 사용하려면 먼저 클라이언트를 Amazon EC2 인스턴스에 설치해야 합니다. 자세한 내용은 PHP용 ElastiCache 클러스터 클라이언트 설치 섹션을 참조하세요.

TLS 지원 클라이언트의 경우 PHP 버전 7.4 이상의 바이너리를 다운로드합니다.

.NET용 ElastiCache 클러스터 클라이언트를 사용하려면 먼저 클라이언트를 Amazon EC2 인스턴스에 설치해야 합니다. 자세한 내용은 .NET용 ElastiCache 클러스터 클라이언트 설치 섹션을 참조하세요.

3단계: 애플리케이션 프로그램 수정

Auto Discovery를 사용하도록 애플리케이션 프로그램을 수정합니다. 다음 섹션에서는 Java, PHP 및 .NET용 ElastiCache를 사용하는 방법을 보여줍니다.

중요

클러스터의 구성 엔드포인트를 지정할 때 다음과 같이 엔드포인트의 주소에 ".cfg"를 포함해야 합니다. ".cfg"를 포함하지 않은 엔드포인트 또는 CNAME을 사용하지 마십시오.

"mycluster.fnjyzo.cfg.use1.cache.amazonaws.com";

클러스터의 구성 엔드포인트를 명시적으로 지정하지 못하면 특정 노드로 구성됩니다.