SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
AWSコスト管理をちゃんとしたくて
やったこと
2019/02/16
@cuzic
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
1自己紹介
Tomoya Kawanishi a.k.a cuzic
ENECHANGE株式会社 チーフエンジニア
エンジニア、積極採用してます!
Ruby関西の中のひと
みなさん、登壇お願いします!
Otemachi.rb の中のひと
2月20日(水) Otemachi.rb #14 を開催します
各線東京駅・大手町駅・日本橋駅・三越前駅至近
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
事業部制を採用する ENECHANGE 2
低圧事業部 一般のご家庭、小規模の事業所など向けの電気の比較・切替サービス
高圧事業部 ビル、工場など向けの電気の切替サービス
プラットフォーム事業部 電力会社向けに、顧客獲得プラットフォームを提供
SIM事業部 格安SIM の比較・切替サービス
・ 事業部単位に、大幅に権限を委譲し、個々の事業部で独立採算で収益管理する
・ 意思決定の迅速化、意思疎通の円滑化、意欲の向上などの効果が期待できる
一般的な事業部制の特徴、メリット
費用と事業部との関連付けが必要
多くの事業を展開する ENECHANGE
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
エンジニア費用を例にした原価計算の例 3
・ 開発エンジニアは各事業部に所属
・ 工数管理の上、エンジニア費用を計上
エネチェンジ
の事業部制
低圧(家庭・商店)
高圧(ビル・工場)
プラットフォーム
Simchange
(例) エンジニア
費用の原価
プロフィットセンター コストセンター
コーポレート(人事、経理ほか)
インフラエンジニアは、コーポレート
に所属。
・ プロジェクトに紐づいた活動は
直接原価として各事業部で計上
共通費として計上
全社共通費として各事業部に配賦
では、 AWS費用はどう扱うか?
事業部別の原価計算の例
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
事業部別コスト管理の定石 4
事業部
低圧(家庭・商店)
高圧(ビル・工場)
プラットフォーム
Simchange
AWSアカウント
低圧用アカウント
高圧用アカウント
プラットフォーム用アカウント
Simchange 用アカウント
コーポレート 全社共通アカウント
AWS ではアカウントを分割しても、請求・支払いは親アカウントへの一元化が可能。
メリット: 事業部別に明確にコストを把握できる
デメリット: 事業部をまたぐような作業をするとき、運用上の手間がかかる
※ 運用面のデメリットは、AWS Organization などの機能を使うことで緩和可能
事業部別コスト管理の定石は AWS アカウントの分割
アカウント分割の概要・メリット・デメリット
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
ENECHANGE では単一AWSアカウントで管理 5
ENECHANGEは、単一の AWSアカウントを全社で使用
事業部
低圧(家庭・商店)
高圧(ビル・工場)
プラットフォーム
Simchange
AWSアカウント
コーポレート
全社共通
アカウント
・ 当初は、事業部の数は多くなく、分ける必然性が大きくなかった。
・ 創業当初は事業部制ではなく、職能別組織だった。
・ その当時は、Organization がなく、運用上の手間・煩雑さが無視できないと感じた
・ あとからアカウントを分割することは可能ではあるが、作業負荷も大きく現実には困難。
単一アカウントとした理由
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
用語の整理と、目標 6
できる限り多くのリソース費用を
直課
させる!
直課
該当のリソースのコストを直接その事業部に関連付けて集計
すること
配賦
一定の配賦基準に基づいて、該当のリソースの費用を各事
業部に紐づけること
エネチェンジでの AWS 費用の配賦の際は、直課した費用の比率で配賦率を決定
ほかの主要なコスト配賦基準としては
・ 所属人員の頭割り
・ 各事業部の売上の比率
などで決定する方法があります。
目標
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
コスト配分タグを利用したコスト把握 7
コスト
配分タグ
リソース(EC2、EBS、AMI、ELB、RDS など)に付与された
どの事業部(プロジェクト)の費用かを識別するためのタグ
AWS費用の多くはコスト配分タグで事業部に直課可能
・ Reserved Instance
・ Data Transfer
・ サポート費用
⇒ 直課できない費用は、各事業部に配賦して事業部ごとの AWSコストを計算
コスト配分タグで、分類できない費用の例
・ 割引(AWS Activate プログラム)など
・ 消費税
・ コスト配分タグがついていないリソース
コスト配分タグを付与する仕組みを構築し、
タグのないリソースを極力減らす
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
エネチェンジのコスト配分タグの付与の仕組み 8
EC2 EBS
スナップ
ショット
AMI
ENI EIP
EC2
手動で、1個ずつタグを付与。
ASG なども適切にタグ付けされるように設定
EBS、AMI
など
EC2 と同じタグを自動付与するスクリプトを作成。
定期的に EC2 の状態と同期させる
・ AutoScalingGroup などのリソースを
再生成したときは、タグの再設定も必要
・ DataPipeline で定期実行。
定期実行する理由・方法
・ EC2 を起点に各リソースの関係を、
ツリー構造と見立て、トポロジカルソート
・ このツリー構造を元にタグ情報を伝搬
内部動作の解説
タグ付けスクリプトを定期実行し、省力化
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
トポロジカルソートとは
グラフ理論でのアルゴリズムの1つ。
依存関係を順に処理したいときとかに使える
Ruby には標準ライブラリの tsort がある
9
トポロジカルソート(英: topological sort)とは、グラフ理論に
おいて、有向非巡回グラフ(英: directed acyclic graph,
DAG)の各ノードを順序付けして、どのノードもその出力辺の
先のノードより前にくるように並べることである。
Wikipedia での説明
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
トポロジカルソートの利用例
Set#divide
Rubygems
Bundler
Ruby on Rails ( Rails::Railtie )
initializer の before、after などの
順序を正しく処理するために使われている
Rukawa
@joker1007 さん作の Ruby 製ワークフローエンジン
10
require 'set'
numbers = Set[1, 3, 4, 6, 9, 10, 11]
set = numbers.divide { |i,j| (i - j).abs == 1 }
p set # => #<Set: {#<Set: {1}>,
# #<Set: {11, 9, 10}>,
# #<Set: {3, 4}>,
# #<Set: {6}>}>
Set#divide の使用例
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
処理内容
①: aws describe-instances コマンドで、
・EC2 と EBS と ENI の関係を取得
・EC2 に付与されたタグをすべて取得
②: aws describe-snapshots コマンドで、
EBS と スナップショット ID の関係を取得
③: aws describe-images コマンドで、
AMI と スナップショットID の関係を取得
④: ①~③の結果生成されたグラフ構造を元に、
関連する EC2 に付与されたタグを EBS、ENI、スナッ
プショット、AMI にも同様に付与する
11
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
tsort の使い方 (1/3)
tsort_each_node:グラフの各ノードを巡回するメソッド
tsort_each_child:引数のノードの子ノードを順次処理するメ
ソッド
12
class AwsTSort
include TSort
def tsort_each_node
@edges.each_key do |key|
yield key
end
end
def tsort_each_child(node)
@edges.fetch(node, []).each do |child|
yield child
end
end
…
end
TSort の使用例(定義)
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
tsortの使い方(2/3)
今回は Hash でグラフ構造を表現
tsort 自体は任意のオブジェクトを使えるが Hash が便利
Tree に見立てると、key が親、value が子の関係。
13
@edges = Hash.new{|h, key| h[key] = []}
each_tag_ebs_eni do |instance_id, tags, ebs, eni|
@edges[instance_id].push *ebs
@edges[instance_id].push *eni
…
end
each_ebs_snapshot do |volume_id, snapshot_id|
@edges[volume_id].push snapshot_id
end
each_snapshot_ami do |snapshot_id, ami_id|
@edges[snapshot_id].push ami_id
end
TSort の使用例(グラフ構造の構築)
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
tsort の使い方 (3/3)
each_strongly_connected_component_from で、
強連結結合のノードを順に取得できる
今回の例だと、あるインスタンスを親とする子孫全部を
取り出すということができる。
14
def resources_from(start)
[].tap do |resources|
each_strongly_connected_component_from(start) do |nodes|
resources.push *nodes # nodes は Array
end
resources.delete(start)
end
end
TSort の使用例(強連結結合の取得)
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
15リソースへのタグ付成功!
さまざまなリソースにタグ付けすることができた!
だ、け、ど、
実行してみたところ、わりと時間がかかった
5分くらい
もっと速くしたい!
aws コマンドの実行に時間を要しているのは明らか
aws コマンドを並列実行するともっと速くできる!
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
処理内容
遅いのは、AWS リソースの情報取得のところと、
タグ付のところ
特に、タグ付のところが遅かった
16
グラフ構造の構築
トポロジカルソート
AWS リソースのタグ付
AWS リソース一覧の取得
(AWS コマンドの発行)
AWS コマンドを 4回発行
describe-instances
describe-network-interfaces
describe-images
describe-snapshots
AWS コマンドを リソースの数、
タグの数に応じて、繰り返し実行
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
リソース一覧の取得(メインスレッド側)
Threadを使った内部実装は意識させない設計
引数: aws コマンドの引数
ブロック引数: aws コマンドの実行結果(標準出力)の各行
Thread#join を各スレッドで実行。情報取得終了を待つ
17
def each_ebs_snapshot
query = "Snapshots[].[VolumeId, SnapshotId]"
aws_lookup(%(ec2 describe-snapshots --query "#{query}")) do |line|
volume_id, snapshot_id = line.chomp.split("¥t")
yield volume_id, snapshot_id
end
end
ワーカスレッドで
実行される
def join_lookup_threads
@lookup_threads.each &:join
end
呼び出すとき
各スレッドの終了を待つとき
@lookup_threads は
ワーカスレッドの配列
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
リソース一覧の取得(ワーカスレッド側)
スレッド内では Thread.new の引数だけを使用
そのスレッド内でのローカルコピーが作られる
他のスレッドでの更新が原因での不具合とかが起きない
aws コマンドを実行し、出力結果を1行ごとに
ブロック引数として呼び出し元に渡す
1つのコマンドを1つのスレッドで実行
あとで待ち合わせするため Thread を配列に保持
18
def aws_lookup(command)
@lookup_threads << Thread.new(command) do |cmd|
cmdline = "aws #{cmd} --output text"
IO.popen(cmdline, "r+") do |io|
io.each_line do |line|
yield line
end
end
end
end
Thread 中で使う
command を引数と
している
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
タグ付(メインスレッド側)
タグ付けでは、異なるリソースを対象に繰り返し AWS
コマンドを発行する
ワーカスレッドで、AWSコマンドを並行実行する
スレッド間通信には Queue を使用する
Ruby 2.3以降は組み込みライブラリ
Queue#enq を利用
出力結果は使用しない
AWSコマンドの成功/失敗も気にしない(Fire and Forget)
複数リソースに対するタグ付けを1回で処理
shellwords ライブラリの Array#shelljoin メソッドを使用
19
def create_tags(resources, tags)
return if tags.empty?
args = ["--resources", resources.shelljoin, "--tags", tags.shelljoin]
@aws_queue.enq %(ec2 create-tags #{args.shelljoin})
end
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
AWS リソースのタグ付(ワーカスレッド側)
Queue#deq で、キューからオブジェクトを取り出せる
while command = queue.deq は Thread 処理でよく使うイデ
ィオム
nil 以外の場合、ループの中の処理を行う
nil を受け取るとループから抜ける
20
def start_aws_thread
Thread.start do |t|
while command = @aws_queue.deq
cmdline = "aws #{command}"
system cmdline
end
end
end
end
nil 以外の場合はループの中を実行
nil のときは、ループを抜ける
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
タグ付(メインスレッド側) 開始と終了
ワーカスレッドを開始すると、配列に保持する
ワーカスレッドを終了するため、nil を Queue に渡す
それぞれの Thread が終了するのを join で待つ
21
# ワーカスレッドの開始
def start_tagging_threads
@thread_num.times do
@tagging_threads << start_aws_thread
end
end
# ワーカスレッドの終了
def join_tagging_threads
@thread_num.times do
@aws_queue.enq nil
end
@tagging_threads.each &:join
end
スタートしたスレッドを配列に保持
ワーカスレッドの数だけ nil をキューに送信
ワーカスレッドの終了を join で待つ
第85回Ruby関西勉強会 発表資料 「AWSコスト管理をちゃんとしたくてやったこと」
22まとめ
事業部制はメリットが多い
調整コストの低下、意思決定の迅速化
AWS を事業ごとに管理するのは大変
まずはリソースと事業部を紐づける(直課する)ところから
紐づけを1つずつするのは大変
tsort を使って、連鎖的にタグを自動的に設定する
thread を使ってタグ付け作業を高速化
23
ご清聴ありがとう
ございました

Mais conteúdo relacionado

Mais procurados

ブルックスのいう銀の弾丸とは何か?
ブルックスのいう銀の弾丸とは何か?ブルックスのいう銀の弾丸とは何か?
ブルックスのいう銀の弾丸とは何か?Yoshitaka Kawashima
 
Akkaで分散システム入門
Akkaで分散システム入門Akkaで分散システム入門
Akkaで分散システム入門Shingo Omura
 
Aws amplify studioが変えるフロントエンド開発の未来とは v2
Aws amplify studioが変えるフロントエンド開発の未来とは v2Aws amplify studioが変えるフロントエンド開発の未来とは v2
Aws amplify studioが変えるフロントエンド開発の未来とは v2Koitabashi Yoshitaka
 
クラウドでも非機能要求グレードは必要だよね
クラウドでも非機能要求グレードは必要だよねクラウドでも非機能要求グレードは必要だよね
クラウドでも非機能要求グレードは必要だよねYoshioSawada
 
CloudFormation/SAMのススメ
CloudFormation/SAMのススメCloudFormation/SAMのススメ
CloudFormation/SAMのススメEiji KOMINAMI
 
ピクシブの自作インフラ事情
ピクシブの自作インフラ事情ピクシブの自作インフラ事情
ピクシブの自作インフラ事情Ryuta Kamizono
 
ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』Yoshitaka Kawashima
 
AWS Black Belt Tech シリーズ 2015 - Amazon Kinesis
AWS Black Belt Tech シリーズ 2015 - Amazon KinesisAWS Black Belt Tech シリーズ 2015 - Amazon Kinesis
AWS Black Belt Tech シリーズ 2015 - Amazon KinesisAmazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 Auto Scaling
AWS Black Belt Online Seminar 2017 Auto ScalingAWS Black Belt Online Seminar 2017 Auto Scaling
AWS Black Belt Online Seminar 2017 Auto ScalingAmazon Web Services Japan
 
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)Kazuya Sugimoto
 
Azure API Management 俺的マニュアル
Azure API Management 俺的マニュアルAzure API Management 俺的マニュアル
Azure API Management 俺的マニュアル貴志 上坂
 
Demystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes ServiceDemystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes ServiceToru Makabe
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方Yoshiyasu SAEKI
 
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 FallYoshitaka Kawashima
 
AWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormationAWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormationAmazon Web Services Japan
 
Aws auto scalingによるwebapサーバbatchサーバの構成例
Aws auto scalingによるwebapサーバbatchサーバの構成例Aws auto scalingによるwebapサーバbatchサーバの構成例
Aws auto scalingによるwebapサーバbatchサーバの構成例Takeshi Mikami
 
「なにをどこまでやれば?」OWASP SAMMが導く開発セキュリティ強化戦略
「なにをどこまでやれば?」OWASP SAMMが導く開発セキュリティ強化戦略「なにをどこまでやれば?」OWASP SAMMが導く開発セキュリティ強化戦略
「なにをどこまでやれば?」OWASP SAMMが導く開発セキュリティ強化戦略Riotaro OKADA
 
ストーリーポイントで見積もるということ
ストーリーポイントで見積もるということストーリーポイントで見積もるということ
ストーリーポイントで見積もるということYagi Natsuki
 

Mais procurados (20)

ブルックスのいう銀の弾丸とは何か?
ブルックスのいう銀の弾丸とは何か?ブルックスのいう銀の弾丸とは何か?
ブルックスのいう銀の弾丸とは何か?
 
Akkaで分散システム入門
Akkaで分散システム入門Akkaで分散システム入門
Akkaで分散システム入門
 
Aws amplify studioが変えるフロントエンド開発の未来とは v2
Aws amplify studioが変えるフロントエンド開発の未来とは v2Aws amplify studioが変えるフロントエンド開発の未来とは v2
Aws amplify studioが変えるフロントエンド開発の未来とは v2
 
DevOps with Database on AWS
DevOps with Database on AWSDevOps with Database on AWS
DevOps with Database on AWS
 
クラウドでも非機能要求グレードは必要だよね
クラウドでも非機能要求グレードは必要だよねクラウドでも非機能要求グレードは必要だよね
クラウドでも非機能要求グレードは必要だよね
 
CloudFormation/SAMのススメ
CloudFormation/SAMのススメCloudFormation/SAMのススメ
CloudFormation/SAMのススメ
 
ピクシブの自作インフラ事情
ピクシブの自作インフラ事情ピクシブの自作インフラ事情
ピクシブの自作インフラ事情
 
ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』
 
AWS Black Belt Tech シリーズ 2015 - Amazon Kinesis
AWS Black Belt Tech シリーズ 2015 - Amazon KinesisAWS Black Belt Tech シリーズ 2015 - Amazon Kinesis
AWS Black Belt Tech シリーズ 2015 - Amazon Kinesis
 
AWS Black Belt Online Seminar 2017 Auto Scaling
AWS Black Belt Online Seminar 2017 Auto ScalingAWS Black Belt Online Seminar 2017 Auto Scaling
AWS Black Belt Online Seminar 2017 Auto Scaling
 
Fiberの使いどころ
Fiberの使いどころFiberの使いどころ
Fiberの使いどころ
 
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
 
Azure API Management 俺的マニュアル
Azure API Management 俺的マニュアルAzure API Management 俺的マニュアル
Azure API Management 俺的マニュアル
 
Demystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes ServiceDemystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes Service
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
 
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
 
AWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormationAWS Black Belt Online Seminar 2016 AWS CloudFormation
AWS Black Belt Online Seminar 2016 AWS CloudFormation
 
Aws auto scalingによるwebapサーバbatchサーバの構成例
Aws auto scalingによるwebapサーバbatchサーバの構成例Aws auto scalingによるwebapサーバbatchサーバの構成例
Aws auto scalingによるwebapサーバbatchサーバの構成例
 
「なにをどこまでやれば?」OWASP SAMMが導く開発セキュリティ強化戦略
「なにをどこまでやれば?」OWASP SAMMが導く開発セキュリティ強化戦略「なにをどこまでやれば?」OWASP SAMMが導く開発セキュリティ強化戦略
「なにをどこまでやれば?」OWASP SAMMが導く開発セキュリティ強化戦略
 
ストーリーポイントで見積もるということ
ストーリーポイントで見積もるということストーリーポイントで見積もるということ
ストーリーポイントで見積もるということ
 

Semelhante a AWS のコスト管理をちゃんとしたくてやったこと

コスト削減から考えるAWSの効果的な利用方法
コスト削減から考えるAWSの効果的な利用方法コスト削減から考えるAWSの効果的な利用方法
コスト削減から考えるAWSの効果的な利用方法Aya Komuro
 
Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用
Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用
Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用Daisuke Miyamoto
 
Auto Scaling x Spot Instances によるスケーラビリティと コストカット
Auto Scaling x Spot Instances によるスケーラビリティと コストカットAuto Scaling x Spot Instances によるスケーラビリティと コストカット
Auto Scaling x Spot Instances によるスケーラビリティと コストカットakitsukada
 
AWSコストの事業部別コスト配分について
AWSコストの事業部別コスト配分についてAWSコストの事業部別コスト配分について
AWSコストの事業部別コスト配分についてTomoya Kawanishi
 
JAWS-UG北陸第2回 AWSクラウド最新アップデート
JAWS-UG北陸第2回 AWSクラウド最新アップデートJAWS-UG北陸第2回 AWSクラウド最新アップデート
JAWS-UG北陸第2回 AWSクラウド最新アップデートSORACOM, INC
 
Amazon ECS AWS Fargate あるとき~ ないとき~ (トレノケ雲の会 mod2)
Amazon ECS AWS Fargate あるとき~ ないとき~ (トレノケ雲の会 mod2)Amazon ECS AWS Fargate あるとき~ ないとき~ (トレノケ雲の会 mod2)
Amazon ECS AWS Fargate あるとき~ ないとき~ (トレノケ雲の会 mod2)Trainocate Japan, Ltd.
 
Amazon ECS , AWS Fargate あるとき~ ないとき~
Amazon ECS , AWS Fargate あるとき~ ないとき~Amazon ECS , AWS Fargate あるとき~ ないとき~
Amazon ECS , AWS Fargate あるとき~ ないとき~Mitsuhiro Yamashita
 
Amazon Elastic MapReduce@Hadoop Conference Japan 2011 Fall
Amazon Elastic MapReduce@Hadoop Conference Japan 2011 FallAmazon Elastic MapReduce@Hadoop Conference Japan 2011 Fall
Amazon Elastic MapReduce@Hadoop Conference Japan 2011 FallShinpei Ohtani
 
Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Yasuhiro Horiuchi
 
インフラ系自主トレするならAWS
インフラ系自主トレするならAWSインフラ系自主トレするならAWS
インフラ系自主トレするならAWSYasuhiro Araki, Ph.D
 
スタートアップでのAWS(Amazon Web Services)活用事例
スタートアップでのAWS(Amazon Web Services)活用事例スタートアップでのAWS(Amazon Web Services)活用事例
スタートアップでのAWS(Amazon Web Services)活用事例schoowebcampus
 
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -Yasuhiro Horiuchi
 
AWS Black Belt Online Seminar 2016 クラウドのためのアーキテクチャ設計 -ベストプラクティス-
AWS Black Belt Online Seminar 2016 クラウドのためのアーキテクチャ設計 -ベストプラクティス-AWS Black Belt Online Seminar 2016 クラウドのためのアーキテクチャ設計 -ベストプラクティス-
AWS Black Belt Online Seminar 2016 クラウドのためのアーキテクチャ設計 -ベストプラクティス-Amazon Web Services Japan
 
賢くチェックするAWSの明細
賢くチェックするAWSの明細賢くチェックするAWSの明細
賢くチェックするAWSの明細Kieko Sakurai
 
綱渡りなEc2運用でコスト削減
綱渡りなEc2運用でコスト削減綱渡りなEc2運用でコスト削減
綱渡りなEc2運用でコスト削減Tomoyuki Tochihira
 
Amazon Connectで到着報告を自動化
Amazon Connectで到着報告を自動化Amazon Connectで到着報告を自動化
Amazon Connectで到着報告を自動化Mitsuhiro Yamashita
 
アマゾンクラウドの真価
アマゾンクラウドの真価アマゾンクラウドの真価
アマゾンクラウドの真価kaminashi
 
クラウドTCOの真実
クラウドTCOの真実クラウドTCOの真実
クラウドTCOの真実SORACOM, INC
 
気になる気になるAWSの利用料金
気になる気になるAWSの利用料金気になる気になるAWSの利用料金
気になる気になるAWSの利用料金Kieko Sakurai
 

Semelhante a AWS のコスト管理をちゃんとしたくてやったこと (20)

コスト削減から考えるAWSの効果的な利用方法
コスト削減から考えるAWSの効果的な利用方法コスト削減から考えるAWSの効果的な利用方法
コスト削減から考えるAWSの効果的な利用方法
 
Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用
Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用
Containers + EC2 Spot: AWS Batch による大規模バッチ処理でのスポットインスタンス活用
 
Auto Scaling x Spot Instances によるスケーラビリティと コストカット
Auto Scaling x Spot Instances によるスケーラビリティと コストカットAuto Scaling x Spot Instances によるスケーラビリティと コストカット
Auto Scaling x Spot Instances によるスケーラビリティと コストカット
 
AWSコストの事業部別コスト配分について
AWSコストの事業部別コスト配分についてAWSコストの事業部別コスト配分について
AWSコストの事業部別コスト配分について
 
AWS運用自動化への第一歩 
AWS運用自動化への第一歩 AWS運用自動化への第一歩 
AWS運用自動化への第一歩 
 
JAWS-UG北陸第2回 AWSクラウド最新アップデート
JAWS-UG北陸第2回 AWSクラウド最新アップデートJAWS-UG北陸第2回 AWSクラウド最新アップデート
JAWS-UG北陸第2回 AWSクラウド最新アップデート
 
Amazon ECS AWS Fargate あるとき~ ないとき~ (トレノケ雲の会 mod2)
Amazon ECS AWS Fargate あるとき~ ないとき~ (トレノケ雲の会 mod2)Amazon ECS AWS Fargate あるとき~ ないとき~ (トレノケ雲の会 mod2)
Amazon ECS AWS Fargate あるとき~ ないとき~ (トレノケ雲の会 mod2)
 
Amazon ECS , AWS Fargate あるとき~ ないとき~
Amazon ECS , AWS Fargate あるとき~ ないとき~Amazon ECS , AWS Fargate あるとき~ ないとき~
Amazon ECS , AWS Fargate あるとき~ ないとき~
 
Amazon Elastic MapReduce@Hadoop Conference Japan 2011 Fall
Amazon Elastic MapReduce@Hadoop Conference Japan 2011 FallAmazon Elastic MapReduce@Hadoop Conference Japan 2011 Fall
Amazon Elastic MapReduce@Hadoop Conference Japan 2011 Fall
 
Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013Programming AWS with Perl at YAPC::Asia 2013
Programming AWS with Perl at YAPC::Asia 2013
 
インフラ系自主トレするならAWS
インフラ系自主トレするならAWSインフラ系自主トレするならAWS
インフラ系自主トレするならAWS
 
スタートアップでのAWS(Amazon Web Services)活用事例
スタートアップでのAWS(Amazon Web Services)活用事例スタートアップでのAWS(Amazon Web Services)活用事例
スタートアップでのAWS(Amazon Web Services)活用事例
 
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -
拡がるクラウドの利用用途 - AWSの強みとクラウド活用最新事例 -
 
AWS Black Belt Online Seminar 2016 クラウドのためのアーキテクチャ設計 -ベストプラクティス-
AWS Black Belt Online Seminar 2016 クラウドのためのアーキテクチャ設計 -ベストプラクティス-AWS Black Belt Online Seminar 2016 クラウドのためのアーキテクチャ設計 -ベストプラクティス-
AWS Black Belt Online Seminar 2016 クラウドのためのアーキテクチャ設計 -ベストプラクティス-
 
賢くチェックするAWSの明細
賢くチェックするAWSの明細賢くチェックするAWSの明細
賢くチェックするAWSの明細
 
綱渡りなEc2運用でコスト削減
綱渡りなEc2運用でコスト削減綱渡りなEc2運用でコスト削減
綱渡りなEc2運用でコスト削減
 
Amazon Connectで到着報告を自動化
Amazon Connectで到着報告を自動化Amazon Connectで到着報告を自動化
Amazon Connectで到着報告を自動化
 
アマゾンクラウドの真価
アマゾンクラウドの真価アマゾンクラウドの真価
アマゾンクラウドの真価
 
クラウドTCOの真実
クラウドTCOの真実クラウドTCOの真実
クラウドTCOの真実
 
気になる気になるAWSの利用料金
気になる気になるAWSの利用料金気になる気になるAWSの利用料金
気になる気になるAWSの利用料金
 

Mais de Tomoya Kawanishi

ENECHANGE社での Scout APM 利用事例
ENECHANGE社での Scout APM 利用事例ENECHANGE社での Scout APM 利用事例
ENECHANGE社での Scout APM 利用事例Tomoya Kawanishi
 
エンジニア転職のノウハウ
エンジニア転職のノウハウエンジニア転職のノウハウ
エンジニア転職のノウハウTomoya Kawanishi
 
Ruby の文字列について
Ruby の文字列についてRuby の文字列について
Ruby の文字列についてTomoya Kawanishi
 
Ruby初心者からよく質問されること
Ruby初心者からよく質問されることRuby初心者からよく質問されること
Ruby初心者からよく質問されることTomoya Kawanishi
 
RubyGems と Bundler について
RubyGems と Bundler についてRubyGems と Bundler について
RubyGems と Bundler についてTomoya Kawanishi
 
Ruby の正規表現について
Ruby の正規表現についてRuby の正規表現について
Ruby の正規表現についてTomoya Kawanishi
 
Ruby での外部コマンドの実行について
Ruby での外部コマンドの実行についてRuby での外部コマンドの実行について
Ruby での外部コマンドの実行についてTomoya Kawanishi
 
Ruby のワンライナーについて
Ruby のワンライナーについてRuby のワンライナーについて
Ruby のワンライナーについてTomoya Kawanishi
 
PostgreSQL のイケてるテクニック7選
PostgreSQL のイケてるテクニック7選PostgreSQL のイケてるテクニック7選
PostgreSQL のイケてるテクニック7選Tomoya Kawanishi
 
HTTPと Webクローリングについて
HTTPと WebクローリングについてHTTPと Webクローリングについて
HTTPと WebクローリングについてTomoya Kawanishi
 
Active record query interface
Active record query interfaceActive record query interface
Active record query interfaceTomoya Kawanishi
 
Active Support のコア拡張機能について
Active Support のコア拡張機能についてActive Support のコア拡張機能について
Active Support のコア拡張機能についてTomoya Kawanishi
 
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナーRuby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナーTomoya Kawanishi
 
RubyのDir、File、IO について
RubyのDir、File、IO についてRubyのDir、File、IO について
RubyのDir、File、IO についてTomoya Kawanishi
 
Thread の利用事例紹介
Thread の利用事例紹介Thread の利用事例紹介
Thread の利用事例紹介Tomoya Kawanishi
 
Ruby の制御構造とリテラルについて
Ruby の制御構造とリテラルについてRuby の制御構造とリテラルについて
Ruby の制御構造とリテラルについてTomoya Kawanishi
 
Ruby の String のメソッドについて
Ruby の String のメソッドについてRuby の String のメソッドについて
Ruby の String のメソッドについてTomoya Kawanishi
 
RubyGems と Bundler について
RubyGems と Bundler についてRubyGems と Bundler について
RubyGems と Bundler についてTomoya Kawanishi
 

Mais de Tomoya Kawanishi (20)

英単語の覚え方
英単語の覚え方英単語の覚え方
英単語の覚え方
 
ENECHANGE社での Scout APM 利用事例
ENECHANGE社での Scout APM 利用事例ENECHANGE社での Scout APM 利用事例
ENECHANGE社での Scout APM 利用事例
 
エンジニア転職のノウハウ
エンジニア転職のノウハウエンジニア転職のノウハウ
エンジニア転職のノウハウ
 
Ruby の文字列について
Ruby の文字列についてRuby の文字列について
Ruby の文字列について
 
Ruby初心者からよく質問されること
Ruby初心者からよく質問されることRuby初心者からよく質問されること
Ruby初心者からよく質問されること
 
RubyGems と Bundler について
RubyGems と Bundler についてRubyGems と Bundler について
RubyGems と Bundler について
 
Ruby の正規表現について
Ruby の正規表現についてRuby の正規表現について
Ruby の正規表現について
 
Ruby での外部コマンドの実行について
Ruby での外部コマンドの実行についてRuby での外部コマンドの実行について
Ruby での外部コマンドの実行について
 
Ruby のワンライナーについて
Ruby のワンライナーについてRuby のワンライナーについて
Ruby のワンライナーについて
 
PostgreSQL のイケてるテクニック7選
PostgreSQL のイケてるテクニック7選PostgreSQL のイケてるテクニック7選
PostgreSQL のイケてるテクニック7選
 
HTTPと Webクローリングについて
HTTPと WebクローリングについてHTTPと Webクローリングについて
HTTPと Webクローリングについて
 
Rake
RakeRake
Rake
 
Active record query interface
Active record query interfaceActive record query interface
Active record query interface
 
Active Support のコア拡張機能について
Active Support のコア拡張機能についてActive Support のコア拡張機能について
Active Support のコア拡張機能について
 
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナーRuby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
 
RubyのDir、File、IO について
RubyのDir、File、IO についてRubyのDir、File、IO について
RubyのDir、File、IO について
 
Thread の利用事例紹介
Thread の利用事例紹介Thread の利用事例紹介
Thread の利用事例紹介
 
Ruby の制御構造とリテラルについて
Ruby の制御構造とリテラルについてRuby の制御構造とリテラルについて
Ruby の制御構造とリテラルについて
 
Ruby の String のメソッドについて
Ruby の String のメソッドについてRuby の String のメソッドについて
Ruby の String のメソッドについて
 
RubyGems と Bundler について
RubyGems と Bundler についてRubyGems と Bundler について
RubyGems と Bundler について
 

Último

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 

Último (11)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

AWS のコスト管理をちゃんとしたくてやったこと