Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
EC2 T2つまずきやすいCPUクレジット再演
Search
たけだ
October 13, 2022
Technology
0
87
EC2 T2つまずきやすいCPUクレジット再演
2020年5月9日 JAWS新潟支部勉強会 LTスライド
たけだ
October 13, 2022
Tweet
Share
More Decks by たけだ
See All by たけだ
トヨクモ4製品で実現している基幹システムとオペレーション自動化事例紹介
taketakekaho
1
26
あの頃数百自治体のコロナワクチン 予約フォームを救ったWaiting Roomの運用
taketakekaho
2
2.9k
あの頃数百自治体のコロナワクチン予約フォームを救ったWaiting Roomの運用
taketakekaho
2
440
Cloudflare_MeetUp_Sapporo_KickOff.pdf
taketakekaho
1
210
AWS初心者抜けきれない私がAWS SamuraiとAWS Community Builderの特権フル活用したらどんなものが作れるか挑戦したこと
taketakekaho
0
99
AWSとLINEをつないでAIボットを作ろう!初心者編
taketakekaho
0
87
AWSとLINEをつないでAIボットを作ろう
taketakekaho
0
84
LGWANでも使えるシナリオ型チャットボットをAWS ECSで構築し数百自治体に提供している話
taketakekaho
0
1.7k
コミュニティを活用した勉強習慣化.pdf
taketakekaho
1
470
Other Decks in Technology
See All in Technology
成果を出しながら成長する、アウトプット駆動のキャッチアップ術 / Output-driven catch-up techniques to grow while producing results
aiandrox
0
220
Jetpack Composeで始めるServer Cache State
ogaclejapan
2
170
KnowledgeBaseDocuments APIでベクトルインデックス管理を自動化する
iidaxs
1
260
終了の危機にあった15年続くWebサービスを全力で存続させる - phpcon2024
yositosi
0
280
ガバメントクラウドのセキュリティ対策事例について
fujisawaryohei
0
530
小学3年生夏休みの自由研究「夏休みに Copilot で遊んでみた」
taichinakamura
0
150
生成AIのガバナンスの全体像と現実解
fnifni
1
180
株式会社ログラス − エンジニア向け会社説明資料 / Loglass Comapany Deck for Engineer
loglass2019
3
31k
Wvlet: A New Flow-Style Query Language For Functional Data Modeling and Interactive Data Analysis - Trino Summit 2024
xerial
1
110
ハイテク休憩
sat
PRO
2
140
LINEスキマニにおけるフロントエンド開発
lycorptech_jp
PRO
0
330
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
muziyoshiz
2
2.2k
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.3k
BBQ
matthewcrist
85
9.4k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
GraphQLとの向き合い方2022年版
quramy
44
13k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Faster Mobile Websites
deanohume
305
30k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Music & Morning Musume
bryan
46
6.2k
GitHub's CSS Performance
jonrohan
1030
460k
Building Adaptive Systems
keathley
38
2.3k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Transcript
#jawsug_niigata 2019/2/23 → 2020/5/9 JAWS初心者支部 武田可帆里
• 今日の11時に思い立って発 表者参加登録したので過去の LTの再演です、、 • 資料公開中 • SNSつぶやき大歓迎! #jawsug_niigata
自己紹介 武田 可帆里(たけだ かほり) 仕事: ソフトウェアエンジニア兼プロダクトマネージャー 株式会社チェンジ NewITユニット ・チャットボット開発 &(からの出向)
株式会社トラストバンク パブリテック事業 ・自治体向けSaaS企画開発 ・元インフラ、今フラフラ(色々の意図) ・JAWS初心者支部運営 Samurai2019 ・AWSスキルは初心者 ・興味:AWS/Azure/Office365/Node.js/Python/Django/ChatBot/ チャット/自然言語解析/サーバレス/Low-Code #jawsug_niigata
セッションターゲット ・AWS触ったことがない ・AWS始めようと思っている方 ・「T2インスタンス」のTとか2って何だろうって方 ・AWSの設計・構築・保守に携わる方 #jawsug_niigata
コンセプト ・AWS初心者がこれからAWSを勉強するための第一歩 になってほしい ・皆失敗したり試行錯誤しながら勉強してるということ をわかってもらう ・私と同じトラブルに見舞われないようにEC2でつまず きやすいCPUクレジットをわかりやすく解説する #jawsug_niigata
1. AWS初心者の私が作ったチャットボットの話 2. But! つまずいた話 3. CPUクレジットとは?の話 4. まとめ Index
#jawsug_niigata
ちょっとここで質問 普段、チャットを使って 仕事をしている方? #jawsug_niigata
社内コミュニケーションはほぼチャット ちょっと相談があるんですけど 10分くらいお話できます? ◦◦という事象で対処したこと ある方います? 今駅の◦◦改札着きました! ◦◦する時におススメなツール 知ってる方いますか? ◦◦資料入手しました。確認し た方は[確認済]ボタンタップし
てください。 確認済 ◦◦さんから電話ありました。 コールバックお願いします。 03-1234-5678 XXで提案しようと思ってるんだ けど詳しい人います? #jawsug_niigata
チャットボットを社内・社外向けに作るお仕事が多かった 社員検索ボット 安否確認ボット 「社員検索 氏名」を入力すると、写 真、部署名、電話番号、メールアドレ スなどの社員情報を回答。 安否確認が発動されると、ボットが安 否を確認。組織管理者のルームで、安 否状況・連絡先・所在地が共有される。
営業部 営業第一課 安否確認ボット 安否確認ボット 山田 洋子 人事と内定者をつなぐボット。タスク のリマインド・提出物管理・発言数か らの離脱兆候検知を行う。 内定者管理ボット #jawsug_niigata
AWS初心者 の私が作っ たチャット ボット A #jawsug_niigata
「退社時間の見える化」カード のチャットボット版を作る。 #jawsug_niigata
営業日の朝に全社員個々に一斉に退社予定をヒアリング PC モバイル
業務中に退社予定が変わったらいつでも自分で変更可
定刻にルームのメンバーの宣言時間レポートを共有 その他、使い方ヘルプ機能・休日設定・ 社員ごとの退社予定時間検索なども実装
構成考えた #jawsug_niigata
• ボットプログラム載せるサーバー必要 • ユーザーごとのデータ保有するDB必要 • ボットが強制停止しても自動起動(cron) • 社内システムへの接続なし • チーム内のトライアルで始めてそのまま全社導入
• 極力リーズナブルに • 支援サービスなので冗長化不要だけどDBバックアップはとりたい #jawsug_niigata
AWSの代表的な最小構成で作って完成 #jawsug_niigata
But! つまずいた B #jawsug_niigata
トライアル開始から約2か月後、 急にボットが動いてないと申告 確かに反応がない 既読になったりならなかったり…
RDSセッションか? →問題ない
CPU負荷かかってる? →問題ない [ec2-user@ip-10-0-0-28 tokyo001]$ vmstat 2 procs -----------memory---------- ---swap-- -----io----
--system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 6 0 0 6392492 192204 498296 0 0 0 1 0 2 13 6 62 0 19 4 0 0 6392524 192204 498296 0 0 0 0 19759 42371 55 34 11 0 0 4 0 0 6391192 192204 498296 0 0 0 0 19970 42467 54 35 11 0 0 3 0 0 6390252 192204 498296 0 0 0 0 19662 42541 55 34 11 0 1 4 0 0 6383068 192204 498296 0 0 0 0 20126 42574 56 33 11 0 0 3 0 0 6382108 192204 498296 0 0 0 0 19856 42586 54 34 11 0 0
あ! #jawsug_niigata
原因はCPUクレジット
CPU クレジット とは? C
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/burstable-credits-baseline-concepts.html #jawsug_niigata
6クレジット/時間 Max144 vCPU使用率 時間 10% バースト期間 (50分) 50クレジット消費 (50分間) 追加なし
※1CPUクレジット=1台のvCPUを使用率100%で1分間実行することに相当
定刻処理は一時的な負荷なので トライアル期間はT2で大丈夫と思ってた 少しずつCPUクレジット消費してたらしい… #jawsug_niigata
たくさんあるインスタンスタイプ T 2 micro T 汎用 M Tより少し性能が高い汎用 C CPU重視
R メモリ重視 P GPU、速度重視 とりあえず安く作るだけならT、 普通に作るならM 世代。 機能が世代によって ちょっと違う スペック 最初はTかMでOK #jawsug_niigata
クラウド最高! インスタンスを変更して 即解決 #jawsug_niigata
チャットボットのように裏で定期ジョブや 処理がある場合はT系のインスタンス不向き CPUクレジットの罠に注意 最初はクレジットの消費状況は確認要 失敗から多くを学べる 失敗を恐れない ってことで
#jawsug_niigata
ちょっと追加
この登壇 から1年後 の私 Z
「チャットボット屋さん」から「チャット屋さん」になった
モバイルアプリのプッシュ通知をAmazonSNSで構築 初めてのモバイル開発 AWS公式ドキュメントと クラスメソッドさんの ブログ見ながら1人で構築。 (マジ感謝クラメソさん)
チャットボットはDocker上で開発してAWS Fargateで運用 Dockerは開発する時は使ってたけどAWSさん の公式twitterからAmazon ECSの存在を知る BlackBeltの動画で勉強して試行錯誤しながら 構築。超便利!!!
全国のAWS技術者とつながった上にSamuraiに認定頂いた 資産であり宝物
皆AWS全部のサービスをわかってるわけじゃない。 試行錯誤しながら少しずつわかってくる。 初心者から抜け出せない?私もです!! でも実は誰かにとっては初心者ではないかも。 アウトプットすることでインプット倍増。 試行錯誤したこと、失敗したことも共有しよう ってことで
#jawsug_niigata
次回のJAWS初心者支部勉強会 5/27(水)開催予定 「Amazon Connectハンズオン」 オンライン勉強会なので 興味ある方是非ご参加ください Connpassで募集予定 #jawsug_niigata