AWS

AWS copilot のバージョンを上げた後デプロイエラーが発生する

install されている copilot を、既存のプロジェクトで途中からアップデートした場合、 copilot deploy の実行時エラーが発生することがある。 ✘ execute svc deploy: upload deploy resources for service app: put addons artifact to bucket stackset-hog…

AWS Elemental MediaConvert で、hls を 生成時、iOS で再生されない

動画をStreaming再生させたい時、AWS Elemental MediaConvert で hls に変換を行った。特徴 - AWS Elemental MediaConvert | AWS変換後の動画情報や変換状態は、EventBridge から取得出来るが、COMPLETE event に含まれる、変換後のURLが2種類ある。これのど…

Aws::S3::Client.copy_object の copy_source は、URL encode されていなければならない

例えば、バケットからバケットへオブジェクトをコピーするときに、 `The specified key does not exist.` とエラーが出る場合がありました。 client = Aws::S3::Client.new client.copy_object( bucket: out_bucket_name, copy_source: src_bucket_name + '/…

AWS copilot でサーバー構築

AWS copilot は、webサーバー、バックグラウンドで常時起動するサーバー、定期ジョブ(Cronのような)が、かなり簡単なymlとコマンドだけでセットアップでき、オートスケールにも対応できます。GCPのKubernetesに近いです。 コンテナ内でコマンドを実行し、D…

Paker で Chef を利用時、ライセンスエラー

Packer で type に chef-solo を指定時、コマンドが失敗するようになった。 これは、ライセンスの承諾が必要になったことが原因。 Chef Infra Client cannot execute without accepting the license Chef never successfully completed! Any errors should b…

CloudFront の Origin に API Gateway を入れた場合に リダイレクトが発生する

API Gateway で API を作った場合など、そのURLをCloudFrontのOriginに指定したい時がある。その時に、Origin Protocol Policy を、HTTP Only にしていると、リダイレクトが発生する。HTTPS Onlyにする必要がある。

Alexa 開発時、スキルの呼び出し名の変更が反映されない

2018/09/21現在、スキルの呼び出し名を変更しても、それだけでは反映されない。 ストアに公開するための認定時にも、古い呼び出し名のまま動作確認が行われてしまう。これを反映させるには、一度テストを無効にして、再度有効にすることで反映される。それに…

AWS 利用時に、HTTPS 通信する方法いくつか

ドメイン認証でよいのであれば、https で通信する時は、AWS Certificate Managerで証明書を取得し、CloudFront で選択すれば良いが、いろんな条件でそれが出来ないことがあるため、そのときの対処方法と問題点です。 AWS Certificate Manager で、CNAME を利…

AWS Mysql に IAM Role で接続する

MySQL 5.6 マイナーバージョン 5.6.34 以降、MySQL 5.7 マイナーバージョン 5.7.16 以降、Amazon Aurora 1.10 以降 で対応している。ただし、1秒間あたりの接続開始の認証回数が20回と少ないため、アクセスの多いシステムでは採用できない。 IAM データベー…

一般提供された CloudFront lambda@Edge で、Basic認証を設定する

preview と 仕様が変わっています。nodejsは6.10を選ぶ必要があり、headers の構造も変わっていました。 Cloudfrontのarn指定に、lambda を version がなければいけないのも、なかなかめんどくさい変更です。 あとは、role の設定も面倒ですが、一旦書きませ…

CloudFront にCloudFront を入れるときの注意点

CloudFront は、Request header に含まれる Hostの値が、CloudFrontに設定されたCNAMEと一致していないとレスポンスを返さない。 CloudFrontに設定されたCNAMEは、すべてのCloudFrontで2つ同じCNAMEを設定できない。Behavior の Forward Headers は、Host を…

Route53 で Domain name status code がブランクな場合

jp や、io のドメインで確認しましたが、Domain name status code がブランクのままになるドメインがあります。 whois コマンドで、 [状態] Active となっていれば、気にせず安心して良いと、AWSに回答いただきました。

SES でメール送信時にリジェクトされる

Net::SMTPFatalError: 554 Message rejected: Email address is not verified. The following identities failed the check in region US-EAST-1 ActionMailer で送信した例だが、このようにメール送信がデフォルト状態だと出来ない。 Your Amazon SES accou…

Lambda@Edge を利用し、Cloudfrontに設定ようとしたとき、エラーが表示される

There was an error creating the trigger: Completing this action would cause the maximum number of distributions with Lambda function associations per owner to be exceeded (maximum allowed is 0). Lambda@Edge は現在プレビュー版となっており、…

AWS SSM で、EC2に任意のコマンドを実行する

ssm は、ssh で接続することなく、 必要な role があれば、特定の EC2 上へコマンドを送ることが出来ます。 Amazon Linux に対しても、実行できます。EC2の自動セットアップを行いながらも、ssh キーの登録をしたくないようなときに役立ちます。 実行するリ…

AWS Elastic Beanstalk x Ruby on Rails で構築する

セットアップする環境 Ruby on Rails5 RDS (Mysql) Puma CloudFront を用いて起動させる。アプリケーション名は {app name} とする。 手順 RDS を起動 eb コマンドで、同時にRDS を起動させることも可能だが、アプリケーションの削除と同時に、RDSも消えてし…

AWS Lambda で、 python から mysql に接続する

aws lambda で python から mysql が使いたい場合は、 $ pip install mysql-python -t . $ vi lambda_function.py ...さらに、`libmysqlclient.so.*` がないと起動できない。http://www.filewatcher.com/ ここなどで適当なファイルをダウンロードし、同じフ…

Certificate Manager で取得した証明書が、CloudFront で選択できない

Certificate Manager が 東京リージョンでも取得できるようになりましたが、 CloudFrontは、バージニア北部 (us-east-1) で取得した証明書でないと設定できません。よくある質問 - AWS Certificate Manager(簡単に SSL/TLS 証明書を作成、管理、配置) | AW…

CloudFront 使用時、scheme を取得する

CloudFront を使用時、https での通信でも、nginx の $scheme に http が入ってしまっている。CloudFront-Forwarded-Proto ヘッダーに、original の scheme が入っているので、それを利用する。 CloudFront Whitelist Headers に、CloudFront-Forwarded-Prot…

AWS EC2 スポットインスタンス 制限緩和のリクエスト

AWS

ケースの作成 左メニューの制限ボタンを押し、 制限緩和のリクエスト を更に押します。CCには、自分のメールアドレスを忘れない。 制限タイプは、スポットインスタンスの項目が無いですが、「EC2インスタンス」を選び、 新しい制限値「200」申請理由の説明に…

AWS micro を使うときにやっておく設定

micro インスタンスは、その他のタイプとは違い、 バースト、低速モードというものがあり、 低速モードがあるのでsmallにしないと使い物にならないという人がいるが、それは嘘で、 CPUを制限し、低速モードにさせなければsmallよりも高速に処理を行うことも…