AWS関連のことを調べてみた2023年09月26日

AWS関連のことを調べてみた2023年09月26日

AWS CDKでService Catalogを構築・運用するための9Tips ~事例と共に~

# はじめに

本記事は、AWS Service Catalog × CDK の Tips 集になります。

私は、社内向けの AWS 共通プラットフォーム構築・運用に携わっており、各アカウントに配布するリソースを CDK で構築しています。元々、CDK で生成されたテンプレートを各アカウントに直接デプロイしていましたが、追加開発や運用面を考慮し、 Service Catalog を取り入れる方針に切り替えました。Service Catalog の導入により、プラットフォーム利用者が都合の良いタイミングで、製品をバージョン更新できる点も利点です。

Service Catalog の利用イメージは以下の通りです。

![Service Catalog の利用イメージ](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2989026/429a5eed-2d07-4311-75fb-789935ab050b.png)

本記事では、AWS CDK で Service Catalog を利用する際に、躓いた点を中心に

元記事を表示

データ活用基盤を作ってみた その5(試験)

# はじめに
こんにちは、NTTデータ先端技術の@S-takahashi1129です。
本記事は、データ活用基盤を作ってみた連載記事のその5です。
本シリーズの取り組みの内容については [その1(構成シナリオ)](https://qiita.com/kamein/items/81df29ef9d32bf0a0810)をご覧ください
前の記事は、[その4(詳細設計)](https://qiita.com/shiraki_ils/items/fc69614df206bf24fd52)からご覧ください。
本記事では、試験計画と試験実施について記載します。

# 目次
* 試験計画
* 試験計画の考え方
* 試験計画で実施したこと
* 試験工程定義
* 単体試験計画
* 結合試験計画
* システムテスト計画
* 試験の実施
* 単体試験
* 単体試験項目書作成
* 単体試験実施
* 結合試験
* 結合試験項目書作成
* 結合試験実施

元記事を表示

EC2上のソースコードを自動でGitHubにバックアップする

こんにちは!
今日はAWS EC2インスタンス上にあるソースコードを、定時になると自動でGitHubにcommit、pushしてくれる仕組みを作りたいと思います。
筆者はプログラミング歴1年半ほどの学生で、調べながらだいたい4時間弱で出来ました。AWS歴は半年ないほどです。
# 目次
1. [完成イメージ](#anchor1)
1. [前提条件](#anchor2)
1. [EC2とGitHubを繋ぐ](#anchor3)
1. [バックアップするスクリプトを組む](#anchor4)
1. [スクリプトを定時に実行する](#anchor5)
1. [参考](#anchor6)


## 完成イメージ
毎日0時5分になると、自動で対象のディレクトリのソースコードをGitHubにcommit、pushする。


# 前提条件
– GitHubアカウントを持っている
– バックアップするレポジトリが存在する
– EC2インスタンスが立ち上がっていて、ソースコードが置いてある
– gitコマンドが使用できる

元記事を表示

MapLibre GL JSとAmazon Location ServiceのAPIキー機能で開発環境を構築してみた

![img](https://memo.dayjournal.dev/images/try-103_01.gif)

![img](https://memo.dayjournal.dev/images/try-103_02.png)

### MapLibre GL JSとAmazon Location ServiceのAPIキー機能で開発環境を構築してみました :tada:

GitHubに作成した環境を公開しています。ぜひご利用ください!

https://github.com/mug-jp/maplibregljs-amazon-location-service-starter

## 事前準備

– Amazon Location ServiceのAPIキー作成
[Amazon Location Service #004 – APIキー作成(マップ)](https://memo.dayjournal.dev/memo/amazon-location-service-004)
– MapLibre GL JSをを手軽に始めるビルド環境を利用

元記事を表示

無料ドメインをEC2インスタンスに与える方法-まとめ

## 概要
1. ドメインを無料で取得しようと考えた。
1. freenom.comが訴えられていた。
1. dot.tkも同じシステムなため、利用不可
1. No-ip.comはnameserversの利用が課金対象
1. 最終的にお名前ドットコムを利用
1. Route53の設定を行う
1. インスタンスと連携
1. Elastic IPの登録

## 環境
* EC2(AamazonLinux2023)

## frenom.com dot.tk

https://gigazine.net/news/20230309-freenom-sued-by-meta/

どうやら訴えられたようで、利用不可です、、

## No-ip.com
https://www.noip.com/support/knowledgebase/how-do-i-change-my-dns-servers-if-my-domain-is-registered-with-register-com

今回は無料で利用したいため利用するのをやめました。
また、EC2との連携法が全く出てこなかったため、素人の自分で

元記事を表示

【備忘録】AWSのセキュリティ対策について学んだことまとめ ~見解まとめ~

何回かに分けてAWSにおけるセキュリティ対策の方法や使えるサービスを
記載してきましたが今回は見解まとめをやっていきます。
AWSで確認すべきセキュリティ観点は多々あれど汎用的に何を観点に
チェックしたらいいのかが大事になってくると思います。

## クラウドセキュリティに必要なセキュリティ観点
### 防御
まず第一に攻撃の初期段階における外部との接続点を介した攻撃を防ぐ必要があります。
インターネットを経由した不正アクセスや不正ログイン、
侵入できたとしても暗号化によってリソースの不正利用の防止をするよう設定します。
主に次のようなサービス等を利用して防ぎます。
| 対応策 | AWSにおける該当機能 | 内容説明 |
|:———–:|:————:|:————:|
| ルートユーザーの不使用 | IAM | 強力な権限をもつルートユーザーで作業せず、ユーザーアカウントを別途作成する |
| MFAの使用 | IAM | MFAデバイスを登録し、ログイン時にコードを入力する |
| アクセスキー、シークレットキーの削除 | IAM | ロ

元記事を表示

amplify を使わずにNuxt3+cognitoで認証処理

## 概要
“`Cognito“`のデフォルトログインページをNuxt3のプロジェクトに組み込みました。
“`Amplify“`を使わずに認証処理を簡単にしたかったのでその備忘録です。
※使わずに、と言いましたがnpmパッケージは使用します。

“`Amplify“`を使いたくなかった理由は、本格的に使用すると便利すぎて何でもできてしまい、頻繁に更新される“`Amplify“`の更新作業で地獄を見ることになりそうだったからです。そんなに深い意味はありません。
※一般的にパッケージの更新はしたほうがいいと思います。

## 開発環境
node:16.17.1
Nuxt: 3.0.0

## 実装手順

1. まず初めにNuxtのプロジェクトを用意する必要があります。
“`nuxt3-cognito“`の部分はプロジェクト名です。
“`cmd
npx nuxi init nuxt3-cognito
cd ./nuxt3-cognito
npm i
“`

1. 必要なパッケージをインストールします。
“`c

元記事を表示

AWSで、Terraformを利用する方法をまとめてみた(5/10)

データ型

– string: 文字列
– number: 数値
– bool: 真偽値
– list: 配列
– set: 集合
– map: マップ
– object: オブジェクト

これらのデータ型を組み合わせることで、HCL2は複雑なデータ構造を扱うことができます。

`list`、`map`、`object`を使用した参考例 その1

【list: 配列】

“`
variable “example_list” {
type = list(string)
default = [“item1”, “item2”, “item3”]
}

resource “aws_instance” “example” {
count = length(var.example_list)

ami = “ami-0c55b159cbfafe1f0”
instance_type = “t2.micro”
tags = {
Name = “example-instance-${var.example_list[count.index

元記事を表示

infisicalをAWSでデプロイしてみた!

# infisicalをAWSでデプロイしてみた!
## はじめに

皆さん、こんにちは。今日はインターンでインフラエンジニアとして働かせていただいている会社のAWS環境にOpen Source Software(OSS)であるinfisicalをデプロイした経緯とその成果についてお伝えします。

## そもそもinfisicalってなに?

infisicalは、エンドツーエンド暗号化(E2EE)によって安全性が高められた、ユーザーフレンドリーな管理画面を持つOSSです。チームでの環境変数の同期や管理を効率的に行うことができます。

## デプロイ前の課題

AWS、Docker、Terraformなど初めて触れる技術もあり、とりあえず挑戦してみるという前提から始まりました。
公式の[infisical](https://infisical.com)サービスも存在しますが、自社の環境変数を外部で管理するのは適切でないと判断したため、自社AWS環境へのデプロイを決定しました。

## デプロイプロセス

infisicalのWeb部分とデータベース部分を分ける形でデプロイを行いました。

元記事を表示

InstanaでAWS Serverlessアプリを可視化しよう!Lambda編

# はじめに

本記事は、下記動画の手順を書き起こしたものです。
実際に動く画面を確認したい方はぜひご視聴ください。

https://video.ibm.com/recorded/132859917

Instanaは14日間のFree Trialが可能です。
Try Instana! > https://www.instana.com/trial/

## 検証用Lambdaの作成

AWS Lambdaのダッシュボードを開き、**関数の作成** をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/118463/76855990-8a44-23bf-0bb0-53b97b7f1ba8.png)

任意の関数名を入力し、ランタイムは **Python 3.9** を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/118463/a15f29fe-6dee-539

元記事を表示

S3のオブジェクトロックについて色々確認してみる

# この記事でやること
S3のオブジェクトロックについていろいろ確認してみる

# オブジェクトロックの有効化
オブジェクトロックは現在では、新規作成時のみ有効化することができます。

>新しいバケットに対してのみオブジェクトロックを有効にすることができます。既存のバケットのオブジェクトロックをオンにする場合は、 にお問い合わせくださいAWS Support
>オブジェクトロックが有効になっているバケットを作成すると、Amazon S3 は自動的にバケットのバージョニングを有効にします。
>オブジェクトロックを有効にしたバケットを作成すると、オブジェクトロックを無効にしたり、バケットのバージョニングを停止することはできません。

バケットの詳細設定から設定可能です。

オブジェクトロックを有効化するとバケットのバージョニング機能が自動的に有効化されます。

[作成時]
![Screenshot 2023-09-25 at 20.47.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/626370/

元記事を表示

Redshiftのパフォーマンス関連メモ

# はじめに

– 本記事は個人メモです。
– いろいろ書いていますが、私自身はRedshiftのパフォーマンス関連の経験値は低いです。
– 随時内容を追記していきます。粒度にムラがあります。長くなったら記事を分割するかもしれません。

– RedshiftはSnowflakeなどに比べるとチューニングで考えるべきポイントが多い印象です。
– 学習による認知負荷が極めて高いため、本記事のように学習内容をまとめておく必要があると感じました。

## 本記事の構造と注意点

– 本記事の構造
– 本記事に記載する情報源やTipsは、「テーブル設計」と「クエリパフォーマンス」で分けて記載しています。

– 注意点
– 本記事は主にRedshiftクラスタ(Provisioned)版(つまりRedshiftサーバレスではない)を念頭に記載しています。
– 記事中に断りがなければRedshiftクラスタ版を指しているものとお考えください。
– パフォーマンスチューニングはワークロードによってアプローチが全く異なるため、銀の弾丸

元記事を表示

AWS Terraform – ECS Fargate の Auto Scaling > スケーリングポリシー > ターゲットの追跡

# やりたいこと

この左の「ターゲットの追跡」の設定をTerraformで管理したい

image

# コード例

Auto Scaling のターゲットとポリシーを作れば良いようだ

“`tf
resource “aws_appautoscaling_target” “xxx” {
service_namespace = “ecs”
scalable_dimension = “ecs:service:DesiredCount”
resource_id = “service/<クラスタ名>/<サービス名>”
min_capacity = 1
max_capacity = 15
}

resource “aws_appautoscaling_policy” “yyy” {

元記事を表示

Amazon CodeWhispererはこんなこともできる(遊んでみた話)

## はじめに
船井総研デジタルの陸です。

この記事では、Amazon CodeWhispererのコード支援サービスを用いていろいろテストしてみたことについて紹介しました。コメントによるコード生成だけではなく、簡単なやりとりもできることがわかったので、各テストケースを記録の形で書いてみたいと思います。
前回、Amazon CodeWhispererについて書いた記事(以下を参照)の次のものになります。

https://qiita.com/fsdg-yook/items/2f85fe35c8a9df7d792b

## テスト開始
Amazon Code Whispererって、プログラムコードの生成ができることは公式ホームページでも確認できたましたが、他にもいろいろできるか気になり、テストをしてみました。

### Q1.関数の説明
引数に3つの数字を入力すると、足し算して返却する関数を作り、その結果をコンソールに出力する簡単なコードを書いた後、コメントから質問してみました。
「以下の関数は何をしますか(何の処理をしますか)」と聞いたら
ちゃんと、関数の役割からコンソールでの出

元記事を表示

BackStageに入門1~起動編~

Gartnerのハイプサイクルで俄かに流行しつつあるPlatformEngineeringという考え方。
そのPlatformEngineeringを推進している、PlatformEngineering.orgの中で面白いサービスがあったので触れてみる。
Backstageといわれるサービスで実際は開発者用のポータルサイトであり、非常に拡張性が高くいろいろなことができるので、また日本語もサイトもあまりないので、紹介を兼ねて触っていきたい。
なお業務でも採用を検討しており、備忘を兼ねている。

# Backstageとは

BackStageはSpotifyが開発したプロダクトで、開発者やリーダーが悩んでいるあれやこれやを解決しようという目論見をもったプロダクトであり、現在はOSSとしてCNCFに寄贈され、日夜開発が進められている。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2374913/e69e9de9-e125-ab0e-75cf-a10555c39b44.png)

## Ba

元記事を表示

Ubuntu: `sudo: unable to resolve host ip-xxx-xxx-xxx-xxxのエラー修正

# Ubuntu: `sudo: unable to resolve host ip-xxx-xxx-xxx-xxxのエラー修正
– 今回はホスト名に関する変なエラーが出たので解決しました。AWSさんが勝手にホスト名を書いてくれるせいだと思います。

# エラーの修正方法

このエラーは通常、`/etc/hostname` と `/etc/hosts` ファイルの間でホスト名の不一致が生じている場合に発生します。

## 手順1: `/etc/hostname` ファイルを確認

まず、`/etc/hostname` ファイルに現在設定されているホスト名を確認します。

“`bash
cat /etc/hostname
“`

このコマンドが `ip-xxx-xxx-xxx-xxx` または他のホスト名を出力するはずです。

## 手順2: `/etc/hosts` ファイルを修正

次に、`/etc/hosts` ファイルをエディタで開きます。

“`bash
sudo vi /etc/hosts
“`

ファイルを開いたら、以下のような行が存在するはずです。

“`te

元記事を表示

実務未経験から情報共有サービス『HomeCareConnect』を開発してみた【Rails7 / MySQL / AWS / Docker 】

![スクリーンショット 2023-09-19 12.07.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3117662/02d1be9a-8939-0cd5-604b-4b8897ea1df9.png)

# はじめに

はじめまして! ごん([@gon0821](https://qiita.com/gon0821))と申します:relaxed:

未経験からWebエンジニアへの転職を目指しており、その過程で **「在宅療養者の健康状態と薬の管理を円滑にするサービス」** を作成しましたので、`プロダクト内容`や`学習過程等`を紹介したいと思います!

これからエンジニアを目指される方や現在学習中の方にとって少しでも参考になれば、嬉しいです:raised_hands:

# 自己紹介
– バックエンドエンジニアを目指す27歳
– 前職は地方公務員
– 性格は「穏やかだね」と言われることが多い
– 好きなことは、テニス、スノーボード、ピアノ、ドライブ?
– 2023年4月から本格的に学習開始(学習期

元記事を表示

VPCエンドポイント経由でS3にアクセスしてみる

## 今回やりたいこと
- VPCエンドポイント経由でS3にアクセス
- VPCエンドポイントにポリシーを設定
- S3にバケットポリシーを設定
- セッションマネージャーを使用してS3のオブジェクトをダウンロード

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/636718/0d93105f-3d2d-d595-33aa-35edabc839d3.png)

## S3用のエンドポイントの作成

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/636718/914885cb-f686-8a82-5ef8-50f4fb608640.png)

ポリシーも作成

“`json:json
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Effect”: “Allow”,
“Principal”: “*”,
“Action”

元記事を表示

[小ネタ]ACMの証明書を再発行してもCNAMEレコード値は変わらない

## これは何?
ちょっとした小ネタではあるのですが、タイトルにもある通りACMを再作成してもCNAMEレコードの値は変わらないことについて紹介しようと思います。

## 想定されるケース
ドメインをRoute 53 で管理せず、顧客所掌のドメイン管理サービスを利用し、且つ証明書はCertificated Managerを利用するケースの場合、ACMで発行されたCNAMEレコードを外部のドメイン管理サービスに登録する必要があります。

たまにここの意思疎通が煩雑なケース(何社にも跨ぐ)ことがあるため、CNAMEレコードの登録がDNS検証のリミットである72時間経過してタイムアウトが発生する場合があります。
https://docs.aws.amazon.com/ja_jp/acm/latest/userguide/troubleshooting-timed-out.html

## 解決策
実は、これ**ACMを再作成しても、CNAMEレコードの値は再作成前のCNAMEレコードの値と差分はない**です。
https://docs.aws.amazon.com/ja_jp/acm/la

元記事を表示

AWS Cognitoを使用したSSO実装

業務でSSO開発を行ったので、備忘録。

# 対象者
– Cognitoを使用してSSO連携したい人
– SAML認証を使用してSSO連携したい人
– IdPを簡潔に設定してSSO連携の動きを知りたい人

# SSOとは
Single Sign-Onの略で、ユーザーが複数のサービスに一度のログインでアクセスできるようにする技術です。これにより、ユーザーエクスペリエンスが向上し、パスワード管理のオーバーヘッドも削減されます。

# SAMLとは
Security Assertion Markup Languageの略で、SSOのためのXMLベースのオープンスタンダードです。SAMLは、異なるドメイン間での認証と承認データの交換を可能にします。

# AWS Cognitoとは
Amazon Web Services (AWS) が提供する認証・認可サービスです。Cognitoを使用すると、Webアプリケーションやモバイルアプリケーションに簡単にユーザー管理と認証機能を追加することができます。

# 実装の流れ
今回は下図を構築していきます。App部分は後日時間があれば別記事にします。
S

元記事を表示

OTHERカテゴリの最新記事