Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Rancher2.0のコンテナ間通信を可視化してみた

1,454 views

Published on

Traffic Visualization With Rancher 2.0

Published in: Internet
  • Be the first to comment

Rancher2.0のコンテナ間通信を可視化してみた

  1. 1. Rancher2.0のコンテナ間通信 を可視化してみた @Clorets8lack
  2. 2. 可視化の仕組み 2 Rancherサーバにコンテナをデプロイし、docker0(仮想ブリッジ)を 経由するコンテナ間通信をパケットキャプチャで可視化する コンテナA コンテナB Docker0 RancherServer パケットキャプチャ
  3. 3. 使うコンテナ AdminerとMySQLのコンテナをデプロイし、WEBアプリっぽい環境 を作ってみた。
  4. 4. Kubernetes通信? (…まだよく分かってないので割愛) 4 多分研究すれば何かが分かる…はず
  5. 5. 5 MySQL通信 ローカルループバックでの キャプチャと比べ、アドレスがわかり やすい (コンテナのいいところ) イーサネットの容量に制約されない プロセス間通信
  6. 6. 6 SQLクエリも見える イキフン チリバツ
  7. 7. パケットにフィルタをかけて Syslogサーバにエラーメッセージを出力してみる 7 例: tshark -i docker0 -Y "mysql.error_code == 1213" -T fields -e mysql.error.message -l > /dev/udp/syslogサーバのIPアドレス/514 ←キャプチャインタフェースを指定 ←任意のフィルタ ←出力文字列の指定 ↑SyslogサーバのListenポートへ リダイレクトで突っ込む
  8. 8. パケットキャプチャで出来ること ● 障害切り分け ○ どのクエリがどんなエラーを吐いたか? ○ どこが遅いのか? ● サイジング ○ コネクション数 ○ O/Rマッパ,RESTAPIのリクエスト(作りの良し悪しも) ● 対策、再発防止 ○ 警告、監視の実装が容易 ○ 結果的にPDCAを高速で回せる
  9. 9. なぜ今コンテナなのか? 9 ● サーバの機能を分離しやすい(WEBとDBなど) ● Socket通信の使用が前提(VMでは設定変更が必要) アプリケーションに影響を与えずに、 プロセス間通信を監視できる環境が整っている ※個人の見解です
  10. 10. 大事だと思うもの 10 可視化から始めよう
  11. 11. 11 プロダクトが安定しない… これじゃ使えない… そうではない 品質とは、問題と誠実に向き合い、愚直に作り込むもの 講談社コミックス しげの秀一著 『頭文字D』より引用 味わい深い
  12. 12. お前誰よ 12 @Clorets8lack 同人誌販売中です。 (1000円) http://develup-japan.co.jp/wp/works/pcapbook001_in troduction/ Docker上でパケット解析と 警告実装を行うクックブック パケットキャプチャ大好き 情シス出身 普段は深層学習とかがお仕事
  13. 13. 13 講談社コミックス しげの秀一著 『頭文字D』より引用 雑コラ作りが趣味です
  14. 14. 14 Blog: http://cloretsblack.hatenablog.com/ スライド: https://www.slideshare.net/cloretsblack ツイッターとかブログとかやってます Twitter: @Clorets8lack

×