by shigemk2

当面は技術的なことしか書かない

AWS

Kinesis Firehose料金 メモ

AWS

Kinesis Data Firehose の配信ストリームのベースとなる機能は取り込みと配信です。取り込みの料金は階層別であり、5 KB 単位で取り込まれた GB ごとに請求されます (3 KB のレコードは 5 KB、12 KB のレコードは 15 KB として請求されるなど)。オプション機…

Renaming Resource in CloudFormation Template

AWS

awscliのupdate-stackのドキュメントをみてみても、stack nameがidとして使われており、stack nameを変更するということはidを変更するのと一緒だから、結局CloudFormationのスタックを作り直すしかないらしい。 stackoverflow.com docs.aws.amazon.com

Fargate 料金

AWS

メモリとCPUのスペックと使用時間で課金。EC2みたいなインスタンスタイプで選ぶ感じではなく、CPU/メモリの決まった組み合わせでスペックを決めていく。 aws.amazon.com

AWS::ElasticLoadBalancingV2::LoadBalancer LoadBalancerAttribute

AWS

access_logsのところをみてみると、パスを丸ごと変えられそうな気配を感じたけど、prefixしか変更できるところが、ない。 ログファイル名の例。 s3://my-bucket/prefix/AWSLogs/123456789012/elasticloadbalancing/us-east-2/2016/05/01/123456789012_elasti…

Athena カラム名 mapping

AWS

元ネタが見つからなかったんだけど、Athena/Hiveのカラム名にハイフンが使えないらしいので、SERDEPROPERTIESのところでmapping.xxx_xxx = xxx-xxxってな書き方でマッピングしないといけない。↓の例だと、ses:configuration-setがオリジナルのカラム名で、ma…

S3バケット名

AWS

S3バケット名は全リージョンで一意じゃないといけない。別リージョンで同じ名前のS3バケットを作ろうとするとエラーになる。 docs.aws.amazon.com

Athena ワークグループ

AWS

クエリ実行やクエリ履歴を、同じ AWS アカウントの下で実行されているユーザー、チーム、またはアプリケーション間で分離 デフォルトのワークグループは消せない docs.aws.amazon.com aws.amazon.com

S3サーバーアクセスログ

AWS

アクセスログを保存するS3は同じリージョンでなければならない。 例えばCloudFormationでS3のログ設定で別なリージョンのバケットを設定しようとすると CrossLocationLoggingProhibitted エラーで怒られる。 Bucket: Type: "AWS::S3::Bucket" Properties: Bu…

FluentBit S3 メモ

時間フォーマットの%Yとか%mのタイムゾーンはUTC タイムゾーンを変更するパラメータはない docs.fluentbit.io

CloudFormation S3 GetAtt

AWS

ドメイン名とかArnとかはGetAttで取れるけど、バケット名そのものはRefで取る。 Outputs: BucketName: Value: !Ref S3Bucket Description: Name of the sample Amazon S3 bucket with CORS enabled. docs.aws.amazon.com

ELB CloudFormationメモ

AWS

ALBでも一緒。アクセスログ保存などは以下のようにLoadBalancerAttributesのところで書く。 Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer' Properties: Name: MyLB LoadBalancerAttributes: - Key: access_logs.s3.enabled Value: "false" - Key: acce…

DeliveryStreamのCloudFormation

AWS

情報が出回ってなさすぎて公式しかないから公式を見るしかない github.com

Fluent Bit Plugin for CloudWatch Logs

AWS

$(tag) references the full tag name, $(tag[0]) and $(tag[1]) are the first and second values of log tag split on periods. You may access any member by index, 0 through 9. $(uuid) will insert a random string in the names. The random string …

FluentBit CloudWatch

AWS

log_keyは1種類しか指定できない。 docs.fluentbit.io

CodePipeline GetAtt

AWS

CodePIpelineのGetAtt、VersionしかなくてArnは取れない、、、、 docs.aws.amazon.com

FluentBit CloudWatchLogs

AWS

これ見る感じだとlog_stream_prefixとかlog_stream_nameはconfで動的に弄るのは難しそう docs.fluentbit.io

HealthCheckGracePeriodSeconds

AWS

HealthCheckGracePeriodSeconds The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. This is only used when your service is config…

ALBのメトリクスとかアクセスログとか

AWS

ALBのこういうログがS3に吐かれるので、awkなどで適宜。 https 2018-07-02T22:23:00.186641Z app/my-loadbalancer/50dc6c495c0c9188 192.168.131.39:2817 10.0.0.1:80 0.086 0.048 0.037 200 200 0 57 "GET https://www.example.com:443/ HTTP/1.1" "curl/7.…

Firelens タスク定義 メモ

AWS

FluentBitはFluentdの兄弟みたいなもの 通常のアプリなコンテナ定義とは別にログルーターなるコンテナ定義が必要で、ログルーターのコンテナはCloudWatchLogs出力(以外もできそう) ログルーターで使うFluentBitのECRはAWSが用意しているイメージのほかに自前…

OpenSearch VPC

AWS

供養。 stackoverflow.com SG周りはここに全てが載っている。Firehose側でアウトバウンドOpenSearchのSG443、OpenSearch側でFirehoseのSG443で良い。 aws.amazon.com

AWS::ECR::RepositoryのLifecyclePolicy

AWS

LifecyclePolicyはJSONのテキストを直書きしないといけない。 docs.aws.amazon.com dev.classmethod.jp docs.aws.amazon.com

CloudFormation AWS::SSM::Parameter

AWS

パラメータストアの小話、 AWS CloudFormation doesn't support creating a SecureString parameter type. 種類でSecureStringなパラメータストアはCloudFormation未対応らしい。キーIDは、別アカウントなものでもいけるので、そこら辺をCFn(boto3)で対応す…

CloudFormation AWS::ElastiCache::ReplicationGroup Snapshot memo

AWS

バックアップを有効/無効にするフラグはなく、SnapshotRetentionLimitを0にするとバックアップは無効になる SnapshotWindowは05:00-09:00といった書き方で、sunとかsatとかをつけるとInvalidParameterValueExceptionになる 数週間前までは sun05:00-sun09:00…

AWS::CloudFormation::Interface

AWS

このように書くと Metadata: AWS::CloudFormation::Interface: ParameterGroups: - Label: default: "Network Configuration" Parameters: - VPCID - SubnetId - SecurityGroupID - Label: default: "Amazon EC2 Configuration" Parameters: - InstanceType …

AWSJavaScriptSDK AWS.ECS

AWS.ECSのリンク。 Class: AWS.ECS — AWS SDK for JavaScript docs.aws.amazon.com

ElastiCache Redisメトリクス メモ

AWS

CPUUtilizationとEngineCPUUtilizationの違い。 ホスト全体の CPU 使用率の割合 (%)。Redis はシングルスレットであるため、4 個以上の vCPU を持つノードで EngineCPUUtilization メトリクスをモニタリングすることをお勧めします。 docs.aws.amazon.com do…

Lambdaの予約済み同時実行数

AWS

予約同時実行 関数の同時インスタンスの最大数を保証。ある関数が予約済同時実行数を使用している場合、他の関数はその同時実行数を使用できない。無料。 プロビジョニング済み同時実行 リクエストされた数の実行環境を初期化して、関数の呼び出しに即座に応…

ElasctiCache Redis暗号化

AWS

TransitEncryptionEnabled無効で一度作ったクラスターではAUTHパスワードは設定できないので作り直すしかない CloudFormationでもawscliでも変更できない CloudFormationでAUTHトークンを設定するときはNoEchoを使うとよろしい redis-cliでパスワード付きの…

NoEcho

AWS

パラメータ値をマスクして、コンソール、コマンドラインツール、または API に表示されないようにするかどうか。NoEcho 属性を true に設定すると、CloudFormation は、スタックまたはスタックイベントを記述するすべての呼び出しに対して、アスタリスク (**…

healthCheckGracePeriodSeconds

AWS

Amazon ECS サービススケジューラが、タスクが RUNNING 状態になった後で異常な Elastic Load Balancing ターゲットのヘルスチェック、コンテナのヘルスチェック、Route 53 のヘルスチェックを無視する期間 (秒単位)。これが有効であるのは、ロードバランサ…