newrelic-metric-stream-sample
NewRelic との AWS 連携において IAM Role の作成と Metric Steram で NewRelic に対してメトリクスを送るための設定を作成するリポジトリです。
Install Tool
- AWS Profile などの設定は事前にされている前提でおこないます。
- tfenv 経由で Terraform をインストール
brew install tfenv
.terraform-version によってその Terraform プロジェクトで使用される Terraform のバージョンになります。
通常であれば .terraform-version に設定している値がローカルになければ tfenv が自動でインストールしてくれますがもしインストールされなければ tfenv 経由で今回使用するバージョンのインストールを行ってください。
tfenv install 1.1.3
tfenv use 1.1.3
IAM Role を作成
- 最初に IAM Role を作成するので iam ディレクトリに移動します。
cd iam
- terraform init でセットアップ
terraform init
- terraform.tfvars を作成
cp terraform.tfvars.sample terraform.tfvars
以下のように編集
newrelic_account_id = "your newrelic account id"
another_aws_account_id = "another aws account id"
- terraform plan で作成されるリソースを確認
terraform plan
- terraform apply で作成
terraform apply
途中で実行してもいいかの確認がありますが yes と入力してください。 Apply complete! がでてきたら成功です。
aws コンソールで作成された IAM Role の arn をコピーしてください。 下記の aws cli でも取得可能です。
aws iam get-role --role-name NewRelicInfrastructure-Integrations | jq '.Role.Arn'
取得した arn を NewRelic One の AWS 連携画面の Step5 で入力します。
MetricStream の作成
- metric_stream のディレクトリに移動
cd metric_stream
- terraform をセットアップ
terraform init
- 環境変数の設定
terraform.tfvars を作成し環境変数を設定
cp terraform.tfvars.sample terraform.tfvars
NewRelic のライセンスキー と s3 の bucket を一意なものにするために何かしらの prefix を当てるために環境変数を設定。
newrelic_license_key = "NewRelic License Key"
bucket_prefix = "bucket-prefix"
- terraform plan で作成されるリソースの確認
terraform plan
- terraform apply で作成
terraform apply
リソースが作成されたら数分間待って NewRelic に Metrics が転送されていれば成功です。