使用Terraform创建ElasticCache,并使用EC2进行连接测试
在使用的产品中有一个场景,想要使用缓存,所以引入了ElasticCache(Redis),只是作为备忘记录。
前提 tí)
-
- AWS CLI設定済み
- Terraform設定済み
公式文件
-
- Terraform
- EC2からElasticCacheに接続
使用Terraform启动ElasticCache
用Terraform创建弹性缓存集群。
provider "aws" {
profile = "default"
region = "ap-northeast-1"
}
resource "aws_elasticache_cluster" "redis-test" {
cluster_id = "your-redis-cache-name"
engine = "redis"
node_type = "cache.t2.micro"
num_cache_nodes = 1
parameter_group_name = "default.redis5.0"
engine_version = "5.0.5"
port = 6379
security_group_ids = ["your-sg-name"]
}
请把各个名称替换成对应的名称。安全组需要指定与使用ElasticCache的资源相同的安全组ID。由于这里是从EC2使用,所以要指定EC2正在使用的安全组ID。
下一步将使用此模板创建资源。
- 作られるリソースを確認
$ terraform plan
- 実際にリソースを作成
$ terraform apply
执行命令后,您将被询问是否要创建实际资源,您可以输入”是”(yes)或”否”(no)。几分钟后,将创建所需资源。
确认EC2能否与Redis通信。
下一步,我们将使用SSH连接到EC2,并尝试访问Redis。
设置安全组
为了访问Redis,需要开放端口。
![Screen Shot 2019-11-26 at 21.10.22 copy.png](https://cdn.silicloud.com/blog-img/blog/img/657d1a4037434c4406c0b4bd/19-0.png)
安装RedisCLI到EC2
- Redis CLIをインストールするためにパッケージをダウンロードします。確認のプロンプトが表示されるので”y”を入力します。
$ sudo yum install gcc
- redis-cli ユーティリティをダウンロードし、コンパイルします。
$ wget http://download.redis.io/redis-stable.tar.gz
$ tar xvzf redis-stable.tar.gz
$ cd redis-stable
$ make
登录至Redis CLI
- 下記コマンドをElasticCacheのノードのエンドポイントに置き換えて実行します。
$ ~/redis-stable/src/redis-cli -c -h mycachecluster.eaogs8.0001.usw2.cache.amazonaws.com -p 6379
- 正しく設定できていればRedis CLIに入れるはずです。
redis mycachecluster.eaogs8.0001.usw2.cache.amazonaws.com 6379>