- 1. AWS EC2にSSL/TLSを追加する(https化)
- 2. AWS CLIからDynamoDBを操作してみる。
- 3. zabbixによるプロセス監視
- 4. zabbixによるURL監視の備忘録
- 5. zabbix-agent.conf での個人的勘所
- 6. 【二週間でAWS SAA対策!】結局どの教材がいいの?SAA試験対策に使った教材まとめてみた!
- 7. OSSのライブラリを作ったので、立ち上げからリリースまでを時系列に書いていく
- 8. AWS認定 SAP, DOP, SCS合格しました
- 9. AWS EC2インスタンス作成後にセキュリティグループを変更する方法
- 10. 踏み台サーバーを経由して目的のサーバーへアクセスする
- 11. EC2接続時に[WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!]エラーになった時の解決法
- 12. 新しいVPCにEC2インスタンスのコピーを作成する
- 13. CloudfrontをTerraformで構築
- 14. AWS Container Guide For developer
- 15. Step Functionsを使ってAPI Gatewayのタイムアウトを回避する
- 16. AWS CloudwatchからChatbotを使ってコーディングなしでslackに通知を送る
- 17. 行レベルセキュリティーを考慮したQuickSightの登録済みユーザーの埋め込みダッシュボード機能を利用する
- 18. 【EC2】EC2にrailsのアプリをデプロイする方法 No.2(デプロイ)
- 19. AWS認定パートナー制度
- 20. aws ssmをフルプライベート環境で設定する
AWS EC2にSSL/TLSを追加する(https化)
AWS EC2インスタンスWEBサーバーを[ムームードメイン](https://muumuu-domain.com/)などで取得した独自ドメインでHTTPS化を有効にする手順について
##ムームードメインの操作
取得したいドメインを検索>カートに追加
###ドメイン設定
WHOIS公開情報:チェック
ネームサーバー(DNS):ムームーDNS
ドメインの利用方法:選択しない
ムームーメール:チェックしない##ACMの操作
*AWS Certificate Managerのコンソール画面>証明書のリクエスト
*パブリック証明書のリクエストを選択して、証明書のリクエストをクリック
*取得したドメインを入力し、次へ
*DNSの検証を選択して、次へ
*任意のタグをして、確認
*確定とリクエスト
*検証状態のステータスが「検証保留中」になっていることを確認する
*ドメイン名左の▼をクリックして、CNAMEレコードの名前欄と値欄を控える##ムームードメインの操作
*カスタムドメインの操作
*コントロールパネルからムームーDNSをクリック
*取得したドメインの 利用する をクリック
*D
AWS CLIからDynamoDBを操作してみる。
#はじめに
業務でDynamoDBを利用しているのですがAWS CLIからコマンドを打つ機会があったので忘れずに操作内容をメモしておこうと思います。##事前準備
今回はローカル環境からコマンドを打っているため、AWS CLIを利用するにあたってAWS Configureの設定をする必要があります。“`console
C:\WINDOWS\system32>aws configure
AWS Access Key ID [None]: IAMユーザのアクセスキー
AWS Secret Access Key [None]: IAMユーザのシークレットアクセスキー
Default region name [None]: ap-northeast-1
Default output format [None]: json
“`##DynamoDBの作成
今回はこの「test_dynamoDb」というテーブルを利用して色々と操作をしていこうと思います。
パーティションキーは”TestKey”とします。
![test_dynamo0.png](https://qiita-image-
zabbixによるプロセス監視
バージョンは4系
今回のポイント
“`
対象環境のEC2インスタンスについて、特定プロセス監視の追加。
例えばこんな感じ
inotifywait -e CLOSE_WRITE,DELETE -mrq /var/www/html/hoge/huga
“`inotifywaitでディレクトリの変更を監視しつつそれをzabbixに飛ばしてそこからslack通知なりなんなり便利に使ってみましょうという流れ。
https://ameblo.jp/itboy/entry-10172179452.html
今回困ったこと
1. プロセスの引数がいっぱいあってどうやって指定するのかわからん
2. プロセスの引数にオプション指定ある
3. プロセスの引数の中にカンマがあるここに書いてあるように
https://qiita.com/manabuishiirb/items/221f57f3f1352cd72bf8
“`
proc.num[]
“`[]の中は引
zabbixによるURL監視の備忘録
zabbix触り始めて割と最初の頃に躓いた時のメモ
バージョンは4系対象はALB配下のwebサーバー
## Hosts作成のあれこれ
zabbix-web上での設定
Agent interfacesは厄介
ELB配下のURLについてはDNS設定が出来ない(当然ELBいるから)
-> というそもそもコンテナで稼働しているzabbixサーバーはport 10050 をlistenしている
-> ELBでそんなport開いてるわけ無いでしょ
-> しかしuser agentを設定しないわけにも行かないので自分のローカルIPを設定すれば結果的におkIPを選択して、127.0.0.1 / port 10050
※zabbixサーバー自身のローカルを指定してる(ELB配下じゃなかったら監視対象のDNSを指定したい所)Groupsは監視対象次第(EC2とかRDSとか)で適宜
VisibleNameはそのまんまhost名になるので、パット見でわかりやすい名前や、既存の設定に合わせて命名しましょう。##・Triggersについて
既に環境をクライアントに引き渡している場合、アラート
zabbix-agent.conf での個人的勘所
serverバージョンは4系、AmazonLinux2環境
ubuntu環境に入れた時はこの記事をまんま進めてた(大感謝)。
ubuntuにagentを入れた時はインスコ完了時点でstartしている。https://www.server-world.info/query?os=Ubuntu_18.04&p=zabbix40&f=7
# zabbix-agent.confでよく弄る箇所
“`
### Option: LogFile
# Log file name for LogType ‘file’ parameter.
#
# Mandatory: yes, if LogType is set to file, otherwise no
# Default:
# LogFile=LogFile=/var/log/zabbix/zabbix_agentd.log
“`agentのLogを吐き出す場所の指定。
各agentのログを一箇所にまとめたい時等に割と弄る—
“`
### Option: EnableRemoteCommands
# Whether
【二週間でAWS SAA対策!】結局どの教材がいいの?SAA試験対策に使った教材まとめてみた!
# はじめに
**SAAの対策にどの教材を使うか迷ってませんか?**
私もSAA取得に向けて勉強を始めた時、数多くの教材のどれから初めるべきか迷いました….迷った末に、色々な合格体験記にある教材を片っ端から買って試す事にしました!
そこで今回は、二週間で合格するまでの過程で私が使用した書籍、サイトなどを勝手にレビューして重要度付けしていきます!
2021/09/05にAWS SAA試験を受けて合格しました✌️
![2021-09-06_20.41.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/696789/91c4e46e-8d30-8e79-ec3a-4e10b0866a85.png)# いきなり結論
1. [これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)](https://www.udemy.com/course/aws-associate/)
1. [【SAA-C02版】AWS 認定ソリューションアーキテクト アソシ
OSSのライブラリを作ったので、立ち上げからリリースまでを時系列に書いていく
# まえがき
ちょうど3年前に「[初心者3人でwebサービス(webアプリ)を作ったので、立ち上げからリリースまでを時系列に書いていく](https://qiita.com/yuno_miyako/items/d6595719ae7065927499)」なる記事を書いたことがあり、いまだにいいねをつけてもらえることがあります。そこで、**3年の時を経て**似たような記事を書いてみようと思いました。
Webアプリの開発経験はあるものの、**npmパッケージを公開したことはありません**でした。手探りからどのようにリリースまで、残したドキュメントをもとに振り返っていきたいと思います。
これを読んで「OSSを作ってみたいけどどう進めていけばいいか分からない」という人の一助になれば嬉しいです。誰か0から10までの流れを書いててくれないかな〜と思っていたので、きっと誰かには届く気がします。# 作ったOSSについて
[Realtimely](https://kitaharamugiro.github.io/Realtimely/jp/)という、Reactアプリに楽しい**リアルタイム要
AWS認定 SAP, DOP, SCS合格しました
# 概要
以下のAWSの認定試験を受けて合格しました。
AWS認定ソリューションアーキテクト プロフェショナル – 2021年5月
AWS認定DevOpsエンジニア プロフェッショナル – 2021年8月
AWS認定セキュリティ 専門知識 – 2021年8月# 受験した理由
実際の仕事内容が試験範囲と重なってきつつあったので、AWSのベストプラクティスを理解したかったためです。
# 試験勉強
## 使った教材
### AWS認定ソリューションアーキテクト プロフェショナル
– [AWS認定ソリューションアーキテクト-プロフェッショナル ~試験特性から導き出した演習](https://www.amazon.co.jp/dp/4865942483/)
– [AWS 認定ソリューションアーキテクト プロフェッショナル模擬試験問題集(全5回分375問)](https://www.udemy.com/share/1020WG3@w0L0AhgQMSqN24QAh6DVMiCvXGbRcMdBdBQFoUH3Z6-BHpjqFff4BgXKMw7XwNRr/)### AWS
AWS EC2インスタンス作成後にセキュリティグループを変更する方法
セキュリティグループの設定を間違えてEC2インスタンスを作成してしまった場合の変更方法です。
再度EC2インスタンスを作成し直す必要はありません。起動中のまま簡単に変更できます。# 1. EC2インスタンス一覧画面を開く
色々と方法はあると思いますが、サービス検索窓に`ec2`と入力し`EC2`をクリックすると表示させることができます。
![1-0.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1884434/50238637-e59b-6c50-20fd-ef384b9fae4e.png)# 2. 対象のインスタンスのチェックボックスをクリックする
以下のキャプチャのように、対象のインスタンスのチェックボックスをクリックしてください。
![1-1-a.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1884434/42a31ab5-a65d-b62a-c4a3-9cba6557a4f0.png)
起
踏み台サーバーを経由して目的のサーバーへアクセスする
# はじめに
キーペア、公開鍵、秘密鍵の理解から始まりましたが、なんとか踏み台サーバーを経由して目的のサーバーへアクセスすることができました。
ローカル、ファイルパス等基本的な用語の理解を復習すると良いのかと思います。# 流れ
1. ローカル環境のキーペアを、踏み台サーバーへ送る
2. 踏み台サーバーへアクセスする
3. 受け取ったキーペアを持って目的のサーバーへアクセスする# やったこと
まずは、ローカル環境のキーペアを踏み台サーバーへ送ります。
ローカル環境?となりましたが、ec2に接続する前の状態がローカル環境です。
ちなみにキーペアは、“`
cd #ホームディレクトリへ移動
cd ~/.ssh #sshへ移動
ls #中身を確認
“`この中にEC2作成時に作成したキーペアが存在します。
このキーペアの理解も私は躓きました。https://wa3.i-3-i.info/word17048.html
この記事を読みイメージがしやすくなりました。
送る鍵がわかったところで、実際に踏み台サーバーへキーペアを送ります。
“`
scp -i [キーペアファ
EC2接続時に[WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!]エラーになった時の解決法
# はじめに
https://qiita.com/ysdiary/items/4b806eddc26a73ef8fe6無事にEC2インスタンスを複製し、RDSの移動も終わったため、
新しいEC2へ接続しようとしたところ、
[WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!]
となり、接続ができなかったため、その際の解決法を残しておこうと思います。今回は、元々のEC2インスタンスにEIPを関連付けており、
そのEIPを新しいEC2に紐付けた際に生じたエラーです。# やったこと
ホームディレクトリへ移動する“`ruby
cd
“`sshへ移動
“`ruby
cd ~/.ssh
“`lsで中身を確認
“`ruby
ls
“`known_hosts の中身を確認
ターミナルに表示されたknown_hostsをクリックし、[Copy]を選択“`ruby
cat XXX #コビーしたものを貼り付け
“`known_hostsのレコードが表示されます。
該当のアドレスがあると思います。
一度アクセ
新しいVPCにEC2インスタンスのコピーを作成する
#はじめに
AWSのEC2画面からスタートします。
#AMIを作成する
1. サイドメニュー[インスタンス]から、コピーしたいインスタンスを選択
2. 右上の[アクション]>[イメージとテンプレート]>[イメージを作成]を選択
3. [イメージ名]にどこのインスタンスのコピー情報かわかるよう任意の名前を入力
4. 再起動しない/[有効化]にチェック
5. 終了時に削除/[有効化]にチェックが入っているか確認(デフォルトで入っています)
6. [イメージを作成]を選択
7. サイドメニュー[イメージ]>[AMI]を選択
8. 先ほどのAMIが作成されていることを確認
9. ステータスが[available]になったら終了#EC2インスタンスを作成する
1. サイドメニュー[イメージ]>[AMI]を選択
2. 作成したAMIを選択
3. [アクション]>[起動]を選択し、インスタンスの情報を入力
4. 無料枠の方は無料枠の設定に気をつけて、コピー元と同じように作成していくイメージ
5. [インスタンスの作成]でインスタンス一覧に複製したEC2インスタンスが存在することを確認#
CloudfrontをTerraformで構築
## これは何
CFをTFで構築した時のメモです。あくまでメモなので、仮に参考にされる際には任意で設定を変更ください。
CFはそもそもそんなに構築したこともなく、忘れそうなのでメモ。
TFバージョンは0.12を想定。## やってみた
“`terraform
# CloudFrontの作成
# オリジン=S3
resource “aws_cloudfront_distribution” “s3_distribution” {# 順序
# CFのデフォルトのドメイン名ではなく、任意のドメインを使用したい場合。
# その場合、任意のドメインのHosted zoneのAレコード=CFのデフォルトのドメイン とする。
# ACMで証明書を発行した場合、DNS検証として、CNAMEを該当のHosted zoneに追加する。
# ここでは、使用するドメインを書く。
aliases = [“使用するドメイン”]# Errorレスポンス
custom_error_response {# CloudFrontがオリジンにクエリを実行してオブジ
AWS Container Guide For developer
# 前提条件
本記事では2021.09.01の情報をもとに執筆しております。
公式の情報と差異が発生した場合は公式の情報を優先とします。
随時更新をいたします。
今回ではcontainerを使ってWebAPIを公開してみる場合のユースケースを検討します。# 対象
AWSでContainerを活用しようとしているdeveloper
API公開を行う前提で記載してますが結構幅広いユースケースに対応できるかなと思っています。# 前提知識
AWS基礎知識## AWSにおけるContainer WEBAPI公開において考えるべき事項
APIによっては他にも考えるべき事項はあるかと存じますが、これだけは外せないだろうというところを厳選させていただきました。
1. API公開・アクセス制御
2. 負荷分散
3. アプリケーション実行基盤
4. アプリケーション実行環境
5. イメージ管理
6. データベース
7. ストレージ
8. 監視
9. ルーティング・ドメイン制御## 概念解説と使用想定サービス
### 1. API公開・アクセス制御
API Gatewayの公開はAWSの場
Step Functionsを使ってAPI Gatewayのタイムアウトを回避する
# はじめに
API Gateway + Lambda で画像分類 AI を動かそうとしたところ、API Gateway のタイムアウト制限に引っかかってしまいました。
Step Functions を使うことで回避することができたので、その方法について書いていきます。# 実行環境
– macOS Big Sur 11.3.1
– SAM CLI 1.27.2
– Docker 20.10.7# やりたいこと
API Gateway と Lambda の間に Step Functions を挟んで、API Gateway から Step Functionsを呼び出します。
Step Functions の StartExecution API を呼び出すと、 Lambda のステートマシンでタスクを実行し、そのタスク名をレスポンスとして API Gateway に返します。
API Gateway にレスポンスが返ってきているためタイムアウトになりません。また、Step Functions の DescribeExecution API を呼び出すと、タスクの状況と
AWS CloudwatchからChatbotを使ってコーディングなしでslackに通知を送る
### はじめに
ClowdwatchからSlackへ通知する方法はいくつかあるが、どれもコーディングを必要とする。
代表的な例は、ClowdwatchとLambdaを使用してSlackへ通知する方法である。
Lambdaを使用して通知を送ると通知の文面などをカスタマイズできるが、そこまでの必要がない場合、
Chatbotを使用することでコーディングなしでClowdwatchの通知を送る事ができる。今回の例では、EC2インスタンスのCPU使用率が閾値を超えた場合にアラームを飛ばすように実装する
### Chatbot設定
1.Chatbotページからチャットクライアント「Slack」を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/631498/473a0b00-f6d6-e77b-b5a3-0c48bddbe677.png)2.Slackにリダイレクトされるので、使用したいSlackのチャンネルを選択して「Allow」
3.新しいチャネルを設定
![image.pn
行レベルセキュリティーを考慮したQuickSightの登録済みユーザーの埋め込みダッシュボード機能を利用する
# はじめに
[前回この記事](https://qiita.com/karuakun/items/128c4c13e8e28a598432)でQuickSightのRLSを考慮した匿名ユーザー向けの埋め込みダッシュボードの表示について説明しましたが、登録済みユーザーのダッシュボードも試したので記録として残しておきます。[前編](https://qiita.com/karuakun/items/128c4c13e8e28a598432)及び[後編](https://qiita.com/karuakun/items/bc27dec079696ed68d01)で作成したダッシュボードやソースをもとに設定を追加していくので、実際に手を動かして確認する場合はまず[前編](https://qiita.com/karuakun/items/128c4c13e8e28a598432)及び[後編](https://qiita.com/karuakun/items/bc27dec079696ed68d01)を確認してみてください。
# 匿名ユーザーと登録済みユーザーの埋め込みダッシュボードの違い
【EC2】EC2にrailsのアプリをデプロイする方法 No.2(デプロイ)
# はじめに
それでは前回に引き続き、EC2を使ってrailsのアプリをデプロイしたいと思います。
前回はEC2の環境構築までを行いました。これまでの工程について、まだ実装されていない方はこちらの記事をぜひご覧ください
https://qiita.com/kenta-nishimoto-1111/items/86ba0156c71b91dbc999
https://qiita.com/kenta-nishimoto-1111/items/4760bc02a6dfa40db035
https://qiita.com/kenta-nishimoto-1111/items/c6d4a899f4591430d242
それでは早速デプロイしていきます!
# 手順3 gitと連携をします
EC2インスタンスにアプリケーションのコードを送るためにはGithubを使います。
連携したGithubからEC2へクローンすることでデプロイをします。
そのためにGitHubとの接続設定をします。
ターミナルで下記のコマンドを実行します。“`:gitの連携
[ec2-user@ip-17
AWS認定パートナー制度
##■AWS(Amazon Web Services)とは
Amazon.comにより提供されているクラウドコンピューティングインフラストラクチャーサービスです。
企業の特徴として「AWSのパートナー認定を受けている」等耳にすることが多いと思いますが、
パートナー認定の中でもパートナーランクが設けられております。###■ランク
知識・経験・顧客の成功体験 等それぞれの要件が設けられております。
AWSトレーニングの力量や、カスタマーエンゲージメント、全体的事業投資などをそれぞれ判断されて以下4つの階層に分かれます。
1.Premier
2.Advanced
3.Select
4.Registered###■ランクの詳細
**Premier**
【知識】
・AWSプロフェッショナル認定取得者数:20名(テクニカル10名、ビジネス10名)
・AWS基礎認定技術者数:10名
・AWS認定技術者数:25名(最低10名はプロフェッショナル/専門知識)【経験】
・年間ローンチ案件数:50件(見込み月次収益$50,000)
・技術プログラム検証:3件(うち1つは、MSPまたはDevOps
aws ssmをフルプライベート環境で設定する
前提: ec2のイメージはAmazon Linux 2を想定しています.
#### Amazon Linux 2以外の方はこちらの資料を参考にuserdataを定義してください
https://aws.amazon.com/jp/premiumsupport/knowledge-center/install-ssm-agent-ec2-linux/#### ec2に`AmazonEC2RoleforSSM`ポリシーがアタッチされているロールを与えてください
資料: https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/getting-started-add-permissions-to-existing-profile.html#### フルプライベートサブネットの場合は、追加でそのサブネットにVPC Endpointを作成してください
詳しくはこちらの資料の以下の項目を参照して、VPCエンドポイントを作成してください.
> 5. Systems Manager の VPC エンドポイントを作