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

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

NLB+AutoScaling+EC2でサーバを冗長化する

## はじめに
NLB+AutoScalingの構成をAWSマネジメントコンソールで作成するまでの手順です。既に擦られまくったテーマではありますが、個人的な備忘録として纏めました。昨今はCFnやTerraformなどのIaCツールを使って構成するのが主流かと思いますが、誰かの参考になれば幸いです。

## 構成
– 検証用のため、NLBは1AZで構成します。
– AutoScalingグループは2AZで構成し、起動するインスタンスが別AZ上に配置されるようにします。

![toporogy.drawio (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389171/85f6e72d-8802-aaa2-c636-3d72bf56b78b.png)

## 手順
– VPCやサブネットなどの環境は既に構築済みの前提です。
– ApacheのインストールにはElasticIPを関連付けたNATゲートウェイが必要です。

### 起動テンプレートの作成
まずはAutoScaling時に起動させるインス

元記事を表示

AWS S3のバケット名の命名規約のお話

AWS S3を色々いじっていて気がついたこと。バケット名の命名規約が他のAWSサービスとちょっと異なることに気が付きました。
バケットとはAmazon S3 に保存されるオブジェクトのコンテナのことで、複数作成可能。

バケット名命名規約が、ここにあります。
[バケットの命名規則](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html)
> バケット名には、**小文字**、数字、ドット (.)、ハイフン (-) のみを使用できます。

えー、大文字は使えないんだ。何でだろ?

> バケット名は、パーティション内のすべての AWS リージョンのすべての AWS アカウントで一意である必要があります。パーティションは、リージョンのグループです。awsAWS には現在、(標準リージョン)、aws-cn(中国リージョン)、 aws-us-gov(AWS GovCloud (US)) の 3 つのパーティションがあります。

一番、不自然に感じたのはここ。バケット名がパーティション内のリージョン内

元記事を表示

顔面フィルタリングアプリ(あくまで設計だけです。)

# わたしの自己紹介
1社目:テストをする人 350万円
2社目:SE 430万円
3社目:AWSに関わる人 600万円

:::note info
3社目で大きく**年収**が上がりました。
:::
趣味:節約(風呂なし4万5000円、半額弁当生活)
資格:AWS SAA、TOEIC 700点オーバー

# はじめに マッチングアプリについて
わたしは昨年結婚をしました。
私たち夫婦はマッチングアプリで知り合って結婚まで行きました。

:::note info
マッチングアプリで結婚した人は2022年の現在は5人に1人の割合でお見合いや会社で街コンよりも割合が増えている見たいです。
:::

私はマッチングアプリのペアーズとwithを使っていました。
フィルタリングを活用して、表示数を私自身減らしていました。
フィルタリング機能とは年齢や年収・現在住んでいる場所・子供が欲しいかどうかなどをあらかじめプロフィールで登録している情報から弾くことができます。

# フィルタリングについて
お金持ちや庶民に関わらず時間だけは24時間と平等です。
例えば、専業主婦/主夫になりたい人間は年収50

元記事を表示

AWS S3のアクセス制御の話

[AWS Cosole、ヘルプの説明がわかりずらかった話](https://qiita.com/cozyk100/items/0f5d342aea9b896c76c7)でAWS S3のアクセス制御のAWS Consoleの表記がわかりずらいという記事を書きましたが、実際にどのような違いがあるのかを見てみましょう。

ます、S3はバケットという単位を作る際に
* ACLによる制御
* バケットポリシーによる制御
が選べます。AWSはバケットポリシーを推奨しています。
![68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3933333430382f37303936396237372d626563652d316261662d336162312d3332613839383633343364632e706e67.png](https://qiita-image-store.s3.ap-northeast-1

元記事を表示

EC2 AmazonLinux2にyumでインストールしたApacheの設定ファイルの場所

# 概要

– AmazonLinux2にyumでインストールしたApacheの設定ファイル(httpd.conf)の場所をメモ的に記載する。

# ファイルの場所

“`shell
/etc/httpd/conf/httpd.conf
“`

元記事を表示

AmazonLinux2にMySQL8.0クライアントを入れて接続

自分用備忘録

# 環境
“`
$ cat /etc/system-release
Amazon Linux release 2 (Karoo)
$ uname -a
Linux hogehuga.ap-northeast-1.compute.internal 5.10.144-127.601.amzn2.x86_64 #1 SMP Thu Sep 29 01:11:59 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
“`

# 手順
“`
$ sudo rpm –import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
$ sudo yum update

$ sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
$ sudo yum install mysql-community-client -y
$ mysql –version
mysql Ver 8.0.31 for Li

元記事を表示

AWS CloudFormationで動画配信環境を構築した!

# 概要
AWS CloudFormationを用いて簡単なHLS形式の動画配信環境を構築します。構成は次の通りです。
![live-streaming-demo.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429912/afde3724-d9af-f6f1-3ea9-fceff06e8c8b.png)

# 注意事項
– AWS CloudFormationの使い方に慣れていて、AWS Media Servicesについてもある程度知見をお持ちの方を対象にしていますが、初めての方もチャレンジしてみて下さい!
– PoCのため、各サービスのパラメーターはライブ配信に最適なチューニングはされず、ほぼデフォルトの値になっております。
– AWS CloudFormation テンプレートはYAML形式で記述しています。
– Tokyoリージョン (ap-northeast-1)で構築しています。
– 料金が発生しますので検証が終わりましたらCloudFormationスタックの削除を忘れないで下さい。

元記事を表示

AWS Cloud Practitioner Exam Short Notes—A study guide

If you are preparing for AWS Cloud Practitioner Exam, this guide will help you with quick revision before the exam. I share the notes I used to study and pass exams.

**AWS Cloud Practitioner certification obtained on 2022/09/19 ([badge link](https://www.credly.com/badges/8dfbb4d3-378e-41e9-87e7-5f01e9aca1e7/public_url))**

## What is AWS certification?

AWS certifications are designed to certify the technical skills and knowledge associated with best practices for building secure and reliable c

元記事を表示

eksctlでクラスターを作成する時の事前準備

eksctlとは、AWSでKubernetesを操作するAWS EKSのコマンドラインツールのことを指す。
以下から、curlやhomebrewでインストールが事前に必要。

https://github.com/weaveworks/eksctl#installation

次のコマンドではデフォルトのクラスタが生成される。

“`
eksctl create cluster
“`
・自動生成された名前を持つ
・m5.largeの2台のworker nodes
・EC2は、公式AWS EKS AMI
・EKS用のvpcが生成される。

注意点は、リージョンがus-west-2になること。
リージョン指定は、以下のようなコマンドで指定できる。
“`
ksctl create cluster –name 作成するクラスター名 –region ap-northeast-1 –profile 指定したIAMユーザー
“`

もしも、カスタマイズが必要であれば、yamlファイルを作成し、コマンドからyamlファイルを指定して、
生成をする。yamlに記載する。
“`
eksct

元記事を表示

【AWS EC2】【CentOS8 Stream】Zabbix6.0インストール(MySQL/Apache)

# 前口上
 世の中に落ちてるZabbix6.0の記事がなんか微妙に使いにくいので作成version2。
 コンセプト的には、黙ってコマンドを打ちまくれば構築完成する手順にした。

# 1 環境
・AWS EC2
・CentOS 8 Stream
・MySQL/8.0.26
・PHP/7.4.30
・Apache/2.4.37

# 2 構築
“`:基礎情報確認
uname -a ; id -un
cat /etc/redhat-release
cat /etc/os-release
“`
“`:アップデート
dnf update -y
“`
 XXXXXXXXは好きなホスト名を記述。
“`:ホスト名変更
hostnamectl set-hostname XXXXXXXX
もしくはnmtui
“`
“`:タイムゾーン設定
timedatectl set-timezone Asia/Tokyo
timedatectl
“`
 SELinuxは黙って無効化。
“`:SELinux無効化
sed -i -e ‘s/SELINUX=enforcing/SELINUX=disa

元記事を表示

ECRにログインやDockerをpushするときにエラー+複数ユーザーで使用したいとき(Error: Cannot perform an interactive login from a non TTY device)

# EC2サーバーでECRにログインするときのエラー
## 背景
Amazon ECRを使う場面でのことです。
ECRでは「プッシュコマンドの表示」があり、それ通りに行うことでレポジトリ内にあるimageをpushできます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/414468/12683115-0820-b3bd-d6ea-ff5e67400f95.png)

ある日新しいEC2サーバーでECRを使うため、新しいEC2にAWS CLIとDockerをインストールしました。図にしたのが以下です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/414468/3c3f1cf1-f32d-2713-84b7-38993d76b5a4.png)

この状態で、Dockerイメージを構築する前段階の処理(認証トークンを取得+レジストリに対して Docker クライアントを認証)をするため

元記事を表示

Lambda で どうしても大きい容量のライブラリが必要な場合

Selenium を動かすときにはまったので、備忘録として。

https://valmore.work/aws-labmda-pytorch/

の内容の追加になります。

## Lambda のレイヤーでは対応できない場合

Lambda のレイヤーを使えば、250MB までのライブラリを比較的簡単にインストールできます。
ですが、250MB 以上になった場合は、どうしても EFS を使って EC2 も使って ライブラリを呼び出す必要があります。

使い方は、

https://valmore.work/aws-labmda-pytorch/

に載っている通りなのですが、いくつかハマるポイントがあるので、それを説明します。

#### 2049番ポートからのアクセスを開放しているセキュリティグループ

EC2 のセキュリティルールで、インバウンド 2049・アウトバウンド全許可のルールを作りましょう。SSH も忘れずに。

#### Lambda への ポリシーのアタッチ

https://valmore.work/aws-lambda-s3/#lambda

にポリシーへのアタ

元記事を表示

AWSにてApacheサーバを構築してみた!(後編)

# AWSにてApacheサーバを構築してみた!(後編)
皆さんこんにちは!
前回はEC2インスタンスの作成まで終了したかと思います!

前編はこちら!↓↓

https://qiita.com/railgun-0402/items/c6b7df1f238228e25dd2

そして今回はいよいよ。。
実際にEC2インスタンスに接続をして行きましょう!

## 1. EC2インスタンスに接続する
まずはWindowsの方はコマンドライン、Macの方はターミナルを開きましょう。
前回作成したpemファイルを覚えてますでしょうか?

このpemファイルを保存したフォルダに移動する必要があります。
以下のコマンドを実行しましょう!

“`
$ MV ~/Downloads/「pemファイルの名前」.pem ~/ .ssh/
“`
次に権限設定を変更しましょう。
以下のコマンドを実行してください!
“`
$ chmod 400 ~/.ssh/udemysample.pem
“`

最後に以下コマンドを実行して、SSH接続をしていきましょう。

・「ssh」はSSH接続するコマンド

元記事を表示

AWSにてApacheサーバを構築してみた!(前編)

# AWSにてApacheサーバを構築してみた!(前編)
Amazon EC2でApacheサーバを構築します。
目標はブラウザにHTMLファイルを表示できることです!
![](https://storage.googleapis.com/zenn-user-upload/76025ad2b023-20221117.png)

## 環境
・MacOS 12.6
・Amazon EC2利用

## 注意事項

:::note warn
今回AWSでEC2サーバを設定しますが、終了後は必ず
インスタンスを停止してください!

インスタンスが実行中になっている間は料金が
発生してしまうのでご注意ください。。
:::

## まずはEC2を起動させよう
### 1.インスタンスを起動しよう
まずはAWSにログインし、**[EC2]→インスタンスの起動**を押下しましょう!
![](https://storage.googleapis.com/zenn-user-upload/3d245d692943-20221117.png)

右上のこれをクリック!↓
![](https://storag

元記事を表示

【AWS】GlueからS3へファイルをアップロードするTips

# はじめに
こんにちは。株式会社ジールの[@yakisobapan](https://qiita.com/yakisobapan)です。
S3コンソールからファイルアップロードができない、かつAWS CLIも使えないという事態に陥った際に見つけた裏技的なTipsを共有します。

# 目次
– 状況
– アーキテクチャ
– 手順
– 所感

# 状況
①セキュリティ観点からAWS CLIの使用がNG
②S3コンソールからのファイルアップロード操作が利用ブラウザでブロック
③他ブラウザの使用はNG

開発にあたりS3にファイルをアップロードしたい・・
アップロードしたいファイル形式:csv,tsv,sql,json,py,txt

# アーキテクチャ
簡易な図ではありますが、GlueのJob機能からS3にファイルを送信するイメージです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2737731/38498f5d-e0e3-d3f0-1a73-35cfe0843d20.png)

元記事を表示

AWS CognitoとSlack認証を連携させてみた

# はじめに
AWS CognitoとSlack認証(Sign in with Slack)を連携させたのでメモを残します。
Slack認証は数年前はOpenID Connect準拠していなかったので、Cognitoと連携するには自前でOpenID Providerを用意する必要がありました。しかし、今はOpenID Connect準拠で作られたものがあるので、単体でCognitoと連携できます。

## この記事でわかること
– AWS CognitoとSlackの連携について

## この記事でわからないこと
– Cognitoの詳しい解説
– OpenID Connectの解説
– Cognitoと開発するアプリケーションの連携

## 注意
あくまで自分が作成するアプリケーションとの連携になります。
各設定は環境に応じて一部変更する必要がありますのでご注意ください。

# Slack側設定-1
Slack APIのサイトから「Create New App」をクリック。
https://api.slack.com/apps

![image.png](https://qiita-

元記事を表示

Nuxt3をCodePipeline×AWS-CDKでAppRunnerにデプロイする

## はじめに
nuxt3は11/16正式リリースされましたね!!
AppRunnerもつい最近プライベートエンドポイントに対応したので、利用の検討を考えている人も多いと思うのでデプロイ方法とアーキテクチャーを検討してみました

今回の記事で使用したリソースを保管しているリポジトリ: [リンク](https://github.com/hontaku/apprunner-nuxt3)

## 前提条件

– AWSアカウントは開発環境と本番環境の2つがあると仮定
– 開発環境の中に開発中に使用するDEV環境と、本番環境とほぼ同等のSTG環境の2つがある想定
– 今回は本番環境については考慮しない

## Deploy戦略

AppRunnerにアプリケーションをデプロイする方法は以下の3つのいずれかが多いかと思います。

1. CodePipelineとCodeBuild、CloudformationでコンテナをビルドしてAppRunnerを構築する
![deploy-cloudformation.png](https://qiita-image-store.s3.ap-nort

元記事を表示

EC2インスタンスへSSH接続する方法

## EC2インスタンスへSSH接続する手順

自端末からパブリックサーバへのSSH接続と、
パブリックサーバからプライベートサーバへのSSH接続の手順についてまとめました

## 利用するもの
– サーバ:**Amazon Linux 2 AMI**
– ターミナル:**Tera Term**
– 認証:**Pageant**

### 前提
– OS:WindowsOS10,11
– Tera Term・Pageantをインストール済みであること
– パブリック・プライベートサブネットにEC2インスタンスを作成済みで、SSH接続(ポートは22)が出来るセキュリティグループを設定していること

### パブリック・プライベートのサーバの定義
 パブリックサーバ(パブリックサブネットのサーバ)=外部アクセス可
 プライベートサーバ(プライベートサブネットのサーバ)=パブリックサブネットに配置したサーバからのみアクセス可
    
## 【手順】事前準備
AWSでキーペアを作成時にダウンロードするプライベートキーを安全な場所に保存します。
今回は分かりやすく、デスクトップに秘密鍵というフ

元記事を表示

「Node.jsの使用開始」チュートリアルで S3 の体験

# 背景
業務でAWS に関わることになったので、必要そうな技術を試行中

そもそも、Node.js から理解していなかったので、まずはそれを理解しつつ、以下をやってみることに

https://docs.aws.amazon.com/ja_jp/sdk-for-javascript/v3/developer-guide/getting-started-nodejs.html

# 色々やってなんとなく把握したこと
– NVM: Npm の Version 管理。Node.js 使うなら入れたほうがよさげ
– [windows 版はここで](https://github.com/coreybutler/nvm-windows)
– npm: Node.js の Package 管理。
– [package.json](https://docs.npmjs.com/cli/v6/configuring-npm/package-json): これを元に bulid してくれる感じ?
– dependencies: 本番用
– devDependencies: 開発用

元記事を表示

AWS EC2 WordPress環境構築したが500エラーになる

# 概要

– AWSのEC2にWordPress環境を構築したが500エラーになったので自分の環境の場合の解決策をまとめる。

# エラー発生までの経緯

– 下記手順で作業した
1. VPCの作成などのネットワーク系の作業実施
1. EC2の設置
1. EC2にApache導入(このときApacheのテスト画面がEC2のパブリックIP直接指定で表示できることを確認)
1. RDS作成
1. EC2からRDSのエンドポイント指定してMySQLで入れることを確認
1. wgetでWordPressインストールしtarで展開し/var/www/html直下に展開ファイルを設置

# エラー内容

– EC2パブリックIP直接指定でブラウザからアクセスしても500エラーが返される。

![13_230_134_148.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/306417/848a5758-40df-759f-3c30-f6343c162423.p

元記事を表示

OTHERカテゴリの最新記事