AWS

ベストプラクティスを教えてくれるAWS Trusted Advisorの一部アラートは無視できる(2020年6月版)

AWS Trusted Advisorといえば、コスト最適化、パフォーマンス、セキュリティ、フォールトトレランス、サービスの制限という5つの分野でAWSについてのベストプラクティスを教えてくれる大変ありがたいサービスである。 AWSアカウントの設定に問題がある可能性…

Serverless Frameworkをv1.65.0にバージョンアップしたらAWS IAMロール名の長さ制限エラーが出た

CI環境でnpm i -g serverlessからsls deployを実行したら、ある時急にエラーが出るようになったので対処方法などをまとめておく。 [Serverless Framework v1.65.0の仕様変更] [対処方法1:スタック名を変更する] [対処方法2:旧バージョンのServerless Framewo…

Amazon API Gatewayで静的サイト公開 / Serverless Frameworkで外部ファイルを参照する

Serverless Frameworkを利用して、Amazon API Gateway経由で静的サイトを公開してみた*1。 利用したServerless Frameworkのバージョンは以下の通り。 $ sls version Framework Core: 1.62.0 Plugin: 3.3.0 SDK: 2.3.0 Components Core: 1.1.2 [Amazon API Ga…

オンライン輪読会を始めることになった:The Amazon Builder's Library編

約4ヶ月ぶりにオンライン輪読会を始めることになった。今回は本を買って読むのではなく、ネット上で公開されている資料、The Amazon Builders’ Libraryを読んでいく。 [The Amazon Builder's Libraryとは] [前回のオンライン輪読会] [学ぶ人は仲間が欲しい] …

【完結編】QuarkusでネイティブコンパイルしてLambdaとDynamoDBを連携する

2019年3月のQuarkus公開から、AWS Lambda上でQuarkusでネイティブコンパイルしたJavaアプリを動作させるべく戦いを繰り広げていた。今回ようやくDynamoDBとの連携を実装することができた。 [これまでの戦いの歴史] [vert.xのエラー] [HTTPS通信の罠] [Java 8…

QuarkusでAWS LambdaとAmazon DynamoDBを連携する

この記事はAWS LambdaとServerless #1 Advent Calendar 2019の15日目の記事です。 qiita.com [やること] [QuarkusでDynamoDBを利用する] [DynamoDBクライアントとネイティブコンパイル] [Lambda: Java 8ランタイム] [Lambda: カスタムランタイム] [まとめ]

DynamoDB用NoSQL WorkbenchでDynamoDB Local (Localstack) に接続する

節約のためにDynamoDB Localを使っている身としては嬉しいニュースが飛び込んできた。 Amazon DynamoDB 用 NoSQL Workbench が、DynamoDB ローカルのサポートを追加 [DynamoDB用NoSQL Workbenchとは] [NoSQL Workbenchのダウンロード] [NoSQL WorkbenchからD…

Quarkus (+GraalVM) でネイティブコンパイルしたJavaアプリをAWS Lambdaにデプロイした

Quarkus 1.0のリリースが見えてきた! quarkus.io AWS Lambdaのカスタムランタイム用にnative-imageでバイナリを生成するための拡張機能の使い方がようやくわかったのでまとめておく。 [Quarkusとは] [カスタムランタイム自前実装の取り組み] [Quarkusのエク…

Amazon Route 53でドメインを取得する際のプライバシーの保護について

写経しながらAWS ECS上でDockerコンテナを動かしてWebアプリケーションを作っている途中で、Amazon Route 53で自分のドメインを取得する機会があった。プライバシーの保護について気になり、ドメインを取得しようかどうしようか迷う場面があったので、誰かの…

#AWSDevDay Tokyo 2019 2日目にも参加してきた

1日目に続いて、2日目(2019年10月4日)もフル参戦! [何で参加しようと思ったか] [セッションの感想] オープンソースコミュニティで加速するサーバーレスの未来 AWS活用ですすむ地方/中小企業のゲームチェンジ AWSサービスで実現するバッチ実行環境のコンテ…

#AWSDevDay Tokyo 2019 1日目に参加してきた

単独開催としては第2回になるAWS DevDay Tokyo 2019の1日目に参加してきた。去年に続き2度目の参加。 aws.amazon.com [何で参加しようと思ったか] [セッションの感想] ゼネラルセッション Deep Dive on AWS Chalice: A Serverless Microframework for Python…

アンケートに回答してゲットしたAWSクーポンを登録した(2019年7月)

AWS

先日もらったAWSクーポンをようやくAWSマネジメントコンソールで登録してクレジットとして有効化したので、その時の手順などをまとめておく。 [AWSクーポンを入手するには] 新規アカウント取得キャンペーン AWS主催イベントのアンケートに回答 AWS後援イベン…

削除されたIAMユーザーのARNはどこへ行くのか?―KMSでキーポリシーが更新できなくなった話―

AWS認定 DevOpsエンジニア - プロフェッショナルには合格したものの、触れば触るほど「AWSなんも分からん……」と言う感じでダニング=クルーガー効果を地で行く毎日。 togetter.com 本日はKMSとIAMにハマった話。 [KMSとは] [KMSのリソースベースのポリシー:…

Amazon DynamoDBとDynamoDB LocalのBillingModeに関するAPI仕様差分

既存コードで利用するAWS SDK for Javaのバージョンを適当に最新版にしたときに、DynamoDB Localと本物のAmazon DynamoDBのAPIの動作が違っていたせいでバグチケットを起票される羽目になった話。 [DynamoDB Localとは] [DynamoDB Localの注意事項] [DynamoD…

#AWSSummit Tokyo 2019 / Day3 に参加した

2019年6月14日(金)に開催されたAWS Summit Tokyo 2019 Day3に行ってきた。 今年は3日間通して参加して色々と課題を見つけることができた。 kdnakt.hatenablog.com kdnakt.hatenablog.com [セッション外の感想] 認定者ラウンジ 昼食 オフ会 [参加したセッショ…

#AWSSummit Tokyo 2019 / Day2 に参加した

2019年6月13日(木)に開催されたAWS Summit Tokyo 2019 Day2に行ってきた。 昨日のDay1に引き続き2日目の参加で、今年は明日も含めて3日連続参加の予定。 kdnakt.hatenablog.com [2019/07/01追記] Day3も行ってきました! kdnakt.hatenablog.com [2019/07/01…

#AWSSummit Tokyo 2019 / Day1 に参加した

2019年6月12日(水)に開催されたAWS Summit Tokyo 2019 Day1に行ってきた。どのセッションも色々と学ぶことが多くて、AWSは奥が深いなと感じた。 AWS Summit Tokyoへの参加は去年に続き2度目。 kdnakt.hatenablog.com [2019/07/01追記] Day2、Day3も行ってき…

AWS CloudTrailはすべてのAWS APIコールを記録するわけではない

AWS CloudTrail(クラウドトレイル)は監査向けサービスで、AWS上でのユーザーアクティビティとAPI使用状況を追跡してくれる。その程度の理解で使っていたところ1時間ほど時間を無駄にしてしまったので、気づいたことをまとめておく。 [AWS CloudTrailとは] …

実戦TDD! / PythonのMagicMockを使ってDynamoDBをモックしたテストコードを実装する

今は昔、チームメンバーがPython3で書いたコードありけり。コード、AWS Lambdaにデプロイされて動作しつつ、ときたまエラーを吐きてバグりけり。 ……しかし、このPythonプロジェクト、テストコードがない(古文調は諦めた)。 そこで、ただバグを直しても芸が…

#Quarkus で作成したJavaアプリをAWS Lambda で動かそうとして失敗した

【2019/11/12追記】 1.0.0.CR1で動作確認できました。🎉 kdnakt.hatenablog.com 【追記ここまで】 どうやら2019年3月19日現在は、Quarkus(v0.11.0)で生成されたバイナリをAWS Lambda上で動かすことはできないらしい。 以下の記事の続きです。 kdnakt.hatenab…

AWS認定 DevOps エンジニア - プロフェッショナル (DOP -CO1) に合格した

AWS

無事合格したのでまとめておく。 2018年11月にデベロッパー - アソシエイト試験を突破した際に、2019年3月までに合格すると決めての試験受験だったのでちょっと緊張した。 kdnakt.hatenablog.com [所感] [どんな試験なのか] [試験対策リソースと学習方法] […

awslabs/aws-cdkにプルリク2本投げてマージされた話とか

OSSプルリク2019年1本目&2本目。🎉 github.com

aws-cdkで既存のCloudWatch Logsロググループと組み合わせてCloudFormationテンプレートを作成した話とか

連日の雲の写真である。芸がない。 既存のCloudWatch Logsロググループに対して、メトリクスフィルターとCloudWatchアラームを作成する、という簡単なタスクがあった。 aws-cdkでCloudFormationテンプレートを出力し、スタックの作成を行った際に問題が起き…

aws-cdkをバージョンアップした話とか

CloudFormationを素のyamlやjsonで書くのは辛い……と思っていたところ、2018年夏にaws-cdkに出会った。 github.com aws-cdkはTypeScriptとJavaでCloudFormationを実装することができる素敵ツールである。最近はC#や素のJavaScriptでも実装できるようになった…

Amazon CloudWatch Logs Insightsで検索結果が変で焦った話とか

そういやCloudWatch Logs Insights使ってみるか!と思って使ったら上手くいかなかった話。 [CloudWatch Logs Insightsは2018/11/05以降有効] [まとめ]

#AWS re:Invent 2018 ダイジェスト 東京 テクニカルセッション トラック2で気になったアップデートの話とか

この記事は write-blog-every-week Advent Calendar 2018の12日目の記事です。 前日の記事は、こまど (id:ky_yk_d) さんの「Angularで「ネストされたルート」を実装する(シンプルな実装 / モジュール切り出し / 遅延ロード)」でした。 ky-yk-d.hatenablog.…

#AWS 認定デベロッパー – アソシエイト (2018 年 6 月リリース) 試験を突破した話とか

先日受験して無事合格したのでまとめておく。 少し早いけど、2018年のふりかえりも兼ねて。 [何で受験しようと思ったか] [受験して何が分かったか] [今後どう活かすか] [まとめ] [2019/03/07追記] プロフェッショナル試験にも合格した。 kdnakt.hatenablog.c…

続・ #AWSDevDay Tokyo 2018 で色々学んだ話とか

1日目と3日目、それぞれ午後から参加してきた! ということで3日目の感想を。 お品書き。 [3日目(11/2)の感想ツイート] [3日目(11/2)に視聴した講演] マイクロサービス時代の認証と認可 / 都元ダイスケ氏 Backends For Frontends 入門 / 古川陽介氏 Micro Fr…

#AWSDevDay Tokyo 2018 で色々学んだ話とか

1日目と3日目、それぞれ午後から参加してきた! しかし、どうせなら午前中から参加すれば良かったな……と反省。 次回こそは。 やや遅くなってしまったが、まずは1日目の感想を。 お品書き。 [何で参加しようと思ったか] [1日目(10/31)の感想ツイート] [1日目(…

catコマンドでシェルスクリプトファイルを作成してハマった話とか

シェルスクリプトで条件判定をして、ある条件を満たした場合にcatコマンドで別のシェルスクリプトファイルを生成する、ということをやっていてハマったので備忘。