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

AWS関連のことを調べてみた2022年09月24日
目次

Amazon Redshift 列レベルアクセス制御

PIIやPCIなどの機密情報対策として、テーブル、ビュー、マテリアライズドビューで列(カラム)レベルでGRANT/REVOKE形式のアクセス制御ができるRedshiftの機能

参考)
– AWS公式ブログ:[Amazon Redshift で列レベルのアクセス制御を行い、よりきめ細かなデータセキュリティを実現する](https://aws.amazon.com/jp/blogs/news/achieve-finer-grained-data-security-with-column-level-access-control-in-amazon-redshift/)
– [公式ドキュメント](https://docs.aws.amazon.com/redshift/latest/dg/r_GRANT.html#r_GRANT-usage-notes-clp)

# 列レベルでの権限追加例

公式ブログの内容抜粋をベースに、一般的にはユーザ単位よりグループ単位やROLEで権限管理が便利なので、ここではグループ単位での例で。

### 1) まずはサンプル顧客テーブルとサンプルSale

元記事を表示

初心者がPythonのDjangoでポートフォリオを作成してみた(AWSデプロイ)

## 紹介
どうも、独学でウエブアプリを作っているクリスと申します!
最初はただの問題解決のため自分でアプリを作ろうとしましたが、まさかポートフォリオになるとは思いませんでした。(笑)

今回作ってみたものを紹介したいと思いますが、まずはその背景から語ります。

## 背景
自分は会社の寮に住んでいます。
寮は11部屋の一軒家ですが、なぜか電気代を計算してるメーターが6個しかない。
5部屋は各自のメーターで、残りの部屋はシェアという感じです。
なので毎月光熱費を計算するのを苦労してました。
そのうえ、他の部屋に住んでいる者は変わったりしますので、みんなが何日間、どのくらい使っているかを計算するのもかなり難しいです。(サービス業の従業員の出入りは激しいです)

そのため、自動的に計算してくれるアプリを作りたいと決めました。

## アプリ概要
MVCアプリ、基本的なCRUD処理と自分で作ったアルゴリズムで一人一人の光熱費を計算して、ユーザーに表示する。

### メイン機能
– 光熱費照会
– 日別で部屋のデータ照会(誰が何の部屋にいつ住んでいるか)
– 光熱費入力
– 部屋データ入力

元記事を表示

AWS上にStreamlitの動作環境を作ってみた

## 概要
[**Streamlit**](https://streamlit.io/) という Python のWEBアプリケーションフレームワークを動かすための環境をAWS上に作ったのですが、とにかく詰まりに詰まったので覚えている範囲で記録を残しておこうと思います。誰かしらのお役に立てば幸いです。

ということでいってみましょう。

## EC2環境
– Amazon Linux 2
– Apache 2.4.54
– Python 3.7(Amazon Linux 2 に最初から入っていた)

## インフラ構成

大まかにはこんなかんじですが特に凝ったことはしていません。
アベイラビリティゾーンやパブリックサブネットは実際は複数ありますが、本筋にあまり関係ないのでここでは省略してます。

![streamlit.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/70638/8b447a25-f5a7-ad3e-9bf5-8e605cba711a.png)

唯一の注意点として、

AWS初心者は必ず読むべき!必見!AWSの基本①(AWSとは、初期設定)

# 資料

https://www.udemy.com/course/aws-and-infra/

# この記事の概要
AWS初心者向けの記事です。
これから学習する方などは参考にしてみてください。

## 注意
AWSがアップデートされて画面が変わることがあるのでご了承ください。

# インフラができるメリット
・自身でサービスが作れる
・システムが全体的にわかるのでシステム全体の対応可能

# インフラはどのように構築するのか
1. ***サーバーの構成***
どんなサーバーが必要か考えたり、OSをインストールして設定をしたり、
必要なソフトウェアインストールして設定したり、サーバーを設置したりします。

2. ネットワークの構成を考える
構築したネットワークをネットサーバーに接族し、
ネットワークで使用するIPアドレスの範囲を決めたり、割り当てたりします。

# AWSとは
“`AWS“`とは“`(Amazon Web Services)“`の略称で
***Amazonが提供する世界最大のクラウドサービス***です。

### AWSの特徴
サービスが豊富で100

AWS CDK Merit Badgesってなに?

# はじめに

表題の通り、CDKのアップデートで`AWS CDK Merit Badges`が採用されたようです。
何だろう、ということで簡単にまとめてみた。

※2022/09/23時点の情報です。

## 読んでみる

– 原文はこちら

https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md#badges-pilot-program

大体ニュアンスはわかりますが、念のためGoogle翻訳してみましょう。

“`text
CDK Merit Badges はパイロット プログラムです。取得するバッジは実験的なものであり、変更される可能性があります。

CDK Merit Badges は、CDK コントリビューターのエクスペリエンスを向上させることを目的としたプログラムです。CDK リポジトリに新しいプル リクエストを送信すると、リポジトリへの以前の成功した貢献の数を反映するメリット バッジを受け取ります。現在、これらのバッジは楽しみのためのものであり、CDK への継続的な貢献へのささやかなインセンティブを目的としてい

AnsibleをAWS Systems Managerから実行するCI/CDを構築する。(その1:Systems ManagerからのAnsible実行)

# はじめに
最近勉強がてら「**[AWS Hands-on for Beginners](https://aws.amazon.com/jp/aws-jp-introduction/aws-jp-webinar-hands-on/)**」の「**[AWS Code サービス群を活用して、CI/CD のための構成を構築しよう!](https://pages.awscloud.com/JAPAN-event-OE-Hands-on-for-Beginners-cicd-2022-reg-event.html?trk=aws_introduction_page)**」を視聴し、自分でも`CI/CD`の環境を構築してみたいと思ったので、[前回](https://qiita.com/sakai00kou/items/5f8e9ecbc1e38f958eb2)手放しでおすすめできるとは言い難いと記事に書いておきながらも、`Systems Manager`から`Ansible`実行機能を使って、`CodeCommit`に`Ansible`実行用のソースをコミットしたら指定のインスタンスに対して`A

Amazon Redshift で ダイナミックデータマスキング

顧客機微データ(PIIやPCI)をRedshift内で扱う場合の対処法には色々対策が想定される

例)
– クラスタの暗号化(AWS KMS)
– [行レベル](https://aws.amazon.com/jp/about-aws/whats-new/2022/07/amazon-redshift-row-level-security/)セキュリティや[列レベル](https://aws.amazon.com/jp/blogs/news/achieve-finer-grained-data-security-with-column-level-access-control-in-amazon-redshift/)セキュリティで対象データへのアクセス制御
– 対象データをマスクしたビューを作成
– 対象データをハッシュ化
– 対象データを[トークン化](https://docs.aws.amazon.com/ja_jp/redshift/latest/mgmt/data-tokenization.html)
– ダイナミックデータマスキング
– など

ここでは、ダイナミックデータマス

初めてAWSでEC2インスタンスを作って、SSH接続するまでの方法

# 前提条件
– AWSアカウントを作成済みなこと
– macOSでターミナルの基本コマンド(cdとかchmodとか)が使えること

# 作業の大まかな流れ
– AWS EC2でインスタンスを立ち上げる
– セキュリティグループの追加(ポート解放をする)
– macOSでターミナルを使ってssh接続をする

# AWSにアカウントを作ったら、EC2を開く
ヘッダーの右上あたりにあるリージョンは、東京を選択する。
![スクリーンショット 2022-09-22 20.15.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262827/52473c3a-36ef-82bd-36a8-5a6e6f919124.png)

ヘッダー左上の「サービス」からEC2を選択して開く
![スクリーンショット 2022-09-22 19.20.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262827/54596d99-3356

AWSに特化したChaliceフレームワークを触ってみた

今回とあるプロジェクトでChaliceのフレームワークを使うことになり、その導入資料を作成したので、記事として残そうと思います。

## Chaliceとは

Chaliceは、Amazon製であるため、AWS専用のフレームワークとなっています。

– デプロイ周りを簡単にかつ自動で構築できるため、コードを書くことに集中できる
– Flask、bottle、FastAPIなどのフレームワークで使用されているおなじみのデコレーターベースの構文を使用しているため、学習コストが低い
– さまざまなデプロイツールに対応しているため、自分が慣れ親しんだデプロイツールを利用できる(TerraformやAWS SDKなど)

公式ドキュメントではデプロイまでの時間が早いことを示すため、ターミナルでの実行時間を見れるようにしています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/255267/d136591d-69ad-bad7-eaad-236c842bb4f3.png)

とても自信がおありの

AWS ANS 資格勉強用の用語集まとめ

## はじめに
AWS ANSを勉強した際に本または問題集に出てきた用語とサービスについて一部まとめました。

## ネットワーク関連の基礎知識 用語

### 帯域幅
以下のサイトから抜粋しました。

帯域幅は1秒間に送信できる転送量または伝送路容量(1秒間に何ビット転送できるか)を示すbps(ビット/秒)の単位で表される。

ネットワーク帯域とは? 通信速度との関係と改善方法について解説

### ジッター
データパケットが到着する間の時間の変

Lambda(Python)のテストイベントを作成するために、関数の先頭に入れる1行

# はじめに
「API Gateway→Lambda」などのLambdaを書くときに、最初にlambda_handlerのeventに渡ってくるデータを取得したい場合のワンライン、コピペ用メモです。

# Lambda
“`Python
print(json.dumps(event, ensure_ascii=False))
“`
まず、この1行を入れて、APIを送信するなどして、Lambdaを動かします。
eventの内容をCloudWatchLogsから取得して、テストのイベントJSONに使います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155165/19be57b9-0eb1-043e-b8a8-e5d3a25adf9c.png)

# おわりに
小技として記事にしてみました。

CloudFormationでWordpressを構築する

## 目的
CloudFormationのテンプレートファイルを用いて、EC2上にWordpressを構築する

## CloudFormationとは?
CloudFormationはInfrastructure as Code(IaC)の一種です。
AWSリソース定義や構築をコードで行うことが可能で、大規模かつ長期的に運用する際に非常に効率的です。コードベースで管理するため、再現性と品質の担保ができるところが最大の強みです。

詳細は公式ページを参照してください。

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

今回作成するのは単一のインスタンスのみなので、コンソール上でポチポチ作成したほうが早いと思います。
あくまで練習用ということでお願いします。

## 作業
### AWSに登録する
[登録ページ](https://portal.aws.amazon.com/billing/signup#/start/email)からAWSのアカウントを作成します。
アカウント作成の流れは公式の説明がわかりやすいです。

https://aws.a

LINE から Raspberry Pi の LED を操作する 3 つのパターンを試した

## 作った物

こんなものを、3 つのパターンで作ってみました。

## はじめに

2021 年にあった SORACOM のイベントで、個人的に印象的だったのは [SORACOM IoT Meetup #4 〜LINE 通知を使いこなそう!〜](https://blog.soracom.com/ja-jp/2021/11/18/soracom-iot-meetup-4-report/) や [SORACOM UG の LINE DC とのコラボレーションイベント](https://soracom-ug.jp/soracomug-linedc-handson1/) です。このイベントで紹介していたのは、LINE は開発者が簡単に bot を作れるため、SORACOM と組み合わせることでデバイスの温度・位置といった様々な情報を簡単に通知できることでした。これも個人の感想ですが、このイベントをもって、デバイスからデータが送信された時に [LINE Notify](

AWSにおけるバックアップの種類

# AWSにおけるバックアップの種類
## 初めに
何となくしか理解できていなかった分野。5回目はAWSにおけるバックアップの種類についてです。
AWS上ではEC2のバックアップ、RDSのバックアップ、AWSBackupでのバックアップなどいろいろと種類があり、業務で扱っていながら何となくの理解で済ましてしまっているのでこれを機にしっかりとまとめたいと思います。

## バックアップの種類
まずこの記事で扱うAWSにおけるバックアップの種類ですが、下記についてかいせつしていこうとおもいます。
・EC2のバックアップ
・RDSのバックアップ
・AWSBackup(AWSのサービス名)で取得できるバックアップ

### EC2のバックアップ
そもそもEC2のバックアップはEBSスナップショットとAMIがあります。

#### EBSスナップショット
EBSスナップショットは、EBSのバックアップでS3上に作成されます。S3に保管されたスナップショットはリージョン内の複数のAZ間で同期されます。

#### AMI
AMIにはEBSのスナップショット情報、AWSアカウントがAMIを使用してイ

機械学習のためのDockerと、AWS SageMakerを最低限使うための本を書いた

機械学習のためのDocker/AWS 入門/SageMakerの統一的な本を書いたので紹介していきたいと思います。

![frontpage.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/232088/9f6c090f-efd2-6c97-f9fa-6eb54192dd70.jpeg)

## Dockerとは?機械学習との関わりとは?
Dockerとは、「コンテナ仮想化を用いてアプリケーションを開発・配置・実行するためのオープンプラットフォーム」(Wikipediaより)です。

![docker_logo.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/232088/5f48d607-7beb-3f8a-4fb8-e093959f2823.jpeg)

Dockerの基本的な説明は多数解説記事があるので割愛しますが、Dockerの大きな特徴として「使い捨てできる環境」が紹介されることがあります。機械学習での使い捨て環

Cloud9でRailsアプリをデプロイする手順(開発環境)

## こんな方向け
・ Cloud9でアプリのデプロイのやり方を知りたい
・ データベースの作成までのやり方を知りたい

## 大まかな手順
1. データの反映
2. Rubyのバージョン確認
3. MySQLのインストール
4. MySQLのパスワードの修正
5. database.ymlのファイルの修正
6. データベース(DB)の作成
7. Railsアプリを起動

### 1. データの反映
・git cloneでアプリ格納場所のリポジトリをローカルに落とす

“`
$ git clone
“`

### 2. Rubyのバージョン確認
・Railsのバージョン確認
“`
$ ruby -v
“`

### 3. MySQLのインストール

“`
sudo yum -y update

# mariadbを削除
sudo yum remove -y mysql-server
sudo yum remove -y mariadb*

# インストール
# Amazon Linux2

MYSQL_PACKAGE_URL=”https://d

AWS API Gateway Lambda オーソライザーを使用してアクセス制御を行ってみる

# Lambdaオーソライザーとは
API Gatewayを使うとインターネット上にREST APIを公開できます。
そしてLambdaオーソライザー(以前のカスタムオーソライザー)は、Lambda関数を使用してAPIへのアクセスを制御するAPI Gatewayの機能です。(公式より抜粋)

# 実行イメージ
Lambdaオーソライザーの実行イメージは以下の通りです。(公式より抜粋)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/273110/0b1b4a73-96e1-2231-95e3-214d25dc96ea.png)
1. ClientがAPI Gatewayにアクセス
1. API Gatewayは必要情報をLambda Auth functionに送信
1. Lambda Auth functionは入力情報を元に認証を行った後、アクセス許可orアクセス拒否を返す
1. アクセスが拒否された場合、API GatewayはHTTP403等のエラーステータスをClientに返す

AWSでWordPressサイトを構築してSSL化する方法【EC2 ELB ACM Route53】

# はじめに

これまで何度か**WordPressサイトのSSL化**を実施していく中で、やっと自分なりに手順がまとまってきたので、忘れないようこちらに載せておきます。

## 1. 事前に準備しておくもの

#### 1-1. AWSアカウント

[AWSアカウントの取得はこちらから](https://aws.amazon.com/jp/register-flow/ “AWS アカウント作成の流れ”)

#### 1-2. ドメイン
(今回は検証のため、「freenom」というサイトで無料のドメインを取得しました。)

[freenomドメインの取得はこちらから](https://my.freenom.com/ “freenom トップページ”)

## 2. 使用するサービス

### **2-1. EC2 (Elastic Compute Cloud)**

| アイコン | OS | 用途 |
| :————: | :————————:

【AWS】ストレージまとめ(インスタンスストア、EBS、S3、EFS)

# はじめに
AWSについて調べていた際にストレージにさまざまな種類があることは理解したが、
それぞれの特徴やメリデメが混同しがちであったためまとめてみた。

# ストレージ各種概要
EBS、S3、EFSはそれぞれ以下の言葉の略
EBS : **Elastic Block Store**
S3 : **Sinple Storage Service**
EFS: **Elastic File System**

それぞれの大まかな仕様と比較は以下の通り
||インスタンスストア|EBS|S3|EFS|
|-|-|-|-|-|
|ストレージ種類|ブロック|ブロック|オブジェクト|ファイル
|ストレージ最大サイズ|60TB※1|16TB|制限なし※2|制限なし※3|
|スピード|最も速い|速い|遅い|普通|
|料金|EC2に内包|普通|安い|最も高い|

※1 インスタンスタイプによってサイズは異なる
※2 1ファイル5TBまで
※3 1ファイル47.9TBまで

## インスタンスストア
EC2の一時的なデータ(バッファ、キャッシュ、スクラッチデータなど)を
保持するためのストレージ。
EC

AWSでVue.jsのスマホレイアウトを確認する方法

メモ書き
AWSでVue.jsのレイアウトを確認する方法
・VScode内で、npm run buildを叩いてdistフォルダを作成
・S3のバケット内にそれを配置する。この際、css,js,img,index.html,favicon.icoを分けて配置する。
・バケットのプロパティから、一番下らへんにある静的ウェブサイトホスティングにhttpリンクがあるので、そのリンクでスマホから飛ぶ。

iPhoneのノッチがヘッダーにかかっていないかを確認したかったが、そもそもブラウザから見ているのでかかるわけがなかった。。。

ああああああああああああ