AWS関連のことを調べてみた

AWS関連のことを調べてみた

10分で分かるAWSの生成AI/ML系サービスについて

## はじめに
[Japan AWS Jr. Champions Advent Calendar](https://qiita.com/advent-calendar/2023/jr-champions) 11日目の記事です!

先日現地参加してきたAWS re:Invent2023にて「Amazon Q」を中心に様々な生成AI系のアップデートがありましたが、「AWSが提供する生成AI系サービスの全体像って、、?」となったので、今回まとめてみたいと思います。

各サービスの詳細については、Japan AWS Jr. Champions Advent Calendar内でも様々な方がまとめていただいているので、「まずは手っ取り早くAWSの生成AI/ML系サービスを把握したい!」という方向けに記事を書いてみました。

## まずは
#### Amazon Bedrock
Amazon Bedrockの公式ドキュメントはこちらです。

生成AI系のアプリケーション構築のための基盤サービスになり、これから紹介する生成AI系サービスの裏でもBedrockが動いています。

https://aws

元記事を表示

GitHub Actions入門~Cloud9でGitHub ActionsのHello Worldを実行してみよう

 現場によっては、メンバーそれぞれがビルドやテスト、デプロイをしているところや、開発チームのメンバーがコードを更新するだけで、自動的にビルドとテストがなされる「CI(継続的インテグレーション)」を利用していたり、ビルドやテストだけでなく、リリースプロセス全体を自動化する「CD(継続的デリバリー)」を使っているところもあると思います。

 普段インフラ寄りの作業をしている方であれば、「GitHub Actionsを使ってビルド・自動テストを実施する」といってピンとくる方も多いと思いますが、実際に興味はあるけれど、どうGitHub Actionsを使って良いのかわからないという方も多いと思います。

 CI/CDを導入してリリースに関わる作業が自動化されることで、開発者が開発に集中できたり、ソフトウェアの品質向上や、リリース時間の短縮に繋がるといったメリットは充分にあると思います。

今回の目標

 GitHub Actionsを使った自動テストやビルド・デプロイの知識を学んでいく上で、今回まずはAWSのCloud9という開発環境のサービス上でHe

アーキテクチャは誰が考えても一緒になる?

本記事は株式会社 [Works Human Intelligence](https://www.works-hi.co.jp/) の アドベントカレンダー の 10 日目の記事となります。

そんな節目の今日は、アーキテクチャ、特にAWSのアーキテクチャを考えた際にずーっとモヤモヤ思っていたことに対するアンサー記事を書きます。

これはクラウドアーキテクトという仕事に対するモヤモヤでもあります。同じモヤモヤ抱えている人の参考になれば幸いです。

ちなみにAWS歴は4年目、今年[AWS All Certifications Engineers](https://aws.amazon.com/jp/blogs/psa/2023-japan-aws-all-certifications-engineers/)を取得しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/471646/635a103d-6945-d749-ebdb-b09262862f99.png)

# アーキテクチャって何

Amazon S3 Express One Zoneを試してみた

# 背景・目的
先日、[Announcing the Amazon S3 Express One Zone storage class](https://aws.amazon.com/about-aws/whats-new/2023/11/amazon-s3-express-one-zone-storage-class/?nc1=h_ls)が発表されたので、どのようなものか確認し試してみます。

# まとめ
– 目的:一桁ミリ秒のデータアクセスを提供するS3ストレージクラス
– アプリケーションはリクエストが最大1桁速く完了するメリットを享受可能
– パフォーマンス:現行のオブジェクトストレージと比較して最大10倍の速度
– コスト:リクエストコストがS3 Standardの50%低減
– トランザクション:1秒あたり数十万のトランザクションをサポート
– 配置:1つのアベイラビリティゾーン(AZ)に配置
– 可用性:単一のAZで99.95%を実現し、Amazon S3サービスレベルアグリーメント(SLA)に基づいている
– 冗長性:単一のAZ内の複数のデバイスに冗長的に保存され、冗長

EC2ステータスチェック起点のイベント駆動を考える

# はじめに
この記事はDevOps on AWS大全の一部です。
DevOps on AWS大全の一覧は[こちら](https://qiita.com/tech4anyone/items/b06f88035d27c6ef13b2)。

この記事ではEC2ステータスチェックに関連する内容を超詳細にまとめています。

具体的には以下流れで説明します。

– EC2ステータスチェックとは
– EC2ステータスチェックの活用

AWSの区分でいう「Level 200:トピックの入門知識を持っていることを前提に、ベストプラクティス、サービス機能を解説するレベル」の内容です。

# この記事を読んでほしい人
– EC2ステータスチェックがどういうサービスか説明できるようになりたい人
– EC2ステータスチェックを採用するときのベストプラクティスを説明できるようになりたい人
– AWS Certified DevOps Engineer Professionalを目指している人

# EC2ステータスチェックとは
EC2ステータスチェックは、EC2インスタンスの状態を監視するための機能です。
これ

【AWS】S3でバケットを公開せずHTTPSのみで静的サイトを公開する方法

## はじめに

あなたはクラウドサービスに不慣れなチームで、AWSでの構築の担当者になりました。
あなた自身もあまりAWSに慣れ親しんでいるわけではないものの、新しく、また需要の伸びているクラウド技術を使った開発ができることにワクワクしていることでしょう。

クラウドつよつよなあなたはきっとこの時点でブラウザバックして問題ありません。
興味があれば読み物としてお付き合いください。
また、お急ぎのあなたは[手順までスキップしてください。](#手順)

さて、簡単なランディングページを公開したいという要望がチーム内に出てきました。
他のプロジェクトでAWS経験のある上司がこう言います。

「S3で簡単に静的サイト公開できるよ」

これは真です。真であるだけに悪魔の導きとなる可能性を多分に秘めている発言だと思います。

これを聞いたあなたは早速調べてみることでしょう。”s3 静的サイト 公開”という感じでしょうか。
検索上位に以下のAWSの公式ガイドが出てきます。

[チュートリアル: Amazon S3 での静的ウェブサイトの設定](https://docs.aws.am

Databricks on AWSを閉域網で構成する

## Databricks on AWSの閉域網構成

Databricksとは一言でいうとレイクハウスプラットフォームで、DWH/データレイクのデータ蓄積・管理とBI/AIのデータ分析の環境を同じシステム・UI上から利用できます。
Databricksのアーキテクチャ上の特徴の一つとして、自社データをDatabricks社管理のクラウド上には配置せずに、自社のAWS等のクラウドアカウント上にのみ自社データを配置する構成を取れる点があります。本記事では、Databricks on AWSをAWS内からインターネットに接続しない閉域網で構成することで、よりセキュリティが高い構成にすることを試してみます。

## システム構成概要

今回は下図のようなシステム構成としました。図中のリソース名は、本記事内での識別名として便宜的に付けた名前です。

![databricks閉域網構成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/315655/79c38878-82f2-a626-9caa-edbfd58796

【AWS】EBS

# EBS(Elastic Block Store)とは
EC2向けにブロックストレージを提供するサービス。作成したEBSボリュームの容量と種類に応じて利用料金が発生する。

同じAZにあるEC2にアタッチして使用する。

複数のEC2から1つのEBSにはアタッチできず,ボリュームタイプに応じてIOPSが異なる。
また,1つのEC2に対して複数のEBSがアタッチできる**マルチアタッチ機能**が存在する。

# EBSボリュームタイプ
## SSDタイプ 
料金が高いけど高速
| ボリューム | 説明 |
| —- | —- |
| 汎用SSD | デフォルトのボリューム。OS起動用ディスクや開発テスト環境に使用 |
| プロビジョンドIOPS SSD | 必要なIPOS(1秒当たりに処理可能な読みこみ/書き込みのアクセス数)を指定|

## HDDタイプ 
料金が安いけど低速
| ボリューム | 説明 |
| —- | —- |
| スループット最適化HDD | 高いスループットを実現 |
| Cold HDD | アーカイブなど利用頻度の低い大量データの格納向け |

AWS SDK for Rust × fazzy-finder で AWS CLIを超絶パワーアップする

# 1 行まとめ
ついに GA になった AWS SDK for Rust を使って以下のような CLI を作るまでの流れを簡単になぞります。

![demo.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/254034/c10eb358-3d95-438f-24da-083d203bedb9.gif)

この記事は [AWS for Games Advent Calendar 2023](https://qiita.com/advent-calendar/2023/aws-for-games) の 10 日目の記事です。
あんまりゲームじゃないですが、DevEX 向上は最終的にゲーム開発の高速化につながるはずだ、ということで

# :page_with_curl:はじめに:page_with_curl:
2023 re:Invent では多くのアップデートがありましが、その中にあまり話題になっていない(※個人の意見です)しかし重大なアップデートがありました。
それがこれ(バァン)

https://a

AWSプレフィックスリストの話

## セキュリティグループが汚い事が許せない

ある日、突然こんな事思いませんか?
**「私のセキュリティグループ汚すぎ!」**
こうなったら四六時中その事を考えてしまい、仕事が手につかなくなりますよね。

原因は色々ありますが、最近の事情だとコロナ禍などを迎えてリモート出社が働き方の主流になっていることが原因の一つなのかなと思います。
複数の開発拠点や個人宅からのIPを、セキュリティグループで許可していると記載量が増大してしまい大変見にくいものになってしまいます。

拠点がある以上、許可するIPが増えるのはしょうがない、でもキレイにしたい!
この記事では、このジレンマを解決していきます。

## AWSプレフィックスリストとは
プレフィックスリストとは、複数のCIDRブロックを束ねたものです。
このプレフィックスリストを事前に作成しておくと、ルートテーブルやセキュリティグループの設定や管理に便利に使う事ができます。

## 設定手順
1. マネジメントコンソールを開く
2. VPCのコンソール画面に移動
3. 左側メニューから「マネージドプレフィックスリスト」を選択
4. 右上の「プ

Lambda Container Imagesでサーバーレス運用のモヤモヤが解決した話

:::note info
この記事は [atama plus Advent Calendar 2023](https://qiita.com/advent-calendar/2023/atamaplus) 10日目の記事です。
:::

こんにちは。atama plus SREチームの加藤です。

みなさんはサーバーレスアプリケーションをどのように管理していますか?
AWS Lambdaで動かすならAWS SAM, Serverless Framework, Chaliceなどのサーバーレスフレームワークは構築が簡単で魅力的ですね。

atama plusでも[Zappa](https://github.com/zappa/Zappa)というサーバーレスフレームワークを使ってAPIを構築・管理していました。
しかしインフラをTerraformで一元管理できないなどの課題が溜まってきたため、Lambdaのコンテナイメージ[^1]を利用する構成に移行しました。

今回はZappaの運用に感じた課題と、それをLambdaのコンテナイメージでどのように解消したかを紹介します。

# 当初の

AWS CLIを用いてS3データを同期する。

# はじめに
AWS S3にはクロスリージョンレプリケーション(以降はCRRと表記します。)という機能があります。
https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/replication.html

CRRでは要件を満たせない場合のS3データ同期方法として、
AWS CLIを用いてS3データを同期する方法となります。

# 要件・環境イメージ
・S3バケットとS3バケットをCRRを用いずに同期したい。
・同期元のデータが削除されている場合は同期先のデータを消す。
・AWS CLIを使用できるEC2は存在する。(aws-cli/2.9.19)

![sync-image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629107/5ac222e7-f515-97c1-32e4-9dc643277b44.png)

# 1. 同期コマンド
基本的な使い方としては以下のようになります。
“`php
aws s3 sync <同期元

CloudFormationを使わないLambdaのCICDについて

## はじめに
この記事は[ディップ Advent Calendar 2023](https://qiita.com/advent-calendar/2023/dip-dev)の10日目の投稿です。

この記事では、あるシステムで導入したLambdaのCICDについて紹介をしたいと思います。

## LambdaのCICDについて
LambdaのCICDは現在(2023/12時点)でCloudFormationを使用したものがメジャーかと思いますが、
今回はそちらを使わず、以下の内容で構成しました。
CloudFormationを使用しなかった背景などは後ほど説明させていただきます。

### 使用したもの
– GithubEnterprise(GHE)
– AWS CodePipeline
– AWS CodeBuild
– AWS CodeDeploy
– AWS S3
– AWS Lambda
– AWS SQS(テスト実行用)

![lambda_ci_cd_v1.png](https://qiita-image-store.s3.ap-northeast-1.amaz

【OCI クラウド移行ガイド】 Aurora PostgreSQLからOCI Database with PostgreSQLへ移行してみた

# OCIクラウド移行ガイドとは
オンプレミスやAWSなど、複数のプラットフォームからOracle Cloud Infrastructureへの移行プロジェクトに取り組んでいるクラウドエンジニア(@araidon,@kazunishi,@yama6)による、OCI移行手順をまとめたシリーズ記事です。
各回、サンプルワークロードから対象サービスを取り上げ、移行手順をガイドいたします。
まとめ記事は以下になります。

https://qiita.com/yama6/items/b197c0fe3ec75eb02637

# 移行するサービス:Aurora PostgreSQL
今回、移行対象とするのはAmazon Aurora PostgreSQLです。
PostgreSQLクライアントアプリケーションである、pg_dumpと、pg_restoreを用いて、
Aurora PostgreSQLのDBをOCI Database with PostgreSQLに移行する手順を解説します。

# 移行方式

Amazon Aurora PostgreSQLのデータをpg dumpで取得し、そ

Amazon BedrockでLLMを使ったベクトル検索を試す

この記事は [Metaps Advent Calendar 2023](https://qiita.com/advent-calendar/2023/metaps) 10日目の記事となります。

# 概要

こんにちは。メタップスホールディングスのSREエンジニア [@sre_yamakita](https://twitter.com/sre_yamakita) です。
皆さんはre:Invent 2023で発表されたアップデートはご覧になりましたでしょうか [^aws-weekly]。特に生成AI系のサービスで数多くの発表が行われた印象です。
今回はその中でも個人的に気になったベクトル検索について、プロトタイプ実装を交えて紹介したいと思います。

# そもそもベクトル検索とは?

[AWS Blog – Vector search for Amazon DocumentDB](https://aws.amazon.com/jp/blogs/aws/vector-search-for-amazon-documentdb-with-mongodb-compatibility-is-now

EC2にDockerでOpenVPNを構築してVPN接続をする

## さいしょに

通常のVPN接続ではなくて、特定のタイミングでパケットロスを擬似的に発生させたり、ネットワーク遅延を意図的に起こすための環境を構築していきます。

最後の項目をやらなければ、普通のVPNです。

## 準備

なるべく簡単に構築したいので、ec2インスタンスにdockerの環境を構築しておきます。
ちなみに以下はAmazonLinux2なので、AmazonLinux2023だと少し導入が違うかも。

docker
“`bash
$ sudo yum update
$ sudo amazon-linux-extras install docker
$ sudo service docker start
$ sudo systemctl enable docker
$ sudo usermod -a -G docker ec2-user
“`

compose
“`bash
$ sudo curl -L https://github.com/docker/compose/releases/download/v2.17.3/docker-compose-$(unam

この時代にRSS(Atom)をホストする

# はじめに
[にわのわ](https://twitter.com/niwa_nowa)です。
時代の逆光かはたまた先取りかRSS feedをAWSでホストしていこうと思います。

RSSというプロトコルを利用しつつも、特定のwebサイトの更新を取得するのではなく、
インターネットをプレイしている際に見つけた面白いサイトを自分のRSS feedに追加していきたい。というのが今回の目的です。

余談ですが、RSSは0.9x系だとRich Site Summary、1.x系だとRDF Site Summary、
2.0系だとReally Simple Syndicationの略語となっています。
ちなみに今回はAtomを使用します。

各バージョンについてはwikipediaがよくまとまっていると思います。

https://ja.wikipedia.org/wiki/RSS

# 作ったもの
今回作ったものはこちらで公開しています。

https://github.com/niwanowa/niwanowa-RSSFeed

AWS SAMで構築しているので
“`bash
sam b

AutoScalingで、EC2に別VPCのENIをアタッチ

# はじめに

先日、EC2のアップデートで、別のVPCのENIをアタッチできるようになり、それを記事にしました。

https://qiita.com/a_b_/items/b28a90cca7bf79ad3f82

これを、AutoScalingでもやってみました。

# 概要

– AutoScalingでENIを追加でアタッチする機能はない
– AutoScalingグループにライフサイクルフックを追加して、EventBridge -> StepFunctionsでアタッチします
– 事前に別VPCにENIを作っておきます
– 同じAZに作っておく必要があります

# 参考

https://repost.aws/ja/knowledge-center/ec2-auto-scaling-multiple-network-interfaces

https://qiita.com/mittsukan/items/83b55ac65eaf23309f15

# 構成図

![image.png](https://qiita-image-store.s3.ap-northe

[Windows]タスクトレイからEC2インスタンスを起動停止できるツール作ってみた

## 概要

タスクトレイからEC2インスタンスを起動停止できるツール作ってみました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/50690/d1b58070-b9da-d877-9f56-6704661d6d3d.png)

ここに置いてますので、よければどうぞ。

https://www.vector.co.jp/soft/winnt/util/se526099.html

## 動作要件

– .NET 8.0が必要です
– AWS の認証情報が読み込み可能となっている必要があります。クレデンシャルファイルを直接作成いただくか、AWS CLI等で設定ください
– (参考) https://docs.aws.amazon.com/ja_jp/powershell/latest/userguide/specifying-your-aws-credentials.html

## 作った動機

昨今、VS Code(Remote Development)の広がりにより、開発環境

AWS Certified Cloud Practitioner(CLF-C01)とGoogle Cloud Digital Leaderの受験をした話

# はじめに
結構前になりますが、2022年12月、2023年3月にAWSとGCPそれぞれのEntry Levelの資格証を取得しました。

![스크린샷 2023-12-10 00.39.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/366512/d68e9b96-fa2b-6a2c-c782-700dea370148.png)

“この人はこんな感じで勉強したんだー”ぐらいの感覚で気軽く読んでいただけますと幸いです 🙂

# なぜ受験したか
直近ではフロントエンド開発やSalesforceに取り組んでいますが、自分のロールだけに限らず、プロジェクトの仕組みを把握したり最初から構造を考えたりする際、クラウドベースで考慮するのが業界の標準になったと実感するのが多かったです。

また、システムの一部(木)だけでなく、全体像(森)を見てアーキテクトとしての能力を身につけるための一歩を踏み出したいと思いました。

そこで、まずは資格を取得することにしました。

### なぜ資格証を?