AWS関連のことを調べてみた2021年08月04日

AWS関連のことを調べてみた2021年08月04日

AZ IDってなんだ??

AWS案件の中で「AZ ID」なるものが出てきたので、なんぞやといろいろ調べてみました。

#1.アベイラビリティーゾーン(AZ)とは

:::note info
「AZってなんだっけ?」という方以外は、この項目を飛ばしてください!
:::

AWSは以下の構造で構成されています。
※基本的な部分のみ大雑把に記載しています。

**リージョン(Regions)**
AWSが構築したデータセンタで、各国にあり、物理的に完全に分離されています。

 <リージョン例>

| コード | 名前 |
|:———–|:————|
| us-east-2 | 米国東部 (オハイオ)|
| ap-northeast-1 | アジアパシフィック (東京)|
| ap-northeast-3 | アジアパシフィック (大阪)|
AWSリソースを作成する際に、どこで作るかを最初に決めていますよね。

**アベイラビリティーゾーン(Availability Zones/AZ)**
リージョンごとにアベイラビリティーゾーンと呼ばれる複数の物理的に完全に分離した場所があります。

元記事を表示

MacでPrivate NetworkのMWAAのURLを立ち上げるコマンド

MWAAは、Private Network Onlyでのアクセスが推奨されていて、自分たちのチームでもAirflowをPrivate Networkに立ち上げて、適切にアクセス制限したALB経由でUIにアクセスするようにしています。

ただ、そうすると毎回awscliでtokenを作成してURLを作成する必要があり、少し煩雑なので、コマンドで立ち上げるようにエイリアスを設定しました。

“`zsh:~/.zshrc
# {YOUR PROFILE} と {YOUR DOMAIN} はそれぞれ置き換えてください
# jqとawkが必要です
alias mwaa=”aws mwaa create-web-login-token –name MAM –profile {YOUR PROFILE} | jq -r ‘.WebToken’ | awk ‘{print \”https://{YOUR DOMAIN}/aws_mwaa/aws-console-sso?login=true#\”\$1}’ | xargs open”
“`

実は標準入力からの文字列結合に詰まってて、[Stac

元記事を表示

Amplify でDeveloper Preview 中のGeoを試す

# TL;DR
先日?3日前?Amplify GeoのDeveloper Previewが開始されたので試す記事です。

**現在 Amplify Geo はDeveloper Preview中であり正式リリースではありません。そのため一部動作が不安定な箇所がある可能性があるため本番環境での利用はお控えいただいた方が良いと思います。**
**また、この記事は2021/08/04 10:00時点の情報で書かれているため、最新版の情報と異なる可能性があります。(Developer Previewのため早いペースで変更が入っている可能性があります)**

公開中のサンプルは以下のリンクからお試しいただけます!

https://als.mierune.io/

ローカル環境ではサンプルでも正常に動作することを確認しましたが、現在Developer Previewのため公開は控えております。

# はじめに
上記サンプルはVue.jsやMaplibreを利用していますが今回はそれらでの利用方法を直接的に説明しているわけではありません。

Vue.jsの利用方法などは他の記事をご覧ください。

元記事を表示

CloudFormationで遊んでみる(EC2編)

##記事作成にあたって
インフラ環境の開発や運用コスト、保守性を考慮して、最近流行りのIaCを意識している。
今まで触ったやつだと、ServerlessFrameworkやAmplify。
リファレンス読んでてもしっくりこないなぁって思ってたら、上記2つはCloudFormationを使っている。
だkら、CloudFormation理解してないとそれは深い理解につながっていかんなぁという事で、
今回、遊んでみる事にしました。

##実装
今回はEC2インスタンスを作って見ます。作って見てから、コードの解説をしていきます!!

“`yml:ec2.yml
AWSTemplateFormatVersion: ‘2010-09-09’

Parameters:
NamePrefix:
Type: String
Description: EC2をテンプレートで作成する
MinLength: 1
Default: ec2
InstanceType:
Type: String
Description: EC2のインスタンス
Min

元記事を表示

【AWS】S3を利用した Git LFS サーバを作成する【cli版】

# S3をLFSサーバにしてCodeCommitでGitLFSを使えるようにする

## 目標

– gitlfsの基本を学ぶ

– [Amazon S3 に Git LFS サーバを超簡単に立てる](https://qiita.com/kanemu/items/d66bfd174a011d8dffdf)のcli版を作る

## 環境

– AWSアカウント所有済み
– IAMを自由に操れる権限を持っている

## 手順

### AWS-CLI の設定

– codecommit の権限があるIAMユーザのクレデンシャルを登録する

“`
$ aws configure
“`

– 認証情報ヘルパーを設定する

“`
$ git config –global credential.helper ‘!aws codecommit credential-helper $@’
$ git config –global credential.UseHttpPath true

$ cat .gitconfig

[credential]
helper = !

元記事を表示

softbank airユーザーだけど外部からjupyter notebookにアクセスした話

この記事は、以前はてなブログにて公開していたものです
qiitaにも公開したくなったのでこちらでも公開
はてなブログのほうは非公開にしました

# はじめに
私はsoftbank airユーザー

最近自宅のPCでjupyterサーバーを立ち上げたjupyter notebookをリモートで使いたくなったのですが、softbank airのせいで外部から接続できない

https://www.softbank.jp/support/faq/view/19046

一時期は解約とか格安simとか考えてた

でもふと閃いた

awsでVPNサーバー立ち上げればいいんじゃねと(月額500円くらいかかるけどね)

# AWSへの登録とサーバーの立ち上げ

まずは以下のawsのサイトにアクセス

https://aws.amazon.com/jp/

そしたら右上のコンソールにサインインを押す

![20201208230410.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/855735/b5826f38-ae8

元記事を表示

CodeCommitレポジトリを共有してレビュー「だけ」して貰うための権限設定

開発チーム外のメンバーに、CodeCommitレポジトリ上のコードを見て貰いたいことがある。
pushやプルリクの必要はなく、調査協力やアドバイスのためにレビューだけをお願いしたいという時に、設定すべき権限一式と手順についてメモ。

### 前提
– AWS SSOを使う。
– SSOドメインは東京リージョンに作成。
– アクセス権限セット名はCodeReviewerとする。
– git-remote-codecommit(GRC)を使ってクローンする。

### 権限セットの準備

アクセス権限セットを作成し、CodeCommitレポジトリのあるAWSアカウントとレビュー用SSOユーザー(またはグループ)に紐付ける。

“`json:CodeReviewer
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Sid”: “CodeCommitRepositorySpecificAction”,
“Effect”: “Allow”,

元記事を表示

Discordでラジオを流して友達とリモートラジオ体操しよう!(AM6:30)

初投稿です!
よろしくお願い致します。

#概要
**リモートラジオ体操集会で健康な夏を過ごそう!**

– Pythonを用いてボイスチャンネルでラジオ(.m3u8)を再生するためのDiscord botを作る
– ~~GCEの無料枠~~ AWS EC2の1年間無料枠で常時動かす
– 毎日ラジオ体操が始まる6:30までにボイスチャンネルに集まる(最難関)

#はじめに(経緯)
**※ポエムなので読み飛ばしてもらってOKです。**

ある日、このようなツイートが僕の目に入りました。

Freenomの無料ドメインをAWSで登録する方法

AWSの初学者です。

FreenomとAWSのRoute53というサービスを利用して、ドメインを登録する方法を学んだので、その手順をまとめたいと思います。

ちなみに、前回はこちら: Amazon EC2を利用した仮想サーバー構築方法③(Apacheのインストールとファイアウォールの設定)

# Freenomで無料のドメインを取得する

Freenomでは、無料でドメイン(条件あり)を取得できます。

Freenomはこちら

ただ、実際にドメインを取得するまでの手続きにちょっと癖があるように感じたので、手順を説明したいと思います。

[手順1] トップページにある「無料ドメインを探します」というフォームに、ドメイン名を入力して「利用状況をチェックします」をクリックします。

![image.png](https://qiit

元記事を表示

ec2 サーバ内から自身のタグ情報を取得する

# 概要

インスタンスメタデータを取得して、自身のインスタンスIDを取得する。

aws-cli の describe-instances でインスタンスIDを指定して情報を取得する。

## モチベーション

ansible でプロビジョニングの完了時にタグ情報を更新している。ほかの独立したスクリプトでプロビジョニングの完了を待機するためにタグ情報を取得したい。

# スクリプト

“`bash
# インスタンスメタデータを取得して、自身のインスタンスIDを取得する。
export INSTANCE_ID=$(curl -s http://169.254.169.254/latest/meta-data/instance-id)

# aws-cli の describe-instances でインスタンスIDを指定して情報を取得する。
TAG_STATUS=$(aws ec2 describe-instances –instance-ids “${INSTANCE_ID}” –query ‘Reservations[0].Instances[0].Tags[?Key==

元記事を表示

S3の静的ホスティング機能によって生成されたURLをhttpsにする方法

AWS S3の静的ホスティング機能により生成されたURLはデフォルトではHTTPとなっている。正式に?HTTPSリクエストに対応するためにはCloudFrontを利用する必要があるが、利用せずできないか調査した。

## 方法

`http://{バケット名}.s3-website-ap-northeast-1.amazonaws.com/`
を下記のようにバケット名のいちを変更すると良い。

`http://{バケット名}.s3-ap-northeast-1.amazonaws.com/index.html`

元記事を表示

Laravelでもサーバーレス!brefを使ってLaravelアプリケーションを作成してみた

## はじめに
**Laravel初学者の皆さんは、ポートフォリオを作成した時どこにデプロイしていますか?**
AWSまで勉強して`EC2`にデプロイしている方、`Heroku`にデプロイしている方いろいろいるかと思います。

しかし、それぞれ問題点があると思います。

### EC2の問題点
EC2は、インスタンスベースの仮想サーバーなので、常に稼働させなければならないため課金が発生する。(無料利用枠が、1年間毎月750時間分与えられるので十分かもしれませんが)
設定がめんどい。
下記の記事がWordPressを構築する記事ですがやることがとても多いです。
`CloudFormation`ができるようになればもっと短縮できますがハードルが高いですよね・・

https://qiita.com/Ryo9597/items/6d96ab9fdc1f1dca8838

### Herokuの問題点
無料枠のDBの選択肢が`PostgreSQL`になる。
30分何もアクセスがないとサーバーがスリープモードに入ってしまう。

ということで今回お勧めするのがサーバーレスです。

AWSにおけるサ

元記事を表示

terraform plan しなくても自動で文法注意してくれる設定を入れてみた

## これは何
VScodeにて、terraform plan しなくても自動で文法注意してくれる設定を入れてみた、の記録です。
前提として、以下Extensionは入れてます。

“`
https://marketplace.visualstudio.com/items?itemName=mauve.terraform
“`

## やってみた

“`
$ brew install tflint
“`

Pathが通っていれば、すぐ使えると思いますです。

適当にVPC作って、変な文法で書いてみます。

![スクリーンショット 2021-08-03 11.24.33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1740345/8dffaf71-4d36-1505-f751-685e6ce76e10.png)

ちゃんと注意されますね。すごい!

## 参考

“`
https://sil.hatenablog.com/entry/terraform-linter-tflint-rele

元記事を表示

業務未経験の僕が3ヵ月でAWS認定アソシエイト資格を3つ取得するまで

## Agenda
1. はじめに
1. AWS認定アソシエイト資格について
1. 勉強法とオススメの教材
1. まとめ

## はじめに
今年度業務内容がwindowsアプリ開発からBIツールによる可視化業務に変わって、aws上に蓄えられているデータを活用する機会もあったので、この機会に**AWS認定アソシエイト3資格取得**を目標に4月ぐらいから勉強を始めました。

とりあえずの目標として**3か月で3種類全取得**を掲げ無事合格できました。
![certificated.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438389/cc3b900c-410a-4582-1a15-a01d313f36d5.png)

– ソリューションアーキテクト
– 2021/4/30 Score:737
– デベロッパー
– 2021/5/22 Score:851
– SysOps
– 2021/6/14 Score:763

今回は簡単なAWS認定アソシエイト資格についての概要と、私の簡

元記事を表示

describe-security-groups の内容を jqで整形

セキュリティグループの設定を

“` bash
# SG_IDには セキュリティグループIDを設定
# リスト指定も可能 (https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-security-groups.html)
SG_ID=sg-1234567

# jqで整形して出力
aws ec2 describe-security-groups –group-ids ${SG_ID} | jq -r ‘.SecurityGroups[] | .IpPermissions[] | .FromPort, ” ” + .IpRanges[].CidrIp’
“`

元記事を表示

【13日目】AWS認定ソリューションアーキテクト合格までの道

# 構成管理サービス

## 構成管理に関する重要用語
### ◉プロビジョニング
複数の**ITリソース(サーバー/ネットワーク/DB/ストレージなど)**をシステムの利用状況や障害発生の状況に応じて、**動的に利用したり割り当てる**

### ◉デプロイ
サーバーに**ファイル(バイナリファイル/ソースコード)**や**アセット(その他ドキュメントをまとめたもの)**を配置して、利用できる状況にすること

:::note info
AWSでは環境構築に関わる作業を自動化するためのサービスが提供されている
:::

## コードによるインフラストラクチャ構成管理
### ◉オンプレ環境構築時の課題
– **作業中にミスが発生**する可能性がある
– 導入後に構成変更があることを考慮して、**インフラストラクチャ管理(設計書やサーバーのパラメータなど)が必要**

### ◉Infrastructure as Code(IaC)
– インフラストラクチャ構築作業を**コードで記述して管理する考え方**
– **定義ファイルをコーディング**して、コードを実行することでリソースのプロビ

元記事を表示

気になるあの上司は何時まで仕事をしているの?調査しよう。 Part III: データ分析編 (AWS CloudWatch/スプレッドシート)

## 注意

この記事は Slack の在籍状況を DB 等に保存し、そこから勤務時間帯を分析するという企画です。
Slack では 1 つのアカウントで複数のワークスペースを管理することができるため、オンライン状態でも趣味のコミュニティにいた、なんてこともあります。
決して **「Slack がオンライン = 仕事している」ということではない** ので、あくまで参考程度にお願いします。

## 目次

– [Part I: データ取得編 (Slack API)](https://qiita.com/noritakaIzumi/items/15baea8bcda572232d37)
– [Part II: データ保存編 (AWS Lambda/CloudWatch)](https://qiita.com/noritakaIzumi/items/9978e35308876d2b259b)
– **Part III: データ分析編 (AWS CloudWatch/スプレッドシート)** <- 今回はここ! ## 概要 今回は API を定期実行により蓄積されたログから、ユーザの勤務時間

元記事を表示

ServerlessFrameworkでS3バケットを作成する。

##概要
表題通り、ServerlessFrameworkでS3バケットを作成する。
例ではkkfactoryという名のBucketを作成します。

##実装

“`yml:serverless.yml
service: s3make
provider:
name: aws
stage: dev
region: ap-northeast-1
functions:

resources:
Resources:
kkfactory:
Type: AWS::S3::Bucket
Properties:
BucketName: kkfactory
“`
“`shell:S3作成
~/develop/study/S3 $ serverless deploy
Serverless: Packaging service…
Serverless: Creating Stack…
Serverless: Checking Stack create progress…
……..
Serverless: Stack

元記事を表示

AWS-IAM概要メモ

#はじめに
この記事では AWS の IAM の勉強メモを書きます。

#IAM 基本的な機能

1. ユーザー認証の提供
1. アクセス権限の付与

#ルートユーザーと IAMユーザー
IAMユーザーというユーザーを作成することができる。

強すぎる権限を持つルートユーザーは基本的に使用せず、
権限が制限されているIAMユーザーを使用する。

ルートユーザーでは IAMユーザーには許可されていない一部の操作も行うことができる。

IAMユーザーはIAMグループ単位で管理することができる。

#IAMポリシー
AWS での操作の許可・拒否を設定できる。
IAMユーザー、IAMユーザーグループ、IAMロール、リソースにアタッチすることで操作権限を設定できる。
※アタッチ可能なリソースは限られる

IAMポリシーは json形式で記述される。

#IAMロール
AWSアカウントやその他のユーザー、アプリケーションやサービスにアクセス権を付与する仕組み。

#参考サイト
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/access

元記事を表示

OTHERカテゴリの最新記事