- 1. 0. 目次
- 2. 1. 概要
- 3. 2. 環境情報
- 4. 3. 作成方法
- 4.0.1. NJSSの技術スタック大公開!〜なくてはならないサービスを目指して〜
- 4.0.2. AWS: 簡単なLAMPサーバーでWordPressを動かすまで(Intel Mac) 〜MariaDBをインストール〜
- 4.0.3. Organization内で各AWSアカウントのサポートプランを判別する方法
- 4.0.4. 【新規事業】SkyWayでモザイク加工したカメラ映像を送ってみるよ(完結編)【プロト開発】
- 4.0.5. AWS サポートケースの履歴を自動で Wiki にナレッジ化する
- 4.0.6. EKS Ingress Resourse(ALB)を作成する
- 4.0.7. デフォルトVPCを削除するAWS CLI
- 4.0.8. ruby on rails を AWS Cloud9で実施 2 コントローラー Viewについて python初心者
- 4.0.9. AWS: 簡単なLAMPサーバーでWordPressを動かすまで(Intel Mac) 〜PHPをインストール〜
- 4.0.10. .env などにある環境変数を[一括で|まとめて] パラメーターストアに登録するスクリプトを書いたよ
- 4.0.11. curlでAmazon CognitoのAPIにアクセスする
- 4.0.12. Amazon EKS のノード1台に起動できるPod の制限数を増やす
- 4.0.13. samでCloudWatchLogsのログ記録を有効化しようとすると「CloudWatch Logs role ARN must be set in account settings to enable logging」と出る
- 4.0.14. SaaS、PaaS、IaaS
- 4.0.15. AWSのCAによるプライベート証明書を発行する
- 4.0.16. EC2インスタンスのCPU使用率を監視する
- 4.0.17. Amazon Fargateでアプリケーションを動かす
- 4.0.18. AWS CLIを使ってみたい
Ubuntu 22.4でCodeDeploy Agentをインストールする
EC2に対してCodeDeployでアプリケーションをデプロイする場合、CodeDeploy Agentがインストールされている必要がある。
Ubuntuの場合はマニュアルでインストールが必要になり、その手順は公式ドキュメントに書いてある。
https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent-operations-install-ubuntu.html
ただし、 Ubuntu 22.4 の場合は `apt install ruby-full` で入ってくるRubyのバージョンが3.x系になっているせいか、インストールに失敗してしまうようだった。
回避策を探していたら、以下のissue commentのスクリプトで無事にインストールできた。
https://github.com/aws/aws-codedeploy-agent/issues/301#issuecomment-1129912011
Lambdaのpython Layer(simple_salesforce)作成
0. 目次
- 概要
- 環境情報
- 作成方法
1. 概要
Lambdaのpythonを使用してSalesforceへの処理を実装したいので、pythonのSalesforceモジュールである『simple_salesforce』をimportするためにLayerを作成します。
2. 環境情報
pythonは、バージョン3.8を使用します。
Lambdaのpythonバージョン3.8はAmazon Linux2上で動作しているので、Amazon Linux2のEC2インスタンス上でLayerを作成します。詳細に関しては、Lambda ランタイムを参照してください。
3. 作成方法
1. EC2インスタンス作成AmazonNJSSの技術スタック大公開!〜なくてはならないサービスを目指して〜
こんにちは!NJSS 事業本部のエンジニアの栗原と申します。
私は2018年夏にうるるに入社してから現在に至るまで NJSS のサーバーサイドエンジニアとして、 Web 開発とインフラ構築を中心に従事しており、現在は複数ある開発チームのいちリーダーを務めております。
最近はありがたいことに面接やカジュアル面談の場面が増えてきており、候補者の方からたくさんご質問をいただきます。その中でもよくいただくのが「どんなフレームワークを使用しているのか?」「どんなインフラで組んでいるのか?」の2つです(参画するプロダクトの構成はやっぱり気になりますよね!)
そこで今回は2021年7月にリニューアルを実施した NJSS のインフラ構成をご紹介いたします!
## NJSSとは?
NJSS(エヌジェス)は「入札情報速報サービス」の略で、あらゆる省庁・自治体が公示している入札情報の検索・閲覧とタスク管理がWebページ上で完結できるサービスです。
https://www2.njss.info/
さまざまな機能を提供しておりますが、中でも NJSS が重要視しているポイントは以下の3点です。
AWS: 簡単なLAMPサーバーでWordPressを動かすまで(Intel Mac) 〜MariaDBをインストール〜
# はじめに
AWSハンズオンの学習記録です。
2022年8月の情報をもとに投稿します。ゴールは、EC2を使って簡易的な仮想サーバーを作り、ブログソフトであるWordPressをインストールします。
また、WordPressを外部公開できることを想定しています。**今回はデータベースである「MariaDB」のインストール方法を投稿します。**
尚、ハンズオンがメインのため、各サービスの概要や用語の解説は極力省かせていただきます。
### ゴール
仮想サーバーでWordPressを使える状態にします### ゴールまでの流れ
[1.VPCとサブネットを作成](https://qiita.com/holySh10/items/749b98e320fc71e6739e)
[2.EC2を作成/セキュリティグループの設定](https://qiita.com/holySh10/items/90a3501d819f1ae2c7cd)
[3.EC2へSSH接続](https://qiita.com/holySh10/items/689f4c83cd18db128983)
[4.WebサOrganization内で各AWSアカウントのサポートプランを判別する方法
親アカウントからCost Explorerまたは請求書を使い判別するのが楽です
Organizationとしての機能はないようです。【新規事業】SkyWayでモザイク加工したカメラ映像を送ってみるよ(完結編)【プロト開発】
【新規事業】SkyWayでモザイク加工したカメラ映像を送ってみるよ(完結編)【プロト開発】
https://shopee.vn/blake.vn https://shopee.vn/techtra.vn? https://www.lazada.vn/shop/techtra-shop https://tiki.vn/cua-hang/shop-blake?AWS サポートケースの履歴を自動で Wiki にナレッジ化する
## モチベーション
AWS Support のケース履歴は最大 12 ヶ月保存されます。https://aws.amazon.com/jp/premiumsupport/faqs/
> **Q: ケース履歴の保存期間はどくらいですか?**
> ケース履歴情報は、作成後 12 か月間ご利用いただけます。そのため、サポートケースの内容を社内 Wiki のようなところでナレッジとして長期的に蓄積したいというケースを想定しています。
## 構成
* EventBridge のイベントルールでサポートケースのクローズを検知
* AWS Lambda で AWS Support API を使用してケースの詳細を取得
* Markdown 形式に整形して Wiki に投稿:::note info
AWS Support API はビジネスサポート以上で利用できます。
:::![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/125105/acadaece-2321-160c-8b5
EKS Ingress Resourse(ALB)を作成する
## What’s This
AWSにおいて、k8sでいうIngressはどう作成するのか調査。
ALBを使うのだろうということは想定していたが、どうやって作成するのか気になった。AWS Load Balancer Controllerを使用して、Ingress を作成したメモです。
あくまでメモなので、参考にされる場合は、公式ドキュメント等の副読的な感じで読まれると幸いです。## 概念
### 大まかな概念ALBは、Kubernetes Manifestから、ALB Ingress Controllerを使用して作成できる。
このControllerは、元々はAWS ALB Ingress Controllerだったものが、
Rename & Redesignedされて、AWS Load Balancer Controllerに変わったらしい。
(何が変わったのかよくわかっていない)*元々ALBしか作成できなかったが、ALBとNLBも作成できるようになった、という変更があるらしい。
前者の方はもう開発もされておらず、最新のk8s VersionもサポートしないらしいデフォルトVPCを削除するAWS CLI
### ■全体の流れ
1. デフォルトVPCの情報を取得
1. デフォルトVPCに関連付けられているInternet Gatewayの削除
1. デフォルトVPCに関連付けられているSubnetの削除
1. デフォルトVPCの削除### ■備考
* DHCPオプションセットは残る
* 全リージョン分削除する場合は適宜修正
* デフォルトVPCの状態がデフォルトである前提### ■詳細
① デフォルトVPCの情報を取得
“`shell
# デフォルトVPCのIDを取得
default_vpc_id=$(aws ec2 describe-vpcs –region ap-northeast-1 | jq -r ‘.Vpcs[] | select(.IsDefault == true) | .VpcId’)
“`
② デフォルトVPCに関連付けられているInternet Gatewayの削除
“`shell
# デフォルトVPCに関連付けられているInternet GatewayのIDを取得
default_igw_id=$(aws ec2 describe-internet-ruby on rails を AWS Cloud9で実施 2 コントローラー Viewについて python初心者
https://qiita.com/TaichiEndoh/items/35294ff656499d9bbf8d
前回の続きです
環境 AWS Cloud9
environment type EC2
instance type t2.micro
platform ubuntu server 18.04 LTS## controllerの作成
まずは
controller
を作成してみます## MVC アーキテクチャの復習
model
データベースアクセスなど データ関連処理View
画面表示controller
リクエストやレスポンスを制御
view と model の橋渡しさっそくコマンドを入力します
generate を g 省略可能です
“`
rails g controller
“`
上のコマンドで controller を作成してくださいという
命令になります#### 今回は rails g controller users index を実施
以下の users はコントローラーに付ける名前です
データベースと連携する場合は複数形にするのAWS: 簡単なLAMPサーバーでWordPressを動かすまで(Intel Mac) 〜PHPをインストール〜
# はじめに
AWSハンズオンの学習記録です。
2022年8月の情報をもとに投稿します。ゴールは、EC2を使って簡易的な仮想サーバーを作り、ブログソフトであるWordPressをインストールします。
また、WordPressを外部公開できることを想定しています。**今回はプログラミング言語である「PHP」のインストール方法を投稿します。**
尚、ハンズオンがメインのため、各サービスの概要や用語の解説は極力省かせていただきます。
### ゴール
仮想サーバーでWordPressを使える状態にします### ゴールまでの流れ
[1.VPCとサブネットを作成](https://qiita.com/holySh10/items/749b98e320fc71e6739e)
[2.EC2を作成/セキュリティグループの設定](https://qiita.com/holySh10/items/90a3501d819f1ae2c7cd)
[3.EC2へSSH接続](https://qiita.com/holySh10/items/689f4c83cd18db128983)
[4.Webサー.env などにある環境変数を[一括で|まとめて] パラメーターストアに登録するスクリプトを書いたよ
## 環境変数を追加するのが面倒
パラメーターストアに環境変数をぽちぽち登録するのが苦行で仕方がありませんでした。
12個ぐらい一気に追加されると、それをポチポチすると5-10分かかってしまいます。
そこで、慣れないシェルスクリプトをつかって一括登録できるようにスクリプトを書きました。
慣れないので2時間ぐらいかかりました。笑## 前提
AWS CLI が必要です。
## シェルスクリプト
“` put_env.sh
#!/bin/bash## Default値
profile=’default’
data_type=’String’
desc=’from post_envs.sh’
prefix=”
##function usage {
cat <curlでAmazon CognitoのAPIにアクセスする
# What’s?
AWS SDKやAWS CLIに頼らずに、HTTPでAmazon CognitoのAPIにアクセスできないかな?と思って調べていたら、どうやらできそうなのでメモ。
# アクセスするAPIのリファレンス
こちらの一覧が対象です。
https://docs.aws.amazon.com/ja_jp/cognito-user-identity-pools/latest/APIReference/API_Operations.html
# アクセス方法
以下の情報に沿って行います。
– HTTPエンドポイント … `https://cognito-idp.[リージョン].amazonaws.com`
– HTTPメソッド … `POST`
– 付与する必要があるHTTPヘッダー
– `Content-Type: application/x-amz-json-1.1`
– `X-Amz-Target: AWSCognitoIdentityProviderService.[アクション名]`
– HTTPボディ … APIに応じたJSON# サンプル(ト
Amazon EKS のノード1台に起動できるPod の制限数を増やす
# はじめに
[Amazon EKS](https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/what-is-eks.html) クラスタのアドオンである[Amazon VPC CNI (Container Network Interface)](https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/pod-networking.html)を有効化するとEKS のノードで起動するPod はVPC 内のIP アドレスを使って通信できるようになります。この機能を有効化すると、デフォルトではノードのインスタンスタイプによって起動できるPod の数に制限が発生してしまうため、スペックが低めのインスタンスタイプの場合、この制限にすぐに引っかかってしまうかと思います。
参考: [インスタンスタイプによって起動できるPod の数](https://github.com/awslabs/amazon-eks-ami/blob/master/files/eni-max-pods.txt)
samでCloudWatchLogsのログ記録を有効化しようとすると「CloudWatch Logs role ARN must be set in account settings to enable logging」と出る
## エラーメッセージ
“`
CloudWatch Logs role ARN must be set in account settings to enable logging
“`## 原因
API Gatewayに設定するCloudwatchLogs書き込み用のRoleがセットされていないから
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/293481/49ccb0cf-4927-b57d-4e02-99c62fbe7135.png)## 対処方法
このように、Roleをセットする。“`yaml
Resources:
ApiCWLRoleArn:
Type: AWS::ApiGateway::Account
Properties:
CloudWatchRoleArn: !GetAtt CloudWatchRole.ArnCloudWatchRole:
Type: AWS::IAM::Role
ProSaaS、PaaS、IaaS
# SaaSとPaaS、IaaSの違い
これらの違いは**どこまで提供するクラウドサービスなのか**です。
## SaaS(Software as a Service)
インフラやプラットファーム(OS)だけでなく、アプリケーションまでを提供する。
ex)SNSやブログサービス、Webメールサービス、DropBox
## PaaS(Platform as a Service)
プラットファームまでを提供する。OSの入った状態のサーバーにアプリケーションなどをインストールして利用する
ex)レンタルサーバー
## IaaS(Infrastructure as a Service)
インフラのみ、すなわちネットワークやサーバーなどのマシンを提供
# EaaS(Everything as a Service)・XaaS(ザース)
SaaS、PaaS、IaaSの総称をEaaSやXaaSと呼ぶ
ネットワークからソフトウェアまでを提供するサービスのこと。
つまり**AWSはEaaS**。
# 3つのサービス形態の特徴
SaaSは便利な反面、自由度が低い
IaaSは設定が複雑な反面、自由度が高い
#AWSのCAによるプライベート証明書を発行する
# 要件
プライベート証明書をACMのPCA(プライベート認証局)で発行し、CSRを利用して証明書を署名したいです。# 前提
ACMのPCAを作成すること。
下記のコンソール画面からPCAを作成する。ただし、CAは30日間無料トライアル後400$/月の費用が発生する。かつ証明書1つにつき0.75$かかります。
https://ap-northeast-1.console.aws.amazon.com/acm-pca/home# 証明書発行
– IssueCertificate コマンドで証明書を発行する
– certificate-authority-arnはアカウント情報
– certificate-authorityはPCAのID
– csrはCSRファイルのパス
– validityは有効期間“`bash
aws acm-pca issue-certificate \
–certificate-authority-arn arn:aws:acm-pca:region:account:\
certificate-authority/12345678-1234-123EC2インスタンスのCPU使用率を監視する
CPU使用率のモニタリングをしていなかったことについて、ユーザーから突っ込みがあったらしいので設定しました。
エージェントのインストールは不要でとても簡単です。
これはAWS EC2インスタンスの話です。# トピックの作成
まず、Amazon SNS(Simple Notification Service)から**トピック**を作成します。
Amazon SNS はサーバレスでメッセージ(スマートフォンのプッシュ通知、Eメール、SMSなど)の配信を可能にするマネージドサービスです。トピックという論理的なアクセスポイントにメッセージを送信すると、トピックに紐づけられた受信者に対してメッセージが非同期で一斉送信される仕組みです。
この仕組みを自前で構築しようとすると、開発コストだけでなく、サービスのスケールに応じて管理コストもかかってきますが、Amazon SNS なら初期費用をかけずに利用できます。今回はEメールで通知するのでタイプはスタンダード、任意の名前で設定します。
![image.png](https://qiita-image-store.s3.ap-northeastAmazon Fargateでアプリケーションを動かす
# ECRに登録
![スクリーンショット 2022-08-06 15.11.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/81113/801403c4-823c-008c-4ee1-4bbd481dfb71.png)
![スクリーンショット 2022-08-06 15.12.25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/81113/986eb07e-b35c-443a-0d23-27ebc9780e3d.png)
![スクリーンショット 2022-08-06 15.12.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/81113/0a4d9770-493d-8994-efa6-ad73de5e5132.png)
プッシュコマンドの表示をして指示通りにPushします。
![スクリーンショット 2022-08-0
AWS CLIを使ってみたい
AWS CLIを使ってみたいと思い立ったので、やったことをメモしていきます。
今回はSSH接続の復習も兼ねて
「自分のパソコンからEC2に対してSSHで接続し、EC2からその他のリソースに対してCLIで作業を行う。」という手順で作業を進めていきたいと思います。## EC2の作成
SSH関連の部分だけを変更しました、せっかくなのでキーペアも新しく作成しました。
関連する記事
OTHERカテゴリの最新記事
- 2024.09.19
JavaScript関連のことを調べてみた
- 2024.09.19
JAVA関連のことを調べてみた
- 2024.09.19
iOS関連のことを調べてみた
- 2024.09.19
Rails関連のことを調べてみた
- 2024.09.19
Lambda関連のことを調べてみた
- 2024.09.19
Python関連のことを調べてみた