JAWS UG Niigata プチキャッチアップ 2024 履歴
初心者向けお試し
EC2をマネジメントコンソールから作成して、Instance ConnectでSSH接続する
マネジメントコンソールから久しぶりにEC2作成したから、UIが変わってて新鮮
今回はプライベートではなくパブリックIPでInstance ConnectでSSH
プライベートの場合は、VPCにInstance Connectエンドポイントを設置しておけばパブリックIPは不要
パブリックアクセスの場合、EC2にアタッチするセキュリティグループのインバウンドにAWSサービスからのIP範囲からのSSHアクセスを許可する必要がある
code:ip-ranges.json
{
"ip_prefix": "3.112.23.0/29",
"region": "ap-northeast-1",
"service": "EC2_INSTANCE_CONNECT",
"network_border_group": "ap-northeast-1"
},
もくもく会
Kinesis と MSK でストリーミングデータ処理を試す
Kinesisの途中まで実施
気になる記事
ECSがEBSボリュームとのネイティブな統合をサポート
既存のEBSボリュームスナップショットから作成された、新規のEBSボリュームにもアタッチ可能。
2024年4月1日からAWS認定試験の受験費用が改定
RDS延長サポート
その他
Aurora Serverless PostgreSQL v1 のPostgreSQLバージョンアップのお話
v1は、2月にPostgreSQL11ユーザは13への強制アップグレードがあるらしい
v1からv2への移行も考えたが、まずはv1上でPostgreSQL13へ上げたあと、v1からv2へ移行する予定。
送信メールのお話
メールの設定は明日は我が身
SPF、DKIM、DMARCの設定は確認しておこう
Gmailの送信者ガイドラインも参考に
社内にAWSを広めていきたい相談
社内にあるぐちゃぐちゃなAWS環境などを整理していきたい
営業などになぜAWSを使うのかを説明したい
AWSコスト削減の話
もうすぐこんなのあるよ
コスト削減の勉強会をみる
後半のLTをみんなで見る
Auroraのコストのお話
本番で使えるインスタンスタイプを運用していくと、何も考えずにやると意外とお金かかる
書き込みは早いので、トータルコストで見て安いか高いか
会社のAWS利用方法の整理をしている話
みんなマネコンから無邪気にサービス立てているので、Terraformでサービスを立てるように少しずつ改善している
認定資格取得について
どこから取得した方が良いか
ソリューションアーキテクト-アソシエイトが幅広くAWSサービスを学べるのでオススメ
気になる記事
CloudFormationから既存リソースのテンプレート作成
Aurora PostgreSQLのBlue / Green デプロイメント
その他
AWSのアクセスキーがいろんなところで使い回されて利用されて困っている
CloudTrailでアクセス先のリソースとアクションはわかるが、アクセス元はわからないので、AWSサポートに問い合わせてアクセス元のIPアドレス一覧は取得できた
アクセスキーは使い回さず、利用用途に応じて権限絞って払い出さないと管理できなくなる
権限設定はIAMグループで
IAM Role Anywhereというサービスもあるので、予算があればこれで管理する手もあり
サーバーレスなデータストア
TiDBとかは面白い
S3にSQLiteを格納して利用する方法も出ている
Cloudflare D1はCDNのエッジ側でSQLiteのレプリカが展開された状態で動作するので、使いこなすと強力
もくもく会
Aurora MySQL から Redshift への zero-ETL 統合を試す
まずは、環境整備まで
お悩み相談
AWSでのデータ分析ダッシュボードは?
QuickSightがある
少数利用なら、作成者数名分の利用料 ( + SPICE利用料 ) で済む
他
新潟でのWeb開発会社など
JAWS-UG新潟の運営メンバーには、Webアプリ開発している会社に勤務中
新潟での最近のオフライン勉強会
DERTAさんでのイベント
Niigata 5分 Techさんでのイベント
他、JAWS-UG新潟のイベントなど、増えてきている
お悩み相談
Fargate から Aurora PostgreSQL にActive Record (Rails 不使用) を用いてIAM認証で接続を試みたら、15分経過後のIAM認証セッション切れをリフレッシュできずに苦労した
とりあえず以下のライブラリを用いて対処
zero-ETL統合を開始しようとしたら、以下のエラー発生。今のところ対処法を探している。
Aurora MySQL Serverless v2 / Redshift Serverless 間の設定
code:bash
aws rds create-integration \
--integration-name zero-etl-integration-test \
--source-arn <AuroraクラスタARN> \
--target-arn <Redshift名前空間ARN>
An error occurred (InvalidParameterCombination) when calling the CreateIntegration operation: Zero-ETL integrations only support Redshift Managed Storage (RMS) instance types. Either upgrade the instance type of your Redshift data warehouse, or choose a different one.
Redshift Serverlessだから Redshift Managed Storageしか使えないはずなのに、このエラーが出ている。
新規AWSアカウント (AWS Organization配下) にて、CloudfrontのDistributionが全く作れない
他のAWSアカウントでは Distribution はよく作っていたが、このアカウント上では初めての作成なのに全く作れない。
サービスクォータで申請したら解決した
お悩み相談
CloudFormationの勉強をしているが、GUIで構築する方法はないか?
CloudFormation Designer
Application Composer
VS Codeでも編集可能
ただし、生成されるテンプレートは純粋なCfnテンプレートではなく、SAMテンプレート。サーバーレスアプリケーション開発に向いている。
AWSサービスのどのあたりから学んだら良いか
よく触っているサービス・興味のあるサービス
AWS認定試験の最初によく出るサービス
Amazon S3は、他のいろんなサービスと連携するので、最初に学んでおくのはオススメ
S3はどんなことができるのか
ファイルの保管場所
バックアップ
データ連携
S3に置いたデータファイルに直接SQLクエリをかける機能もある ( S3 Select / Athena / Redshift Spectrum )
Webサイトホスティング
S3から直接配信だと https が使えないので、httpsを使いたい場合は、Cloudfrontを前段に挟むか、Amplify のホスティング機能を使うと良い
もくもく会
zero-ETL統合のエラーはアカウントを変えたら統合作成できた
エラーが出たアカウントは古いアカウントなので、もしかするとRedshift Managed Storageに対応していないAZのSubnetに作ってしまったのかもしれない(そこまで深く確認してない)
今回用にOrganizationsで新規作成したAWSアカウント上で同じCFNテンプレート使ってRedshift ServerlessやAurora MySQL Serverlessを作って統合作成を試したらエラー発生せず作成できた
なお、Redshiftの拡張VPCルーティングは無効にしないと統合作成できない
来月のプレゼン資料のネタ作成
Application Composer + Serverless + ETLで検討中
気になる記事
Claude 3 でパワポ資料を文字起こし
他
BuilderCardsってできるのか?
日本語版1セット所有しているので、今度のJAWS-UG新潟の本編勉強会で遊べるようにしたい
SESのSandbox制限解除がすんなりいかなかった話
ケース申請でCase Descriptionを上記記事のように簡潔に書いて申請したら、通らなかった
用途とか本文のサンプルなどを書いて申請し直して、24時間経過後にようやく通った
Global Accelerator でWebサイトのマルチリージョンアクセスをできるようにした話
Route53で振り分けようとも思ったが、配下のALBにIPアドレスでしかAレコード指定できず、ALBはIP変化するのでこのやり方では使えなかった
WAFのログから特定のパスへのアクセスを調べる方法は何かあるか?
WAFのログからAthenaでクエリ検索かける方法はある
もくもく会
Aurora zero-ETL integration with Redshift のフィルタリングとCfnのサポートの検証準備
まずはCfnの検証まで。フィルタリング検証は後日。
お悩み相談
CDKでどんなリソースが作られるのか、よくわからなくなってくる
CDKはあくまでCloudformationのラッパーなので、CDKのデプロイはCloudformationのスタックとして実行されている
cdk synth コマンドを実行すると、CDKで生成されるCloudformationテンプレートが確認できるので、生成されるリソースも確認できる
Greengrass って何ができるのか?
Lambdaのローカル実行やDockerコンテナ実行などが可能になる
他
HLS動画再生のためにKinesis Video Streams を使っている
Terraformからforkした OpenTofu
気になる記事
AMIクロスアカウント共有の際にEBSスナップショットが暗号化されている場合の対処法
AMIを共有してもらって環境再現する際に役に立った
他
IoT GreengrassのDockerコンテナにデバッグ目的でシェルにアタッチしたい
この記事だとできそう
Amazon Qはまだ使いにくい
英語しか使えない
今ならBedrockからClaude v3使って問い合わせた方が良いと思う
去年のJAWS-UG新潟でのハンズオン資料があるので、参考まで (Claude v2)
IaCの定義からサービスの関連性をビジュアライズできるツールはあるか?
Cfnのデザイナーは使いにくい
PluralithはTerraformの構成図を生成してくれるので、Terraform使う場合には便利そう
気になる記事
Bedrocで手軽に紙芝居を生成
他
テレビ放送の投票システムを検討中
どこまで予算をかけられるか、想定するアクセス数はどれくらいか、あたりでサービスを少し変えることも検討
KinesisをSQSに変える、API GatewayをAppSyncに変える、等
アクセス数が読めないので、サーバーレスで組むのが常套手段か
簡単なものであれば、以下のような感じで組むのもあり
他にも、配信については以下のサイトが参考になるかも
もくもく会
Step Functionsのワークフロースタジオを色々触る
普段はyamlで直接フローを記述するので、GUIでの操作があまり慣れてないので面白かった
お悩み相談会
IoT Core → Kinesis Data Stream → Lambda の構成があるのだが、Kinesis Data Streamって必要なのかな?
IoT Core → Lambda の構成も取れるはず
Lambdaの前段で、ちょっとしたデータの加工とか、 Amazon Managed Service for Apache Flink (旧名称: Amazon Kinesis Data Analytics) を使ってリアルタイム分析したい場合とか、ある程度まとまった状態でLambdaにデータを送りたいケースとかでKinesis使うケースがあるかも
参考: AWS IoTで取得した情報をKinesis Data FirehoseでまとめてS3に保存してみた
IoT Core → S3だと、センサーデータが来るたびにファイルが生成されるが、Firehoseを挟むことである程度のまとまりでファイル化されてS3に保存される
参考: AWS Kinesisのシャード割り当てのルール
Kinesis Data Streamはシャードという単位で動作する
オンデマンドモードなら、負荷に応じてシャードを自動的に増減してくれるので便利
他
軽量JavaScriptランタイム「LLRT」
AWS CDK Workshop
気になる記事
CloudFront が Lambda Functions URL オリジンのOACをサポート
Functions URLの前段にCloudFrontを挟める
お悩み相談会
Aurora MySQL を v2 (MySQL 5.7 互換) から v3 (MySQL 8.0 互換) にアップグレードしたい
インプレースアップグレード・スナップショット復元のほか、ブルーグリーンデプロイでのアップグレード方法もある
RDS MySQL 5.7 から Aurora MySQL 8.0 への移行方法もまとめられている
BedrockやAWSの学び方
DevelopersIOに色々掲載している
jawsug-niigataのscrapboxに「インプット素材リスト」も参考に
Bedrockは以前のJAWS-UGのBedrockハンズオン資料もご参考に
他
AWS Summit Japan 2024
2024/6/20 - 21 開催
JAWS-UG新潟#17
AWS Expert Online for JAWS-UG#33の内容をお届け
Generative AI Use Cases JPの魅力や使い方
JAWS-UG新潟#18
IoT LT新潟との共催
AWS LambdaハンズオンとLT大会を実施予定
雑談
お客様から提供いただいたAMIからEC2を起動したら、裏でEC2から本番環境のデータを改変するスクリプトが自動起動した件
EC2は検証環境用AWSアカウントで起動したものの、EC2内に本番環境AWSアカウントへのアクセスキー等が含まれていて、気づかないうちにデータが変わっていた
データは復元済
EC2からのほとんどの通信を遮断する等をしないといけなかった模様
こういうトラップが結構仕込まれていてつらい
アクセスキーではなくIAMロールならある程度防げた
ドキュメントも残っておらず、誰も自動起動スクリプトの存在は知らなかった
AWS IoT 1-ClickがEOL
2024年12月16日にはサービス終了
Soracom LTE-M Button for Enterprise → Soracom Funk → AWS Lambda に移行した
LambdaへのPayload文字列は変わるが、基本的な機能は使えるので、Payloadへのアクセス部分を変えれば問題なし
フロントにAstroを使ったサイトの作成
Amplifyへのデプロイはできそう
気になる記事
Amplify Gen2 が GA
お悩み相談
AWS Batchで外部のAPIサーバにアクセスしたいが、IP固定しないといけない。固定化する方法はあるか?
AWS BatchがVPCへアクセスできるのであれば、VPCからNAT Gateway経由でインターネットに出れるかも。可能な場合はNAT GatewayにElastic IPをアタッチすれば、IP固定でアクセス可能になる。
AWS BatchがVPCへアクセスできればの話
この辺りを実施すればいけるかもしれない
Aurora MySQL を v2 (MySQL 5.7 互換) から v3 (MySQL 8.0 互換) にアップグレードができた
インスタンスサイズが小さかったため、サイズアップ
v3 の選択肢が出てきたので、v3へアップグレード
ダウンタイム約5分程度で済んだ
AWS IoT Coreの制限は?
クォータを確認すると良い
調整可能なものは、上限緩和申請が可能
IoTでTLS通信実装すると面倒なので、SORACOMを使うことにした
今回の要件に合うのが SORACOM Funnelだった
SORACOM Funnel経由でAWS IoTに転送する予定
気になる記事
S3でいくつかのHTTPエラーコードに対して課金されなくなった
お悩み相談
Generative AI Use Case JP (GenU) を企業で使う際に、最初リポジトリをフォークして使用しようとしていたがプライベートリポジトリにできなかったため、一旦コードを持ってきて別リポジトリにプッシュしたが、今度は元のリポジトリからの更新に追従できなくなった。何か良い構成・使い方はあるか?
一旦ローカルにクローンして、リモートリポジトリを追加設定してそのリポジトリにプッシュしてから利用するとか
一旦Issueに投げて質問してみるのが良いかもしれない
RDSのリザーブドインスタンスってどうなの?
プリペイドのような使い方が望ましいので、使用率が100%近くないと損するケースもある
インスタンスの変更に制限があるので、クラウドの利点である柔軟性は失われる
本当にリザーブドインスタンスにすべきなのか、改めて検討することをお勧めする
利用料の確認
毎回AWSマネジメントコンソールにログインして確認しているわけではない
AWS Budgetsでアラートを設定しておくと良い
特に予測値のアラートはオススメ