Weitere ähnliche Inhalte
Ähnlich wie EC2に対するcloudwatchのアクション設定がポリシーで使えないときの代替策 (20)
EC2に対するcloudwatchのアクション設定がポリシーで使えないときの代替策
- 1. CloudWatch – SNS – SQSで遊んでいるイ
ンスタンスを自動ターミネートする
IP接続制限+VPCで、EC2に対する
CloudWatchのアクション設定が使え
ないときの対策
- 2. 自己紹介
• 長尾 太介 (ながお だいすけ)
– twitter : daikumatan
• HPC(High Perfomance Computer)のお仕事
– 並列で動作する物理シミュレータの開発
– 大規模計算に適した解析環境の導入
• 好きなAWSのサービス
– EC2(c4.8xlarge), SQS
- 4. HPC (High Performance Computer)とは?
蓮舫︎:「いちばんじゃなきゃダメなんで
すか?」もHPC!
一言でいうとスパコンのこと。
なぜHPCでシミュレーションをするの
か?その意義は・・・
①実験では調べることができない事象
を計算により明らかにする
(分子構造、ナノ構造解析など)
②長い時間と多大なコストが必要とな
る実験を計算で代替する
(車の衝突実験、耐震実験など)
http://upload.wikimedia.org/wikipedia/ja/8/82/K
_computer_S0071267.JPG
- 11. 代替策:JAWS-UG CLI ハンズオンを応用しよう!
• JAWS-UG CLI専門支部 #8 - SNS & SQS
– http://jawsug-cli.doorkeeper.jp/events/17246
• JAWS-UG CLI専門支部 #9 -CloudWatch入門
– http://jawsug-cli.doorkeeper.jp/events/17391
- 12. 代替策のCDP: CloudWatch + SNS + SQS
Amazon SQSqueue
Amazon SNS
email notification
topic
instances
CloudWatch
alarm
polling
message
Launch/stop/terminate
user
HPCユーザのフロン
トエンドサーバ
(常時起動)
HPC環境
- 13. フロー ①, ②
Amazon SQSqueue
Amazon SNS
email notification
topic
instances
CloudWatch
alarm
polling
message
Launch/stop/terminateHPC
user
常時起動
インスタンス
①HPC環境
ローンチ
②ローンチから1時間後
CloudWatchのアラームを設
定(CPUUtilization 5%以下で
アラーム)
- 14. フロー ③, ④
Amazon SQSqueue
Amazon SNS
email notification
topic
instances
CloudWatch
alarm
polling
message
Launch/stop/terminateHPC
user
常時起動
インスタンス
③HPC環境の
CPUUtilizationが 5%
以下でアラームをだ
す。
④SNSがアラー
ムを受け取り、
メッセージを
EmailとSQSに送
信
- 15. フロー ⑤, ⑥, ⑦
Amazon SQSqueue
Amazon SNS
email notification
topic
instances
CloudWatch
alarm
polling
message
Launch/stop/terminateHPC
user
常時起動
インスタンス
⑤SNSのメッ
セージを受け
取りQueueに
格納
⑥cronでSQS
をpolling
メッセージが
あれば中身
を解析
⑦HPCクラスタを構成するインスタンスをすべ
てターミネート
(Alarm descriptionにHPC環境をターミネート
するコマンドが記述されている)
- 16. 工夫点・ハマりどころ 1
• インスタンス立ち上げと同時に、CPU負荷5%以下のアラームが鳴ら
ないようにCloudWatchの設定タイミング考慮
– CloudWatchのアラーム設定スクリプト(setCloudWatchAlarm.sh)を、HPCローン
チと同時に”nohap”で実行
– 1時間後から監視が始まるよう上記スクリプト内に”sleep 3600”を記述
# HPC環境を起動する
$ launchHPC.sh ・・・・
$ cat launchHPC.sh
#!/bin/bash
# インスタンス起動&HPC環境構築
~~ 省略 ~~
# cloudWatch Alarm設定
nohup setCloudWatchAlarm.sh ・・・・・
$ cat setCloudWatchAlarm.sh
#!/bin/bash
# 計算開始までの猶予時間
sleep 3600
# CloudWatch Alarm設定
~~ 省略 ~~