3.6. AWS 請求情報の関連付けの設定
メータリングは、クラスターの使用状況に関する情報を、 AWS の詳細の請求情報 に関連付け、金額 (ドル) をリソースの使用量に割り当てます。EC2 で実行しているクラスターの場合、以下の aws-billing.yaml ファイルのサンプルを変更してこれを有効にできます。
apiVersion: metering.openshift.io/v1
kind: MeteringConfig
metadata:
name: "operator-metering"
spec:
openshift-reporting:
spec:
awsBillingReportDataSource:
enabled: true
# Replace these with where your AWS billing reports are
# stored in S3.
bucket: "<your-aws-cost-report-bucket>" 1
prefix: "<path/to/report>"
region: "<your-buckets-region>"
reporting-operator:
spec:
config:
aws:
secretName: "<your-aws-secret>" 2
presto:
spec:
config:
aws:
secretName: "<your-aws-secret>" 3
hive:
spec:
config:
aws:
secretName: "<your-aws-secret>" 4AWS 請求情報の関連付けを有効にするには、まず AWS コストと使用状況のレポートを有効にします。詳細は、AWS ドキュメントの「Creating Cost and Usage Reports」を参照してください。
apiVersion: v1 kind: Secret metadata: name: <your-aws-secret> data: aws-access-key-id: "dGVzdAo=" aws-secret-access-key: "c2VjcmV0Cg=="
S3 にデータを保存するには、aws-access-key-id および aws-secret-access-key の認証情報にバケットへの読み書きアクセスが必要になります。IAM ポリシーが必要なパーミッションを付与する例については、以下の aws/read-write.json ファイルを参照してください。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "1",
"Effect": "Allow",
"Action": [
"s3:AbortMultipartUpload",
"s3:DeleteObject",
"s3:GetObject",
"s3:HeadBucket",
"s3:ListBucket",
"s3:ListMultipartUploadParts",
"s3:PutObject"
],
"Resource": [
"arn:aws:s3:::operator-metering-data/*", 1
"arn:aws:s3:::operator-metering-data" 2
]
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "1",
"Effect": "Allow",
"Action": [
"s3:AbortMultipartUpload",
"s3:DeleteObject",
"s3:GetObject",
"s3:HeadBucket",
"s3:ListBucket",
"s3:ListMultipartUploadParts",
"s3:PutObject"
],
"Resource": [
"arn:aws:s3:::operator-metering-data/*", 3
"arn:aws:s3:::operator-metering-data" 4
]
}
]
}
これは、インストール前またはインストール後のいずれかに実行できます。インストール後にこれを無効にすると、reporting-operator でエラーが発生する場合があります。