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
Datadog_で作る_NW_監視のメリット_デメリット.pdf / Datadog_NW...
Search
komeinw
June 28, 2019
Technology
3
3.4k
Datadog_で作る_NW_監視のメリット_デメリット.pdf / Datadog_NW_Monitoring
komeinw
June 28, 2019
Tweet
Share
More Decks by komeinw
See All by komeinw
kubevirt動かしてみた_npstudy#19 / try_kubevirt_npstudy#19
komeiy
3
1.6k
ここ3年におけるサイバーエージェントのネットワークを取り巻く環境の変化 / cyberagent-adtech-network-for-these-3years
komeiy
11
4.8k
ネットワークエンジニアこそGASを覚えた方がよいと思った話 / network-engineer-gas
komeiy
2
3.6k
OkinawaOpendays2016_ネットワーク運用コード化への取り組み
komeiy
1
1.2k
Interop2016_Mellanox_ca_yamamoto.pdf
komeiy
0
1.2k
Interop2016_SDI_OpenStage-アドテクに必要なSDN_NFV_ca_yamamamoto.pdf
komeiy
0
1.2k
Interop2016_Mellanox_ca_40g_hasegawa.pdf
komeiy
0
1.3k
Interop2016_huawei_ca.pdf
komeiy
0
1.3k
mellanox_switch_shortreview_interop_2015.pdf
komeiy
0
130
Other Decks in Technology
See All in Technology
コスト最適重視でAurora PostgreSQLのログ分析基盤を作ってみた #jawsug_tokyo
non97
1
860
読んで学ぶ Amplify Gen2 / Amplify と CDK の関係を紐解く #jawsug_tokyo
tacck
PRO
1
300
AI 코딩 에이전트 더 똑똑하게 쓰기
nacyot
0
460
Azure Maps Visual in PowerBIで分析しよう
nakasho
0
190
ここはMCPの夜明けまえ
nwiizo
32
13k
AIによるコードレビューで開発体験を向上させよう!
moongift
PRO
0
350
AIエージェント開発手法と業務導入のプラクティス
ykosaka
9
2.7k
テストって楽しい!開発を加速させるテストの魅力 / Testing is Fun! The Fascinating of Testing to Accelerate Development
aiandrox
0
160
Microsoft の SSE の現在地
skmkzyk
0
280
勝手に!深堀り!Cloud Run worker pools / Deep dive Cloud Run worker pools
iselegant
4
620
Simplify! 10 ways to reduce complexity in software development
ufried
1
200
QA/SDETの現在と、これからの挑戦
imtnd
0
220
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
[RailsConf 2023] Rails as a piece of cake
palkan
54
5.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
How STYLIGHT went responsive
nonsquared
100
5.5k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Visualization
eitanlees
146
16k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.8k
How to Think Like a Performance Engineer
csswizardry
23
1.6k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
The Pragmatic Product Professional
lauravandoore
33
6.6k
Producing Creativity
orderedlist
PRO
344
40k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Transcript
Datadog で作る NW 監視の メリット/デメリット ネットワークプログラマビリティ勉強会 #17 サイバーエージェント 山本 孔明
@komeinw
❏ 山本 孔明@komeinw アドテク本部のインフラ組織(SIA)所属のネットワークエン ジニア 兼 責任者 主な業務 • オンプレとパブリックのネットワーク(物理/仮想)
• OpenStack / CircleCI Enterprise • Aritifactory ...etc • チームマネジメント 自己紹介
1998年の創業以来、インターネットを軸に事業を展開し 現在では代表的なサービスである「Ameba」をはじめ、 スマートフォン向けに多数のコミュニティサービスやゲームを 提供しています。 and m ore !! サイバーエージェントについて
サイバーエージェントの事業内容
アドテクスタジオについて インターネット広告において、広告配信の最適化やメディアの収益最大化という観点から アドテクノロジーの重要度が高まっています。 サイバーエージェントではアドテクノロジー分野における これらのサービスについて各子会社を通じ開発しておりましたが、 各サービスの開発部門を横断して組織化する専門部署として アドテク本部・アドテクスタジオが設立されました。
https://adtech.cyberagent.io/aboutus/
サイバーエージェントのアドテク 詳細は「日本一やさしいアドテク教室」を御覧ください! https://adtech.cyberagent.io/pr/archives/3601
まずは NW 監視について整理
ネットワークの監視 • 死活監視 ◦ Management IP への疎通可否 • 性能監視 ◦
トラフィック量 ◦ CPUや電源などハードウェアの状況 • アラート受信 ◦ Active / Standby が入れ替わった ◦ リンクがダウンした • ログ監視 • 外形監視 ◦ BGP ハイジャックの検知 ◦ グローバルからの疎通性と遅延
ネットワークの監視 • 死活監視 ◦ Management IP への疎通可否 • 性能監視 ◦
トラフィック量 ◦ CPUや電源などハードウェアの状況 • アラート受信 ◦ Active / Standby が入れ替わった ◦ リンクがダウンした • ログ監視 • 外形監視 ◦ BGP ハイジャックの検知 ◦ グローバルからの疎通性と遅延 Ping SNMP SNMP Trap Syslog ping / traceroute
ネットワークの監視 • 死活監視 ◦ Management IP への疎通可否 • 性能監視 ◦
トラフィック量 ◦ CPUや電源などハードウェアの状況 • アラート受信 ◦ Active / Standby が入れ替わった ◦ リンクがダウンした • ログ監視 • 外形監視 ◦ BGP ハイジャックの検知 ◦ グローバルからの疎通性と遅延 Ping SNMP SNMP Trap Syslog ping / traceroute 今日はここの話をします
アンケート取らせてください
www.menti.com code: 910052
本題へ
Datadog について • クラウド型のモニタリングツール • Integration が豊富。2019/06時点で280種類以上。 • ダッシュボードのカスタマイズ性が高い •
tag を用いて効率的な分析が可能 • イベントと紐付けて分析が可能
Datadog について • Slack との連携が容易 • API で外部データも投げ込むことができる • Kubernetes
や docker との親和性 • 画面のシェアが容易
Kubernetes との親和性について
Datadog のキホン • キホン的に Agent を入れて監視する ◦ dd-agent をサーバに入れる ◦
yaml で conf を書いて監視 • 足りないものはカスタムメトリクス ◦ 自分で check.d 配下にお手製のプログラムをおけば OK ◦ python OK ◦ yaml で conf を書いて監視 • インテグレーションの活用 ◦ AWS や GCP 連携 ◦ Kubernetes のリアルタイムモニタリング
で、Datadog ってネットワークに監視に使えるの? • SNMP Integration がある ◦ https://docs.datadoghq.com/ja/integrations/snmp/ ◦ ネットワークエンジニアにも馴染みの感じ
◦ 特にカスタムはいらない。つまり yaml を書くだけ ◦ Agent を監視用のサーバにいれて tag で制御 ◦ Zabbix でいう LLD 的なこともできる ◦ インスタンス単位で ip_address のシーケンスの塊を書く 必要がある
yaml 書くのがめんどくさい問題 • Ansible などの構成管理ツール使えば OK ◦ ansible の group_vals
にホストを登録すれば追加できるようにしています ◦ templates に conf ファイルを定義、 for と if を使ってマルチベンダーに対応できる • Monitor の設定が上記でカバーできないので別のツールを使うと良いです。 ◦ https://github.com/codenize-tools/barkdog ◦ https://www.terraform.io/docs/providers/datadog/r/monitor.html
Zabbix の LLD 的なところを • IF-MIB の中の ifTable から ifInOctets
や ifOutOctets などを引っ張ってきている • 左記のように書くと tag は hostname や location などをつけて、さらに interface: <ifDescのvalue> という tag もつくようになる
Dashboard
Dashboard
Dashboard
NW × Datadogで得られる大きなメリット • 全体を俯瞰して見るのがすごく楽 ◦ tag での分析がとにかくいい。スクリーン作るの面倒だな・・からの解放 ◦ Host
Map、TopN など可視化の手段が豊富 ◦ 積算グラフもすごく使いやすい ◦ 変数を使ってリージョンごとなどの単位に切り替えることも可能 • インテグレーションで作り込みを避けられる ◦ AWS の DirectConnect のインテグレーションとか ◦ docker や kubernetes とか ダッシュボードをフル活用すれば「なんか最近エラー出るんだけど、何か起きてます か?」などの障害分析が楽になる。
あれ?Pingは?SNMP Trapは?Syslogは? 基本的にはなんとかできるる。しかも全台に Agent 入れる必要はない。 • Ping ◦ これも代表ホストから fping
を打てば OK ◦ カスタムメトリクスで対応 • SNMP Trap ◦ snmptrapd + snmptt をインストールしたサーバを datadog logs で監視すれば OK • Syslog ◦ rsyslog で受けてそこを datadog logs で監視すれば OK ◦ キーワードで引っ掛けて monitor でアラート通知をする
デモ https://app.datadoghq.com/logs?
ここまで褒めてきたがデメリットの話を
個人的に気になるところ • ポーリング間隔の制御 ◦ min_collection_interval で制御はできる ◦ instance ごとに記載しないといけない •
メトリクスを確認する時に古いものが丸まる ◦ zabbix でいうトレンド設定的なもの • アラートの評価のタイミングに注意 • ログの量によっては Datadog logs の課金が大変なことに ◦ Firewall とか結構ログ吐き出すので気をつけないと・・・
用途に合わせた使いわけ Zabbix と Datadog を併用しています。 • Zabbix ◦ 監視のメイン ◦
SNMP Trap、SNMP Polling、Ping による死活監視 ◦ Auto discovery で登録するので基本は触らないしログインもほぼしない ◦ 物理ネットワーク用で用途ごとに別のものが存在している ◦ 通知は主にこちらから • Datadog ◦ 分析用、開示用 ◦ 何かあれば頻繁にログインしている。サーバの NICの情報も混ぜて取っているので、分析もしや すいし、他のエンジニアにも見てもらえるものになっている。 ◦ 傾向監視なども使っていたが今は利用していない
他の運用周りの話 • 監視・運用系のサーバは VM 2台 ◦ zabbix + datadog agent
+ rsyslog が入った VM ◦ 雑多に docker コンテナが動いている VM • 1台目のサーバは Ansible で全部立ち上がる • docker コンテナは以下のようなものが動いている ◦ バックアップなどの定期ジョブが動く job サーバ ◦ 任意の show コマンドを叩ける bot ◦ netflow や sflow のサーバ • 割とカジュアルに作ったり壊したりできるので環境構築は 楽です
None
広告プロダクトに携わりたい インフラエンジニアを募集しています
ご清聴ありがとうございました