- 1. AWS Hands-on for Beginners を理解しながら進めてみた #1
- 2. aws上にdockerをCI/CDで展開する
- 3. 【CloudFormation】IPv4/IPv6/Dual-Stackを切り替え可能なネットワークとEC2の作成
- 4. 汎用人工知能 AGI「Artificial General Intelligence」とは?
- 5. ハッカソン参加時の備忘録 ~ 第6回:【Python】AWS LambdaとAWS Rekoginitionを連携させてみよう ~
- 6. AWS CloudFormationでCognitoのサインアップ前トリガーを実施
- 7. Salesforceアクセス時のクレデンシャルとトークンをAWS SecretsManagerに保持する
- 8. S3のバケットごとダウンロードするよ(※ちょとした失敗事例あり)
- 9. Terraform 備忘録
- 10. AWS Transit Gatewayを整理してみた
- 11. AWS Direct Connectを整理してみた
- 12. 【AWSまとめ】プライベートサブネットのEC2に、ローカルからEC2 instance connect endpointを使ってSSH接続する
- 13. Amazon S3 Transfer Acceleration
- 14. CloudWatch Alarm もしくは EventBridge から SNS に通知した時の内容を整理してみた
- 15. セキュリティグループの設定をコピーする
- 16. AWS+Lambda+API+GOでオウム返しLine Bot
- 17. クレデンシャルではなくAssume Roleを利用した外部AWSアカウントへのアクセス
- 18. AWS Control Towerについて
- 19. AWS re:Invent 2023
- 20. AWS NATゲートウェイの状態がFailedになる
AWS Hands-on for Beginners を理解しながら進めてみた #1
### #1 [AWS上にセキュアなプライベートネットワーク空間を作成する](https://pages.awscloud.com/JAPAN-event-OE-Hands-on-for-Beginners-Network1-2022-reg-event.html?trk=aws_introduction_page “ハンズオン公式サイト”)# 背景
久しぶりの投稿になります。
現在、都内の金融系SI企業でインターンをさせて頂いており、大変ありがたいことに[AWSハンズオン](https://aws.amazon.com/jp/events/aws-event-resource/hands-on/”ハンズオン公式サイト”)を自由に進められる検証環境を用意していただきました。
以前、個人開発をした際には無料利用枠にこだわり、サービスの想定外の課金におびえながらインフラ構築をすすめていたのですが、今は好奇心の赴くままにサービスを触れており、とても恵まれていると日々、感じております。# 本題
最初のハンズオンとして、「[AWS Hands-on for Be
aws上にdockerをCI/CDで展開する
https://tepppei.hatenablog.com/entry/2020/07/19/120625
【CloudFormation】IPv4/IPv6/Dual-Stackを切り替え可能なネットワークとEC2の作成
初投稿になります。自身の理解をより深めるためのアウトプットをするために投稿しました。
今月1日からIPv4のパブリックIPアドレスが全て課金対象になったため、これはIPv6が使える環境を用意できるようにならなければという危機感を感じました。(今更感…)
本稿のテンプレートファイルはそれに対応するために作成しました。
切り替えについては単純に興味本位で試みたものです。
本稿のテンプレートファイルで作成する構成はお勉強用のものだと思っています。
現場ではこんな単純な構成は稀でしょうし、きちんとした要件定義の元にIPプロトコル等の仕様を決定するものと思います。## 概要
– 本稿のテンプレートファイルを全てデプロイすることで、ネットワークからEC2 Instance Connect Endpointまで手軽に準備できます
– ご利用は自己責任でお願いいたします
– 本稿のリソースのみ展開する場合は、2024/2/23時点において12ヶ月の無料利用枠内で全て作成可能です
– 筆者は12ヶ月の無料利用枠がある状態です。2月初旬にリソース作成を行いましたが今のと
汎用人工知能 AGI「Artificial General Intelligence」とは?
AGIが実用化される時期は、何年後なのか?
—
多くの専門家は、今後10年から50年の間に実現可能であると予測していますが、技術的な課題や倫理的な問題など、多くの障壁が存在します。ソフトバンクの孫さんは、10年以内に実現させるとおっしゃっています。__AGIは、人間の能力を拡張し、より良い社会を作るための強力なツールとなる可能性を秘めています。__
現在、AGIはまだ実現しておらず、人類が開発したAIは特定のタスクや領域に特化したものが主流です。一般的な知識や幅広い能力を持つ真のAGIはまだ達成されていません。ただし、その方向に向けていくつかの研究やプロジェクトが進行しています。
例えば、OpenAIのGPT(Generative Pre-trained Transformer)シリーズは、大規模なデータセットを用いてトレーニングされ、多様なタスクに対応できる柔軟性を持つ言語モデルとして注目されています。しかし、これはまだ特定の知識領域に特化しており、完全なAGIではありません。
AGI「Artificial General Intelligence」と従来のAIの違い
–
ハッカソン参加時の備忘録 ~ 第6回:【Python】AWS LambdaとAWS Rekoginitionを連携させてみよう ~
こんにちは。ITエンジニアのきゅうです。
前回、AWSのLambdaとAWSのS3(ストレージサービス)を連結させるサンプルを備忘録したので、今回は当方が良く使うAWSのAIサービスの一つであり、簡単に画像解析を行うことが出来るサービス『Rekoginition』と連結したいと思います。今回作成するシステム構成図です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3618971/7c64153a-d89e-581e-df58-a8148b63e814.png)※前回の備忘録に記載した『S3』が登場しております。
これはRekognitionに読み込ませる画像をS3などに格納しておく必要がある為です。
ですので、今回の記事では以下の記事の設定がしてあることが前提となります。https://qiita.com/kyuu2197/items/201d33437ba33665f840
# Amazon Rekoginitionについて
改めて、Rekognitionについて
AWS CloudFormationでCognitoのサインアップ前トリガーを実施
# はじめに
今回はCognitoでのサインアップ前LambdaトリガーをAWS CloudFormationを用いて構築していきたいと思います。
これにより、Cognitoで登録されるアカウントを制限することが出来たりすることが可能になります。# 目次
・構成について
・Lambdaの設定項目
・LambdaのCloudFormation作成
・Cognitoの設定項目
・CognitoのCloudFormation作成
・事後確認
・最後に
・参考# 構成について
CognitoとLambdaのみで構成します。
Lambdaのコードを呼び出すのにS3を利用しますが、特に今回作成する構成に影響は出ないです。
CloudFormationの構成として、初めにLambdaを構築し、その後にCognitoを構築します。# Lambdaの設定項目
今回はnodejs.18.xを利用し、コードについてはS3から取得してくるようにします。
IAMロールは作成しますが、Cognitoへのアクセスを許可するためのポリシーステートメントはCognitoのIDが必要なためCognitoのCl
Salesforceアクセス時のクレデンシャルとトークンをAWS SecretsManagerに保持する
# 概要
タイトルで内容を示そうとした割に意味が分かりにくくて申し訳ありません。
実施したい内容は下記です。– SalesforceへAPIアクセスしたい
– 認証方法は [OAuth2.0 クライアントログイン情報フロー](https://help.salesforce.com/s/articleView?id=sf.remoteaccess_oauth_client_credentials_flow.htm&type=5) を使用
– Pythonで実装
– [simple-salesforce](https://pypi.org/project/simple-salesforce/) というモジュールを利用
– クレデンシャルはAWS Secrets Managerのシークレットとして保存
– 取得したアクセストークンもシークレットとして保持、再利用する# ポイント
取得したアクセストークンを保持し、再利用する仕組みとします。
### 毎回認証した場合
毎回認証する場合下記のようになります。
– ユーザーAからのリクエスト→認証を実行、トークン取得、AP
S3のバケットごとダウンロードするよ(※ちょとした失敗事例あり)
どもども、ogimanです。
2月なのに気温が20度近くいったり、と思ったら次の週には10度以下になったりで体調が・・・
気圧のせいか毎朝全然おきれません〜おじさんにはツラミ:ghost:今日はAWSのS3バケットをまるっとダウンロード(アップロード)する方法を記載します。
コマンドに限らず技術全般で新しいインプットをすると、古い情報が玉突きのように記憶からなくなっていく!
コマンド覚えていられない症候群(記憶力がないだけw)に罹患しているのでメモっときます。ご存知の方は時間が勿体ないのでここで離脱しましょうw
## ゴール
– S3のバケットごとをダウンロードする
– ローカルのデータをS3にフォルダごとアップロードする## 要件
以下の2つの要件がありましたとさ
– 複数のサービスが扱っているのですが、1つのサービスがクローズとなったため、S3のバックアップしておきたい
– と思ったら、その後にバックアップした一部のデータを他のAWSアカウントのサービスへ移植したい## 実行例
**S3のバケットごとをダウンロードする**
“`bash
# ディレクトリ
Terraform 備忘録
# Terraformとは?
IaCの一種です。AWS・GCP・Azureなど、様々なクラウドで使用することが可能です。# IaCとは?
IaC (Infrastructure as Code) とは、インフラリソースをコードで管理することです。
各クラウドで、コンソールをポチポチと押してインフラリソースを作成せずとも、コードさえ書いてしまえば、簡単にリソースが作成できます。# IaCのメリット
私は業務でTerraformを使用しているのですが、その中で感じたメリットは以下です。**・新たな環境を即座に作成できる**
一度コードを用意すれば、別環境で同じリソースを作成する際に、簡単に、即座にリソースを作成できます。**・ヒューマンエラーが減る**
コンソールからリソースを作成すると、入力忘れ等が発生する可能性が高いです。
また、手順書を作成しても、次の日にはレイアウトが変わっていたりして、「このボタンどこ??」みたいなことが起きる可能性もあります。
それに対して、terraformでコードを用意しておけば、terraform apply というコマンドを実行するだけ
AWS Transit Gatewayを整理してみた
# 背景・目的
AWS ネットワークについて、曖昧に覚えている箇所があるので整理してます。
今回は、AWS Transit Gatewayについて整理します。# まとめ
下記に特徴を整理します。|特徴|説明|
|:– |:–|
|概要|VPCとオンプレを相互接続するために使用できるNW中継ハブ
リージョン間ピアリングはAWSデータセンター間の全てのNWトラフィックは、物理層で自動的に暗号化される|
|概念|・アタッチメント
・MTU
・Transit Gateway ルートテーブル
・Associations
・Route propagation|
|課金形態|・TGW接続数/時間
・TGWを経由するトラフィック量|# 概要
[Transit Gateway とは](https://docs.aws.amazon.com/ja_jp/vpc/latest/tgw/what-is-transit-gateway.html)を元に整理します。> Transit Gateway は、仮想プライベートクラウド (VPC) とオンプレミス
AWS Direct Connectを整理してみた
# 背景・目的
Direct Connect(以降DXと書きます)について、試す機会もなく知識が乏しいため、簡単に整理したいと思います。# まとめ
下記に特徴をまとめます。|特徴 | 説明|
|:– | :–|
|概要| 標準のイーサネット光ファイバを利用する
ISPを介さずにVPCやパブリックAWSサービスに接続できる|
|コンポーネント|ConnectionsとVirtual interfacesがある|
|Connection|専用接続とホスト型接続がある|
|Virtual interfaces| Public VIFとPrivate VIF、Transit VIFがある|
|LAG|LACP(リンクアグリゲーションコントロールプロトコル)を使用して、複数のConnectionを単一のDXエンドポイントに集約する論理I/F|# 概要
[What is AWS Direct Connect?](https://docs.aws.amazon.com/directconnect/latest/UserGuide/Welcome.html)を元に整理します。
【AWSまとめ】プライベートサブネットのEC2に、ローカルからEC2 instance connect endpointを使ってSSH接続する
## 踏み台サーバーじゃなくて、EC2 instance connect endpointを使ってプライベートサブネットのEC2にSSH接続する。
最近まで、セキュリティの側面から、パブリックサブネットに所謂、踏み台サーバー(EC2)を置いて、その踏み台サーバーを経由してプライベートサブネットの配置した計算用サーバー(EC2)にアクセスしていました。
この手法は、確かにセキュアなのですが、同時に二つのサーバーを稼働させる必要がありコストがかかります。そこで、踏み台サーバーを使わないEC2 instance connect endpointを使ってプライベートサブネットにSSH接続する方法についての複数の情報源をもとにして、ここでまとめてみます。。## 構造イメージ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/700849/54344504-fd7e-ceea-a252-186cdce6b061.png)## VPCのリソース構成
![image.png](https://qii
Amazon S3 Transfer Acceleration
Amazon S3 Transfer Accelerationとは
————–
Amazon S3 Transfer Accelerationは、クライアントとS3バケット間でファイル転送を高速かつ簡単で安全にできるユースケース
・1つのバケットに世界中からファイルのアップロードが行われる場合
大陸間で定期的にギガバイトからテラバイト単位でデータを転送する場合
インターネット経由のため、帯域幅等は考慮できないように見える要件
・バケット名に「.」をが含まれていないこと
・Transfer Accelerationは仮想ホスト形式のリクエストでのみサポートされます
例
https://bucket-name.s3.region-code.amazonaws.com/key-name設定方法
————————-
Amazon S3>バケット>バケット名>プロパティ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3146038/24
CloudWatch Alarm もしくは EventBridge から SNS に通知した時の内容を整理してみた
# CloudWatch Alarm からの通知
## SNS
次の通り、SNS トピックを用意しておきます。
![スクリーンショット 2024-02-19 11.22.35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280929/7372ab0d-5178-963c-5f0a-a7700b0548bf.png)
## CloudWatch アラーム
CloudWatch アラームで先程作成した SNS を通知の送信先としておきます。
![スクリーンショット 2024-02-19 15.46.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280929/dd61c57c-afef-5c1c-f7ea-d20cea60684d.png)
![スクリーンショット 2024-02-19 15.46.41.png](https://qiita-image-store.s3.ap-northeast-1.am
セキュリティグループの設定をコピーする
# はじめに
AWSの管理コンソールを触っていたら、セキュリティグループをまっさらな状態から作るのではなく、既存のセキュリティグループの設定を複製する方法があることに気付いたので、その方法を備忘録としてまとめてみました。
# 方法
* AWSのEC2サービスの画面に入り、画面左側のツリーで[ネットワーク & セキュリティ]から[セキュリティグループ]を選びます。
* 所望のセキュリティグループを選択して、[アクション]→[新しいセキュリティグループにコピー]を選択します。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/312166/f85508d5-0d60-643e-1594-a6ee9eb91929.png)
* [新しいセキュリティグループにコピー]画面が開いたら、ソースセキュリティグループ(※コピー元のセキュリティグループ)が正しいことを確認します。
* さらにセキュリティグループ名やVPCを入力して、インバウンド/アウトバウンドのルールを適宜変更した上で、[セキュリ
AWS+Lambda+API+GOでオウム返しLine Bot
# はじめに
– 「AWSとGoを勉強したい!」ということで、オウム返しをするLine Botを作成しようと思いました。
– AWSを使ったサーバーレスの基本の勉強にもなってよかったです!# 目標
– 以下の感じでオウム返ししてくれるbotを作成します。
![oumu_kansei.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3525798/a1e1c91b-42f7-49c5-9445-6436b0eeb809.png)# 全体の構造
– Lineにメッセージを送ると、LINEプラットフォームは設定されたWebhook URLに対してPOSTリクエストを送信する。
– API Gatewayは、このリクエストをトリガーにLambda関数を実行する。
– Lambda関数はGo言語で書かれたコードを実行する。![line_bot_aws_oumu.drawio.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com
クレデンシャルではなくAssume Roleを利用した外部AWSアカウントへのアクセス
# 概要
データエンジニアをしています。
直近で参画したプロジェクトにて、データマートのデータをファイル形式にして外部のAWS S3へエクスポートする機能を開発する必要がありました。我々のチームではデータパイプラインをスクラッチで内製開発したという経緯があり、データマートをファイル出力する機能自体は存在していました。
一方で、外部のAWS S3へ出力する機能は存在しなかったので、機能追加とともに主にAssume Roleについて改めて学習する機会となりました。以降、主にAssume Roleに焦点を当てた内容となります。
# Assume Roleの仕組み
まずはかんたんにAssume Roleの仕組みについて振り返ってみます。
IAMユーザーおよびリソースが、**STS経由でロールの権限を一時的に引き受ける**(Assume)仕組みとなります。引き受けた側は一時的にロールにアタッチされたポリシー相当の権限を行使することができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.co
AWS Control Towerについて
概要
————————-
AWS Control Towerの機能
・ランディングゾーン
複数のアカウント環境をAWSのセキュリティとコンプライアンスのベストプラクティスに基づき、Control Towerが自動的にセットアップします・コントロール
以下3つがランディングゾーンで設定されたAWSアカウントのガバナンスを提供するためのルール
・予防コントロール
・検出コントロール
・プロアクティブコントロール予防コントロール、検出コントロール、プロアクティブコントロールは以下の3つのカテゴリから適用される
・必須
・強く推奨
・選択的・Account Factory
新規アカウントの発行を標準化するテンプレート・ダッシュボード
ランディングゾーンのOUやアカウントに適用されているコントロールの確認やポリシーの非準拠の検出などの確認できる備考
次は、手順とコントロールについてもう少し掘りたいと思いますhttps://docs.aws.amazon.com/ja_jp/controltower/latest/userguide/aw
AWS re:Invent 2023
# はじめに
本田技研工業 RoadSyncチームのバックエンドを担当している安部と申します。
RoadSyncの概要説明はTechブログ第一弾に記載していますので、ぜひご覧ください。
https://qiita.com/nakamuloud/items/a4fe2d3173b361bcb3fe
今回は、2023/11/27〜12/1にラスベガスが開催されたAWS re:Invent 2023に参加しましたので、そのイベント内容を紹介します。
# AWS re:Inventとは?
AWS re:InventはAWS 最大のラーニングカンファレンスで、毎年ラスベガスで開催されています。複数のホテルでセッションが開催され、徒歩、シャトルバス等で移動し受講しに行くというスタイルのイベントになります。
![IMG_1283.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3347144/bb59362a-52fa-1370-bd74-ffb7aac99021.jpeg)
# 滞在スケジュール
ス
AWS NATゲートウェイの状態がFailedになる
## 概要
NATゲートウェイ(NGW)を作成後、状態を確認していたらFailedになっていることに気がついた。自分の場合のトラブルシューティングを簡単にまとめる。
## 原因
NGWが所属するVPCにインターネットゲートウェイ(IGW)が設置される前にNGWを作成していた。
## 詳細
NGWの状態メッセージに下記のように出ていた。
“`
Network vpc-0ff1012a9b84d58bb has no Internet gateway attached
“`これはNGWがインターネットにアクセスできていないということだ。
原因は先にも記載したが所属VPCにIGWを作るより前にNGWを作ってしまった。
そのためNGWがインターネットに接続できない状態になっていた。## 解決方法
1. IGWを作成しVPCにアタッチした。
1. 状態がFailedになっているNGWを一旦削除
1. 再度NGWを作り直す。上記を実施し、問題は解消した。