Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
Cloud Foundry
varzの仕組みと収集方法
@u1 http://twitter.com/u1
varzとは
Cloud Foundryの全コンポーネントで共通的に実
装された監視・統計処理のための仕組み
コンポーネント上で自動で立ち上がるweb server
にGETすれば、監視・統計処理のためのデータ
をjsonフォーマットで取得出来...
varzで取れるデータ
大きく二種類
全コンポーネントで共通なデータ
cpu使用率
memory使用量
config
uptime/starttime
core数
ipaddress
コンポーネント毎のデータ
Routerのroutingの統計...
varzで取得出来るコンポーネント毎デー
タの例:
Router v1
requests合計数
bad requests合計数
latency avalage
request/sec
responseのステータスコード毎の合計数(framewo...
varzで取得出来るコンポーネント毎のデータの
例:
DEA v1
DEAのリソース状況
max_memory
reserverd_memory
userd_memory
動作中のinstance数
起動中instance(running_ap...
varzで取得出来るコンポーネント毎のデータの
例:
DEA ng
DEAngのリソース状況
can_stage
reservable_stagers
available_memory_ratio
available_disk_ratio
in...
varzとhealthzを返す仕組み
vcap-commonライブラリのcomponent classを使っ
て実装されている
https://github.com/cloudfoundry/vcap-
common/blob/master/l...
varzのデータの保存方法例:
dea_ng
https://github.com/cloudfoundry/dea_ng/blob/master/lib/de
a/bootstrap.rb#L88
EventMachineのperiodic ...
varzを利用したアプリケーショ
ン
https://github.com/cloudfoundry/collector
varzのデータを収集して、CloudWatch/DataDog等にリレー
するアプリケーション
2011年末から存在はし...
まとめ
Prochain SlideShare
Chargement dans…5
×

Cloud Foundry varz

17 078 vues

Publié le

う゛ぁーず

  • Dating direct: ♥♥♥ http://bit.ly/2F90ZZC ♥♥♥
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • Follow the link, new dating source: ❶❶❶ http://bit.ly/2F90ZZC ❶❶❶
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici

Cloud Foundry varz

  1. 1. Cloud Foundry varzの仕組みと収集方法 @u1 http://twitter.com/u1
  2. 2. varzとは Cloud Foundryの全コンポーネントで共通的に実 装された監視・統計処理のための仕組み コンポーネント上で自動で立ち上がるweb server にGETすれば、監視・統計処理のためのデータ をjsonフォーマットで取得出来る 取れるデータはコンポーネントの揮発性データ 再起動すると初期化される値が多い
  3. 3. varzで取れるデータ 大きく二種類 全コンポーネントで共通なデータ cpu使用率 memory使用量 config uptime/starttime core数 ipaddress コンポーネント毎のデータ Routerのroutingの統計 vcap-servicesの利用ユーザー数 etc...
  4. 4. varzで取得出来るコンポーネント毎デー タの例: Router v1 requests合計数 bad requests合計数 latency avalage request/sec responseのステータスコード毎の合計数(framework毎もあり) 2xx 3xx 4xx 5xx routing dropletsの数 framework毎と合計値の両方
  5. 5. varzで取得出来るコンポーネント毎のデータの 例: DEA v1 DEAのリソース状況 max_memory reserverd_memory userd_memory 動作中のinstance数 起動中instance(running_apps)毎の各種統計情報 uri mem_quota disk_quota fds_quota framework runtime state
  6. 6. varzで取得出来るコンポーネント毎のデータの 例: DEA ng DEAngのリソース状況 can_stage reservable_stagers available_memory_ratio available_disk_ratio instance_registry DEAと同じような項目だが、keyが異なる事に注意 起動中instance(running_apps)毎の各種統計情報は無し
  7. 7. varzとhealthzを返す仕組み vcap-commonライブラリのcomponent classを使っ て実装されている https://github.com/cloudfoundry/vcap- common/blob/master/lib/vcap/component.rb コンポーネントをstartさせた時に自動的にthinで別 ポートで立ち上がっている http://0.0.0.0:port/varz http://0.0.0.0:port/healthz portは指定しなければ、空きポート(Ephemeral port)で立ち上がっ てくる。立ち上がっているポートがどこなのかはnatsで vcap.component.discover requestをすれば、host keyで取得出来る https://github.com/u-ichi/varz-collector 収集サンプルアプリ
  8. 8. varzのデータの保存方法例: dea_ng https://github.com/cloudfoundry/dea_ng/blob/master/lib/de a/bootstrap.rb#L88 EventMachineのperiodic timerを使って、定期的にvarz更新 method(periodic_varz_update)が実行される 初期値では1s毎に更新される https://github.com/cloudfoundry/dea_ng/blob/master/lib/de a/bootstrap.rb#L715 変数の値をVCAP::Component.varzに格納
  9. 9. varzを利用したアプリケーショ ン https://github.com/cloudfoundry/collector varzのデータを収集して、CloudWatch/DataDog等にリレー するアプリケーション 2011年末から存在はしていたが、2013/03ぐらいから再度開 発が再開 https://github.com/cloudfoundry/collector/graphs/code-frequency 動かしたことありません。。。 各コンポーネント毎の収集データ対象一覧 https://github.com/cloudfoundry/collector/tree/master/lib/collector /handlers
  10. 10. まとめ

×