- 1. クラウドのセキュリティ対策について
- 2. Glue Data Quality(プレビュー版)について①
- 3. Glue Data Quality(プレビュー版)について②
- 4. Cloud9のリサイズ
- 5. [RDS][Aurora] Reader 2台構成でインスタンスタイプ変更にかかるダウンタイムを調査してみた
- 6. AWS WAFにタグ設定する方法
- 7. 【Wordpress】PHP Update Requiredの対応方法について(EC2に接続してアップグレードする)
- 8. Amazon Kinesis Data Streams (KDS)とAWS Glue Streaming ETLを用いたVantageへのデータストリーミング
- 9. AWS の RDS の MySQL8 でのユーザー作成
- 10. AWS LambdaのコードエディタでDeploy時の困りごと
- 11. AWS Linux仮想マシンにLAMP環境構築 (初学者が教材と現実の狭間で奮闘した結果)
- 12. AWS利用料の予算超過をSMS通知する
- 13. 【AWS CDK】Part2 : Lambda + DynamoDBを構築
- 14. Amazon API Gatewayの実行ログをAWS CloudFormationで設定する
- 15. VueのaxiosでAWS Lambdaで作成したAPIを実行する方法
- 16. Python ColabでASWのS3からダウンロードする
- 17. AWSを基本からまとめてみた【AWS Perspective】
- 18. 【AWS】CodeCommitのGitコマンド備忘録
- 19. 超初心者がDB接続するSpringBootアプリをAWSにデプロイする【後編】
- 20. 超初心者がDB接続するSpringBootアプリをAWSにデプロイする【前編】
クラウドのセキュリティ対策について
# はじめに
こんにちは!株式会社80&Companyの技術広報です。
弊社の開発部署では毎週火曜日の朝9:30から社内勉強会を行なっています。今回の記事はバックエンド開発業務を行なっているエンジニアが社内勉強会でクラウドのセキュリティ対策について発表したものを紹介します。クラウドのセキュリティ対策について、興味のある方は参考にしてみて下さい♪
# 読者の対象
* クラウドのセキュリティ対策に興味がある方# 責任分界点を確認しよう
国内企業のクラウドサービスの利用割合は、年々増加傾向にあります。
総務省のクラウドサービス提供事業者向けの情報セキュリティガイドラインというものがあり、下記の画像のような責任分界点を定義しています。境界はデータ、アプリ、ミドルウェア、OS、仮想環境、ハードウェア、ネットワーク、施設・電源といったクラウド基盤に分解しています。クラウドサービスを提供している事業者と利用企業の各々が、責任をクラウド基盤のどの範囲担当するか定めた境界を責任分解点といいます。![スクリーンショット 2023-02-10 11.18.26.png](https://qii
Glue Data Quality(プレビュー版)について①
## はじめに
こんにちは。株式会社ジールの@Shin-Nakamura224です。
先日、Glue Data Quality(プレビュー版)が発表されたので、
概要と簡単な検証を紹介したいと思います。
今回の記事はGlue Data Qualityの概要について紹介いたします。検証 ↓
[Glue Data Quality(プレビュー版)について②](https://qiita.com/Shin-Nakamura224/private/2bf8fdf5cea311811b03)
***
## 概要
### Glue Data Qualityとは
AWS Glueでデータの品質をモニタリング・問題の検出を簡単に実施できる機能になります。
(2022年11月30日発表)
ユーザは品質評価のルール(DQDL)を設定して、データの品質検査を実施することが可能です。
Amazonが開発したOSSのDeequを使用してルールを評価します。
Glue Data Quality(プレビュー版)について②## はじめに
こんにちは。株式会社ジールの@Shin-Nakamura224です。
先日、Glue Data Quality(プレビュー版)が発表されたので、
概要と簡単な検証を紹介したいと思います。
今回の記事では、Glue Data Qualityを使った簡単な検証を紹介したいと思います。概要↓
[Glue Data Quality(プレビュー版)について①](https://qiita.com/Shin-Nakamura224/private/984d7d4b83dc65d3fdc1)
***## 前提条件
・Glue Data Qualityを扱うために、**Glue3.0**を使用しております。
・データソースはテストデータ(**CSV**ファイル)を使用しております。
## 検証内容
以下の2つをテーマとして、検証を実施しました。① ELTジョブ内でData Qualityの品質検査の実施と
Data Qualityのルール違反をAWS CloudWatchで通知
② Python処理との実行時間の比較
***
## アーキテクチャ
①の検証では、
AWS
Cloud9のリサイズ
# No space left on device エラー
Cloud9のディスクサイズのデフォルトは10GBしかなく、少しファイルサイズの大きいものを扱うと下記のようなエラーが発生してしまう。
“`
ERROR: Could not install packages due to an EnvironmentError: [Errno 28] No space left on device
“`# リサイズスクリプト
下記のスクリプトを作成し、引数に変更したい容量を指定する。
“`
#!/bin/bash# Specify the desired volume size in GiB as a command-line argument. If not specified, default to 20 GiB.
SIZE=${1:-20}# Get the ID of the environment host Amazon EC2 instance.
INSTANCEID=$(curl http://169.254.169.254/latest/meta-data
[RDS][Aurora] Reader 2台構成でインスタンスタイプ変更にかかるダウンタイムを調査してみた
## 目的
– Aurora ClusterのWriter/Readerのインスタンスタイプの変更を実施するにあたり、ダウンタイムが最小化できる方法を検討。
– アプリのアクセスがWriter/Reader双方に対してあったため、Readerをもう一台追加してオンラインでサイズ変更を行う方法を検証。## 検証手順
– 以下手順における、踏み台サーバからのアクセスにおけるダウンタイム時間を調べてみる。
1. Readerインスタンスを1台追加
1. Reader1のインスタンスタイプ変更(db.t3.medium -> db.t3.large)
1. Reader2のインスタンスタイプ変更(db.t3.medium -> db.t3.large)
1. WriterのFailover
1. Writerのインスタンスタイプ変更(db.t3.medium -> db.t3.large)## 検証構成
– 以下の構成でWriter/Readerのインスタンスタイプをt3.mediumからt3.large変更する。| インスタンス台数
AWS WAFにタグ設定する方法
AWS WAFのリソース(Web ACL, Rule Group, IP Set)のタグ操作をする場合、
マネジメントコンソール上からではなくCLIからするっぽいので備忘録として残します。#### AWS WAFv2のCLIドキュメント
https://docs.aws.amazon.com/cli/latest/reference/wafv2/index.html#cli-aws-wafv2
実際にやる時はCloud Shellで実行するのが良さそう。
## タグ操作
“`bash:タグ設定
aws wafv2 tag-resource –resource-arn–tags
“`“`bash:–tagsの指定例
Key=,Value=
“`https://docs.aws.amazon.com/cli/latest/reference/waf/tag-resource.html
– 既に登録されているタグの一覧を取得
“`bash
aws wafv2 list-tags-for-re
【Wordpress】PHP Update Requiredの対応方法について(EC2に接続してアップグレードする)
# 前提
* AWSのEC2インスタンスで稼働しているお手製HTMLホームページを、Wordpressに移行した後に発生したエラーについて記載します。
* WordPressインストールするまでの流れを解説した前回の記事はこちら:[WordpressをEC2インスタンスにインストールする方法(Apacheのバーチャルホスト設定方法・Wordpress用DB作成方法も解説)](https://qiita.com/Ryo-0131/items/a6dab55ea5b54b6e10b7)## PHP Update Requiredの警告
* PHP7.0であることに対して警告が表示されていることを確認![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2710373/c0f92aa3-2a66-7faa-3d89-026e39280a0c.png)
* WordPressがインストールされているEC2インスタンスへ接続。
* 以下を実施して、PHP7.4にupgrade“`
Amazon Kinesis Data Streams (KDS)とAWS Glue Streaming ETLを用いたVantageへのデータストリーミング
次のアーキテクチャは、Amazon Kinesisからのデータの流れを示しており、AWS Glueによってストリーミングされ、Teradata Vantageで分析され、最後にAmazon QuickSightで表示されるようになっています。このチュートリアルでは、シンプルなLambda関数を使用して、ストリーミングソースを実行することにします。
![画像1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2742714/0893c9ed-eb77-6a5f-c3e3-a02bbc2b08d0.png)
# 前提条件
AWS Glue Streaming ETLをTeradata Vantageで使用するには、まず、以下の前提条件を満たしていることを確認してください:
・仮想マシンにログインするためには、[Amazon Elastic Compute Cloud](https://aws.amazon.com/ec2/) (Amazon EC2)のキーペアが必要です。まだお持ちでない場合は、[新規
AWS の RDS の MySQL8 でのユーザー作成
MySQL8のユーザー作成方法メモ [^contract57]。
[^contract57]: 例えば、MySQL5.7では `GRANT` でユーザーが作成&パスワード設定できたが、8ではそれができなくなった。(参考) https://www7390uo.sakura.ne.jp/wordpress/archives/456
__※ワンポイント__
AWSで、同じVPC内でネットワークセグメントを別にして複数環境を利用する場合などがあるかと思う。そういう場合、DBには対応するセグメントのユーザーを作成するのが良い。
セキュリティグループのほうで環境を超えてアクセスできないように設定しておくのだが、DB側でセグメント指定でユーザーを作成することで、セキュリティグループの設定を忘れた時や間違って意図した設定になっていなかった場合の、アクセス制限の保険になる。
環境が1つであれば、セグメント指定せずに % でよいだろう。 (例: `’ユーザー名’@’%’` )## 実際のSQL
データベースはあらかじめ作成している前提。[^aboutflush]
“`sql
CREA
AWS LambdaのコードエディタでDeploy時の困りごと
# Deployボタンを押して保存したはずなのに
AWS Lambdaでは、いくつかの言語でWeb上のコードエディタで直接コードが編集できます。
ある程度のコードを書いた後、保存するときに押すのが **Deploy** ボタンです。
以前から **Deployボタンを押す直前に入力したいくつかの文字が保存されない** 場合がある問題(バグっぽいもの)があり、悩まされています。
## 再現方法とログ
いつも再現できるか分かりませんが、手元では以下のように実施して一発で再現できました。
Pythonで、一から作成として、普通にサンプルのプログラムを作成します。
そこに、以下の1行を追記します。
“`python
print(‘abcdefghijklmnopqrstuvwxyz’)
“`まず1回目の **Deploy** ボタンを押します。
z の後に、今度は大文字で “`ABCDEFGHIJKLMNOPQRSTUVWXYZ“` を追記して、2回目の **Deploy** ボタンを押して更新します。
コードとしては以下が入力された状態です。
“`pyth
AWS Linux仮想マシンにLAMP環境構築 (初学者が教材と現実の狭間で奮闘した結果)
# はじめに
AWS SAAの取得を目指して会社からの課題で、AWS上にLAMP環境の構築をすることになりました。早速paizaラーニングでAWSの操作を学習しましたが、現在とのバージョンの違いに苦戦しました。私自身の備忘録でもありますが、同じようにeラーニングと現実との狭間で苦戦してる初学者に届けとの思いで書きます。
(なるべく動画教材の流れに合わせて書いたつもりです。)# Linux仮想サーバ EC2を作成
– リージョンを選択
Linux 2 AMIを選択
(Linux AMIは既にサポート終了)
キーペアを作成してからインスタンス起動– パブリックIPアドレスを設定
Elastic ipを関連付ける
※割り当て → インスタンスへの関連付け を確実に
(私はいつのまにか複数割り当ててしまって関連付けていないEIPのせいで課金されてしまいました:sob:)
セキュリティグループのインバウンドルールの編集→HTTPを追加
(ソースは0.0.0.0/0にしたのですが…あってる???)– ターミナルでLinux仮想マシンにリモートで接続
WindowsなのでGit B
AWS利用料の予算超過をSMS通知する
# 概要
予算超過をSMS通知するための手順をまとめる
SMS通知の条件:1日あたり1ドルを超過# 手順の流れ
+ SNSの設定
+ トピックの作成
+ エンドポイントの作成
+ サブスクリプションの作成
+ Budgetsの設定# トピックの作成
### メニューの場所
Amazon SNS>トピック>トピックの作成### タイプ
「スタンダード」を選択する||FIFO|スタンダード|
|—|—|—|
|メッセージ順序|厳密に順位づけ|ベストエフォートの順位づけ|
|サブスクリプションプロトコル|SQS|SQS/Lambda/HTTP/SMS/Eメール/モバイルアプリケーションエンドポイント|### 名前
なんでも良い### 表示名
なんでも良い### アクセスポリシー
“Statement”に以下の記述を追加する
※BudgetsからSNSへのアクセスを許可するポリシー
※your topic ARNはトピックのARNに書き換える“`json
{
“Sid”: “AWSBudgetsSNSPublishingPerm
【AWS CDK】Part2 : Lambda + DynamoDBを構築
本記事は[Part1](https://qiita.com/kennyQiita/items/907b563048428e8264a1)の続きになります。
## 環境情報
* 作業環境はAWS Cloud9を利用
* cdk versionは2.63.2## はじめに 作成イメージ
Part1で作成したLambda(Hello Lambda)の前段にHitCounter Lambdaを作成します。Hit Counter LambdaはAPI Gatewayからリクエストを受け取り、Hello Lambdaをinvokeします。Hello Lambdaからレスポンスを受け取り、DynamoDBにアクセスしてHit回数をカウントアップします。
![hit-counter.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/484097/ac9e5c1a-1f5b-ec50-2648-92daf0506807.png)
では早速手を動かしていきましょう。## HitCounterの作成
### HitCo
Amazon API Gatewayの実行ログをAWS CloudFormationで設定する
AWS CloudFormation で Amazon API Gateway を構築する時、実行ログの設定がわかりづらかったので記録します。
Amazon API Gateway は、Amazon Management Console ではステージエディターの「ログ / トレース」タブで実行ログを設定できます。実行ログは、画面上では「CloudWatch ログ」と表示されています。画面のたどり方は、「API > ステージ > ログ / トレース > CloudWatch 設定 > CloudWatch ログ」です。
この CloudWatch ログの設定では、次の値が選択できます。
* オフ
* エラーのみ
* エラーと情報ログ
* リクエストとレスポンスの全ログ選択できる各値の AWS CloudFormation での指定の仕方を列記します。
オフ:
“`yaml:template.yaml
Resources:
SampleApi:
Type: AWS::Serverless::Api
Properties:
MethodSett
VueのaxiosでAWS Lambdaで作成したAPIを実行する方法
## はじめに
VueのaxiosでAWS Lambdaで作成したAPIを実行してみました。
大まかな流れは以下のとおりです。1. Lambda関数の作成
1. API Gatewayの設定
1. Pythonから叩く
1. CORSの設定
1. VueからAPIを叩くでは、やっていきましょう。
## 開発環境
– Windows 11
– Vue 2.7.14
– Node.js 14.17.5
– Python 3.11.0## 実装
### 1.Lambda関数の作成
AWS Management Consoleにサインインして、Lambdaサービスを開きます。「関数の作成」ボタンをクリックし、必要な情報を入力していきます。
今回は、t-tsuchiyama-helloworldという関数を作成しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3124507/db4087e4-eb34-f8b4-7ea6-0796b732d826.png)t-tsuc
Python ColabでASWのS3からダウンロードする
# イントロ
AWSのS3のバケットは、流行っているデータ保存先ですね。人工衛星のデータを会社によりよく使用します。しかし、Pythonで直接に読み込めませんが、ダウンロードできます。本日の記事には、GoogleのColabでは、AWSのS3バケットからデータをダウンロードし方を紹介します。# セットアップ
最初に、ColabでAWSのモジュールをインストールしたいです。Pipでawsとaswcliのモジュールをインストールして、AWSを繋げるようになります。そしてColabの場合は、ドライバーに接続します。“`python
!pip3 install aws
!pip3 install awscli
#Colab link drive
from google.colab import drive
drive.mount(‘/content/drive’)
“`次に、AWSのアカウントを設定します。AccessID(アクセント番号)とAccessKey(アクセントガキ)が必要です。持っていない場合は、AWSの記事をご覧ください [リンク](https://aws
AWSを基本からまとめてみた【AWS Perspective】
## AWS Perspective とは?
『AWS Perspective』とは、AWS上のクラウド構成を「アーキテクチャ図」として視覚化してくれるサービスのこと。
## AWS Perspective を使用するメリットとは?
『AWS Perspective』を使用するメリットは、AWS上で稼働しているサービス構成の「適切性」や「設計の妥当性」を確認する等の設計工程での作業時間を短縮できる。
## 参考サイト
[【AWS UPDATE】AWS Perspectiveを発表 (2020/9/22 発表) ](https://www.youtube.com/watch?v=snTO-k3o3eM)
[AWS Perspectiveとは?その特徴や機能も解説します!](https://www.fenet.jp/aws/column/technique/1047/)
【AWS】CodeCommitのGitコマンド備忘録
AWS CodeCommitでのAWS-CLIとgitコマンドによるレポジトリの作成・編集・アップロード・インポートの方法を紹介する。
## レポジトリの作成
レポジトリの作成はAWS-CLIを使用する。1. AWS-CLIの認証を行う
デフォルトのリージョン名は、CodeCommit のリポジトリの AWS リージョン と一致する必要がある。
“`
aws configure
>AWS Access Key ID [None]: ASIA**************
>AWS Secret Access Key [None]: *********************
>Default region name [None]: ap-northeast-1
>Default output format [None]: json
aws configure list
“`
1. ~/.aws/credentialsの認証情報にセッショントークンを追加する
※必要な人だけ
“` ~/.a
超初心者がDB接続するSpringBootアプリをAWSにデプロイする【後編】
# はじめに
駆け出しJavaエンジニアでインフラの知識もデプロイ経験もほぼ無い筆者が、Springで作成したアプリケーションをAWSにデプロイすることに成功した手順を、遭遇したエラーも交えながら記していきます。
長いので2部構成になっています。本記事は**後編**です。**【前編】AWS環境の構築**
* VPCの構築
* EC2インスタンスの設置
* RDSの設置
前編はこちら↓https://qiita.com/sai-i/items/00fc6e27235f94fcd0fa
### 【後編】動作環境の構築とデプロイ
* ミドルウェアのインストール
* Springアプリケーションのデプロイ※この記事は2023年2月8日に書かれたものです。
AWSは更新が激しいようなので使用している画像のマネージメントコンソール等のUIが異なる可能性があります。ご了承ください。# 前提
* AWSのアカウント登録
* AWS環境の構築
* Springアプリケーションの作成
* インフラの基礎知識インフラの知識と環境構築方法については下記のUdemy教材で学習しました。
手
超初心者がDB接続するSpringBootアプリをAWSにデプロイする【前編】
# はじめに
駆け出しJavaエンジニアでインフラの知識もデプロイ経験もほぼ無い筆者が、Springで作成したアプリケーションをAWSにデプロイすることに成功した手順を、遭遇したエラーも交えながら記していきます。長いので2部構成になっています。本記事は**前編**です。
### 【前編】AWS環境の構築
* VPCの構築
* EC2インスタンスの設置
* RDSの設置**【後編】動作環境の構築とデプロイ**
* ミドルウェアのインストール
* Springアプリケーションのデプロイ後編はこちら↓
https://qiita.com/sai-i/items/c7786653bfbd3f00218b
※この記事は2023年2月8日に書かれたものです。
AWSは更新が激しいようなので使用している画像のマネージメントコンソール等のUIが異なる可能性があります。ご了承ください。# 前提
* AWSのアカウント登録
* Springアプリケーションの作成
* インフラの基礎知識インフラの知識と環境構築方法については下記のUdemy教材で学習しました。
手順だけではなくイ