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

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

[QuickSight]複数OrganizationsのAWSコストをまとめて可視化してみた

## はじめに
パブリッククラウドを利用する上で、コストのモニタリングは大切な運用作業です。財務の面ではもちろんですが、コスト増加の背景には意図しない設定変更やセキュリティインシデントが隠れていることもあります。毎月のコストを確認して増減の原因を特定・改善することで、クラウド環境を最適化できます。

弊社のCCoEでも定期的にコストを調査することで、誤った設定を特定したり、コスト削減の施策を模索して実践したりしています。過去の取り組みはこちらの記事でご紹介しています。

https://qiita.com/pohd_ccoe/items/4530622fd9a09e5cfcb0

https://qiita.com/pohd_ccoe/items/04aff521dae192472769

このようなコスト最適化の取り組みをさらに強化するため、マルチアカウント環境のコスト確認を効率化するダッシュボードをQuickSightで構築しましたので、ご紹介したいと思います。

## なぜダッシュボードを作ったのか
弊社では、グループ会社も含めると全部で数十個のAWSアカウントを運用しています。

元記事を表示

AWS Security HubにSnykの検出結果を連携してみる

# 1. はじめに
AWS Security Hubは、AWS環境のセキュリティ状況を一元的に管理するためのサービスです。
Snykは、アプリケーションの脆弱性を発見し修正するためのセキュリティツールです。
それぞれのサービスを使ったことはあるものの、連携できることは知らなかったので試してみました。

# 2. 前提条件
– AWSアカウント
– AWS Security Hubが有効化されていること
– Snykアカウント
– SnykとGitHubアカウントを連携済み
– 無料アカウントでは利用NGでしたので、有償版が必要そうです。
今回はSnykの無料トライアル期間で検証しています。

# 3. SnykとAWS Security Hubの連携設定

### AWS Security Hubの設定

– AWS Security Hubの「統合」から、Snykを検索して、「結果を受け入れる」をクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/28783/2951f

元記事を表示

クロスアカウントクロスリージョンの設定方法

# 設定方法
## (1)各アカウントでCloudWatch データを共有を行う
![スクリーンショット 2024-06-28 10.16.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2983197/38724cd3-0890-3f65-93b3-cf858195f6a8.png)
“`
CloudFormaitonで指定する値
Policy:CloudWatch-and-AutomaticDashboards
“`

作成されるIAMロール情報
ロール名:CloudWatch-CrossAccountSharingRole
ポリシー:CloudWatchAutomaticDashboardsAccess
ポリシー:CloudWatchReadOnlyAccess

信頼関係
“`
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Effect”: “Allow”,

元記事を表示

「Amazon Bedrock 生成AIアプリ開発入門」 レビュー #Bedrock開発入門

## はじめに
このたび、AWS コミュニティで活躍されている @minorun365 さん、@moritalous さん、@hedgehog051 さんが執筆された「Amazon Bedrock 生成AIアプリ開発入門」を読了いたしましたので、レビューをさせていただきます。

:::note info
著者の @minorun365 さんより書籍をご恵贈いただきました。この記事はその書評を個人の見解として述べるものです。
:::

![IMG_0409.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2988434/2f93f83b-15e8-c365-4a91-d320195efb19.jpeg)

本レビューが皆様の参考になれば幸いです。
## Amazon Bedrock 生成AIアプリ開発入門
2024年6月26日に発売されています!

Amazon Bedrock 生成AIアプリ開発入門 [AWS深掘りガイド]


## 本書の特徴

本書の特徴として、特に以下の2つの特徴が際立っていると感じま

元記事を表示

クロスオリジンリソース共有(CORS)とは?+AWS ソリューションアーキテクトに求められる観点

## はじめに
AWSの資格を全て取得しました。勉強している時に、良く出てくるけど、詳しくはよくわかっていなかった **クロスオリジンリソース共有(CORS)** について、調べてみました。まず、AWSの公式サイトに記載されている内容をおさらいし、アーキテクトに求められる観点を提示し、仕組みについて理解を深めていきたいと思います。

## クロスオリジンリソース共有が重要なのはなぜですか?
インターネット技術がまだ新しかった時代では、**クロスサイトリクエストフォージェリ (CSRF) の問題**がありました。これらの問題では、被害者のブラウザから別のアプリケーションに偽のクライアントリクエストが送信されていました。

たとえば、被害者が銀行のアプリケーションにログインしたとします。その後、だまされて新しいブラウザタブに外部ウェブサイトを読み込まされたとします。そして、その外部ウェブサイトは被害者のクッキー認証情報を使用して、被害者に**なりすまして**データを銀行のアプリケーションに中継するのです。結果として、権限のないユーザーが銀行のアプリケーションに**意図せずアクセスする**よ

元記事を表示

AWS アカウントの MFA(他要素認証)の設定方法

# AWS MFA (多要素認証)の設定

以下の手順で MFA を追加
1. AWS にログイン
1. 検索バーに IAM と入力
![77b15e5d02cfeaa5767557761fe4d224.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/357904/0adbde36-acd4-0e7f-0882-d656ea1dba4b.png)
1. サービス > IAM を選択
1. IAM ダッシュボードが開くので、右側の Quick Links の中にある `自分の認証情報` を選択
![e8a2031e29b175330ff3f5909b597d78.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/357904/f7c696ca-558d-bcd3-1711-12060e364db6.png)
1. 認証情報一覧の中に `他要素認証(MFA)` という項目があるので、その中の `MFA デバイスの割り当て` を選択

元記事を表示

【AWS】EC2とRDSが異なるAZにある場合、処理性能に影響はあるのか?

# 概要
AWS AutoScalingGroup(EC2)のAZとRDSのAZが異なる場合、処理速度に影響がある?
ということで、こちらについて解説していきます。

# 結論
影響あることがわかりました。
具体的には、異なるAZ間の通信が発生すると、同じAZ間の通信よりも遅いです。

## 検証前提
今回、以下の内容で検証しました。

・EC2インスタンスのAutoScalingGroupのAZをap-northeast-1aとap-northeast-1cの二つにしている
・EC2インスタンスを二台起動している(それぞれ1aと1cに一台ずつ)
・それぞれのEC2にECSタスクを立ち上げ、タスク内で動くプログラム(API)が稼働している
・RDSインスタンスのAZはap-northeast-1aのみ(レプリカは無し)
・アプリはDB通信を行うプログラム

## 検証結果
APIを何回か投げていると、応答性能に幅が見られました。
これは、1aにあるECSタスクにAPIコールが投げられた時と、1cにあるECSタスクにAPIコールが投げられた時の差と考えられます。実際にコマンドを使って、E

元記事を表示

AWS DevOps Engineer Professional受験記

AWS DevOps Engineer Professional(DOP-C02)の受験記になります。

# 自己紹介
– 総合電気メーカー 入社3年目
– 業務内容は主にデータ分析
※データ分析とはいえデータを取得、加工するAWSのアーキテクチャなんかも考えたりするのでそれなりにAWSを業務でも利用している
– AWS歴 2年
– 好きなサービス Lambda
– 取得済みAWS資格 CLF、SAA、SOP、DVA

# 勉強方法
とにかく[Cloud Tech](https://kws-cloud-tech.com/)の問題集を解きまくる。
受験1か月前から勉強を始め、少しづつ問題を解き進めていた。
通勤に1時間ほどかかるため朝晩10問ずつ解いて、土日も5,60問解くようにしていた。
私のやり方としては

1週目
とりあえず軽く解いて軽く解説を見る
2週目
各選択肢がなぜ正解か、なぜ間違いなのかを理解し、新しく学んだ内容はノートにまとめる
3,4週目
絶対に正解するように問く
元記事を表示

amazon linux2023にphp5.6を入れたい

## 背景
既存のシステムがamazon linux2だったがもうそろそろサービスが終了するということで、amazon linux 2023に移行しますのでとりあえず既存システム同じ環境を用意してください~となり見てみたところPHP5.6が使われてるじゃないですか~~~

ほなじゃあphp入れるのにまずepel君入れますか~
“`
sudo amazon-linux-extras install epel
“`
すると
“`
amazon-linux-extras command not found
“`
amazon-linux-extras君はいないって怒られた(´・ω・`)

なななんとamazon linux 2023には搭載してないらしい…

## やったこと
epelが入れられないのでremiリポジトリからインストールを断念してソースコードを入れてビルドする方針に変えてやります
まずビルドに必要なパッケージを入れるとこから始めよう
“`
sudo yum install -y gcc gcc-c++ make automake autoconf kernel-de

元記事を表示

【超小ネタ】EC2を再起動するとSystems Managerに少し早く認識されると公式ハンズオンで書かれていた

プライベートな環境のEC2に、セッションマネージャやフリートマネージャを用いて接続した経験がある方は多いでしょう。その中で、設定に漏れがあり修正したものの、マネージドノードに表示されるまで時間を要した、という方もいらっしゃるかもしれません。

このとき設定を正しく直した状態でEC2を再起動すると、「お、少し早いタイミングでマネージドノードになった!」ということが多々あります。これについてAWSから公式に出されているハンズオンで言及されている箇所を見つけたので共有です。対象ハンズオンはこちらです↓

https://catalog.us-east-1.prod.workshops.aws/workshops/d071f444-e854-4f3f-98c8-025fa0d1de2f/en-US/lab-one/step-three

この中のLab One、Create route tablesセッションで以下のように言及されています。

> It might take up to 15 minutes for the Systems Mananager Agent to register

元記事を表示

暗号化されたRDSスナップショットを別AWSアカウントで使えるようにするためのスクリプトかいた

# AWSの仕様

https://repost.aws/ja/knowledge-center/share-encrypted-rds-snapshot-kms-key

に記載の通りですね。

これを楽にするためのスクリプトをかきました。

KMSはTerraformで作成している前提になります。

## KMSの作成のTerraformコード

– modules/kms_rds_snapshot/main.tf

“`hcl
provider “aws” {
profile = var.delegator_alias
alias = “delegator”
region = “ap-northeast-1”

default_tags {
tags = {
Environment = var.env
Owner = var.owner
BillingGroup = “${var.project}/${var.env}”
IaC = “Terraform”
}

元記事を表示

AIに画像を認識させて写っているものの詳細を文字列で出力したい

## はじめに
画像認識APIが各社から提供されています。
目的は、画像を認識させてその画像に写っているものの詳細を文字列で出力することです。
例えば、シロナガスクジラの画像を入力すると「動物」ではく、「シロナガスクジラ」という文字列が出力されるようなものです。

## Cloud Vision API
Googleから提供されている画像認識APIです。(Cloud Vision API)

https://cloud.google.com/vision/docs/detecting-web?hl=ja

こちらのAPIを使って、画像に写っているものを認識させてみます。
入力画像:
![IMG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/403148/507efd43-ec9c-1b17-c830-65cf59b55837.jpeg)

“`text
10 Web entities found:

Score : 1.498650074005127
Description: Th

元記事を表示

AWS クラウド移行サービス

## クラウドのコンセプト
サーバーには企業が保有・管理をするオンプレミスサーバーとベンダーのサーバーを使うクラウドサーバーと両方を組み合わせたハイブリッドクラウドの3種類が存在します。本記事ではオンプレミスからクラウドサーバーへ移行する際使用できるサービスとコンセプトを紹介します。
### クラウドの利点
1. 世界中からアクセスできる
2. リソースの即時提供およびオンデマンドで管理できる
3. リソースの共有によるコスト削減できる
4. リソースの拡張と縮小が瞬時にできる
5. 従量課金制である
### AWS CAF
AWS CAF(クラウド導入フレームワーク)はクラウド導入に伴うベストプラクティスをまとめたもので、以下の6つのパースペクティブで構成されています。一つ一つの内容が記事一つ分ほどあるので今回はAWS CLFに十分な範囲で紹介します。
1. ビジネス
コストや利益を重視したパースペクティブ
2. 人員
クラウド人材の育成やチーム構築を重視したパースペクティブ
3. ガバナンス
制御と監督を重視したパースペクティブ
4. プラットフォーム
クラウドアーキテクチャの設計

元記事を表示

Linux OSとは

なんかよく聞くけどいまいち理解できていなかったLinuxについて、備忘録として残します。
[参考にしたサイト](https://www.youtube.com/watch?v=91-TmH12o3s)

[目次]
– Linuxって何?
– Linuxで何ができるの?
– Linuxを使うメリットはあるの?
1.多くの種類がある
2.無料で使える
3.スペックの低いパソコンでも使える
– Linuxの導入方法は?
– 総括

# Linuxって何?
– macOSやWindowsOSと同じ**OSの一つ**
– 当初はパソコン用のOSとして作られたが、今はさまざまな家電にも使われている
– webアプリケーションを公開する時に必要な「webサーバー」を設定する際にもLinuxが使われることが多い

このペンギン🐧がキャラクターなのかな?

![スクリーンショット 2024-06-26 17.26.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3822835/4c3646d0-d6de-e5b6-

元記事を表示

主要なAPI一覧と概要+AWS ソリューションアーキテクトに求められる観点

## はじめに
__APIって何?__ 初めて言葉を聞いた時、アプリケーションをつなぐ窓口のようなものだよと説明されて、わかったようなわからないような __もやもや__ したまま、なんとなくわかった気になっていました。AWS資格を全て取得し、実務経験もそこそこに積んだので、説明が出来ないと恥ずかしいと考えて、主要なAPI一覧と概要を整理しました。あわせて、AWSソリューションアーキテクトとして、求められる観点を記載致しました。

## AWS ソリューションアーキテクトに求められる観点
・AWS Lambda 関数上で実行されるアプリケーションを構築したい。
・複数の顧客がこのアプリケーションを使用する。
・各顧客に特定の期間のリクエストの割り当てを与えたい。
・クォータは顧客の使用パターンと一致する必要がある。
__これらの要件を満たすソリューションは?__

__ソリューション例__
Lambda 関数を呼び出すためのプロキシ統合を使用して Amazon API Gateway REST API を作成する。顧客毎に、適切なリクエスト割り当てを含む API ゲートウェイの使用計画を

元記事を表示

ローカルからS3に同期させた体験談

こんにちは!私は駆け出しエンジニアで、現在AWSの勉強中です。最近、AWS S3を使ってローカルファイルを同期させようとした際、初歩的なミスで無料利用枠を超えてしまったので、その体験を共有します。

## 失敗談から学ぶAWS S3の使い方
先日、ローカルからS3にフォルダーを同期させようとしたのですが、操作ミスで無料利用枠を超えてしまいました。AWS S3の無料利用枠は以下の通りです:

12ヶ月間
5 GB の標準ストレージ
20,000 件の Get リクエスト
2,000 件の Put リクエスト

私はAWS CLIを使って同期を行いましたが、メインディレクトリのまま実行してしまいました。その結果、ローカル全てのファイルが同期されてしまいました。

「なぜこんなに時間がかかるんだろう?」と不思議に思っていたところ、やっとのことで異変に気づきました。「ん?すごい数のファイルを読み込んでいるぞ…」と確認したら、案の定、AWSからアラートメールが届きました。

すぐに無料利用枠を確認すると、12ヶ月間は5GBのストレージが無料ですが、1ヶ月に20,000件のGetリクエストと2,0

元記事を表示

AWS SAM を知る #AWS

## 初めに

最近AWS上のシステムを触るときに触れた技術であり、よく理解できなかったのでドキュメントに触れつつ基本的な使い方について紹介していきます。

本記事の前半ではSAMやSAM CLIの概要と特徴について説明し、後半にコマンドの使い方について紹介していきます。コマンド紹介までスキップするには[こちら](#SAM CLIコマンドについて)

## AWS Serverless Application Model (AWS SAM)とは

最初に[公式ドキュメント][sam]から引用してSAMの概要・特徴を説明します。

### SAMの概要

公式ドキュメントより

> AWS Serverless Application Model (AWS SAM) は、サーバーレスアプリケーションの構築と実行における開発者の操作性を向上させるツールキットです。

では次にSAMの特徴について説明していきたいと思います。

– コード記述によりアプリインフラを定義できる
– サーバーレスアプリケーションを管理できる
– コネクタを利用してリソース間の権限移動を動的に行える

元記事を表示

データ分析基盤構築:Terraformを用いたRDS、Glue、Redshiftによるデータ移行

# はじめに

本リポジトリは、Terraformを使用してAWS上にデータ分析基盤を構築し、RDSからRedshiftへのデータ移行を行うための手順をまとめたものです。これにより、インフラ管理の効率化とデータ分析の迅速化が可能となります。

作成したレポジトリーはこちらです。

https://github.com/sugiyama404/practice_aws_glue

# 目的
1. AWS上のデータ分析基盤を自動構築し、インフラ管理の効率化を実現
2. RDSからRedshiftへのデータ移行を自動化し、データ分析を迅速化

# アーキテクチャ

![aws.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/731268/1c1b787f-c95f-0735-02e6-3fd40e4213e2.png)

基盤は以下のコンポーネントで構成されています。

+ RDS: MySQLやPostgreSQLなどのデータベースをホストします
+ Glue: データ変換とデータロードのためのサーバーレス

元記事を表示

Amazon BedrockでClaude3.5を触ってみる part1

# 前置
数日前にリリースされたClaude3.5 Sonnetが現時点の性能が非常に良いという情報がXに流れてきた
せっかくなので触ってた
https://claude.ai/chats

レスポンスも早い。
Claude公式サイトは英語だが日本語での回答もしてくれる。

AI回答曰くAmazon BedrockにもClaude 3.5 Sonnetは対応しているようなので、いい機会だし触ったことがないサービスの1つであるBedrockを触ってみようと思う。

![スクリーンショット 2024-06-25 202342.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3796391/83280570-d27c-7f27-4919-12299becbc5d.png)

(ちなみに筆者は生成AIについてはChatGPTをシステム開発で軽く使っているくらいの知識しかない)

# 本題
という訳で早速触って行こうと思う。

会社の学習用AWSアカウントを利用してBeadrockにアクセスしてAnthropicを

元記事を表示

Amazon Athenaで日付でパーティション射影をする

webエンジニアの風速です。
今回はAmazon Athenaを業務内で使用して日付でパーティションの射影をするのに苦労したので、そちらをまとめられたらと思います。

# Amazon Athenaとは
Amazon Athenaは、SQLを使用してS3内のデータを直接分析に利用できたりするクエリサービスです。サーバーレスで、読み込んだ容量に応じて課金されるシステムになっています。データ1TBあたり5.00USDらしい(ap-northeast-1)
S3内のcsvなどのデータを読み込んで実際のrdbのテーブルのように操作可能です。

# パーティションとは
パーティションという機能はAthena以外にもrdbの機能にあるもので(調べて初めて知った)、テーブル内のデータを格納する場所を分けられる機能です。
Athenaでは読み込むデータによって課金されるため、デイリーとかで動かす場合はかなり重要で、公式も料金かなり削減できると言ってます。

# パーティション射影とは
S3のディレクトリを自動的にパーティション分けしてくれる機能です。テーブル定義のときに設定を書くと、その形式でパーティ

元記事を表示

OTHERカテゴリの最新記事