117 Views
December 02, 24
スライド概要
Zabbix Conference 2024での講演資料(2024/11/21)です。6月にリリースされたばかりのZabbix 7.0について、自社での構築事例紹介です。DR観点よりデータセンタ間冗長(L3冗長)構成を実現しましたが、「設計」「構築」「運用」について振返り、当社での気づきを共有しました。
1997年の設立以来、動画配信を主軸に事業展開。コーポレートメッセージ「もっと素敵な伝え方を。」を掲げ、テクノロジーを通じて世の中のコミュニケーションをよりよくすることを目指しています。 自社で保有・運営する独自のコンテンツ配信ネットワーク(CDN=Content Delivery Network)を活用した動画配信に加え、長年のノウハウを活かした動画の企画・制作・運用やWebサイト制作、システム開発、動画広告による収益化支援まで総合的なサービスとソリューションを提供。取引実績はメディア、大手企業をはじめ年間1,200社・10,000案件以上です。手がける技術領域は、ネットワークの物理層からアプリケーション層にわたり、日本屈指の大規模配信や最先端案件の実績も多数あります。 エンジニア向けオウンドサイト「Voice」公開中! https://voice.stream.co.jp/
Zabbix Conference Japan 2024 オンプレ環境でのZabbix7.0: 構築内容と気づきの共有 小山 拓海 2024/11/21(木)
自己紹介 小山 拓海(コヤマ タクミ) 株式会社Jストリーム • ネットワークインフラ部 ネットワークインフラ課 • 2018年、株式会社Jストリームに入社 業務内容 • 基盤ネットワーク・サーバインフラの設計・構築 Zabbix Conferenceは2回目の登壇です。 • 2020年にも登壇しました。 業界のつながりを広げたく参加致しました • 名刺いっぱい持ってきました。ぜひ交換してください。 2
会社紹介 www.stream.co.jp www.stream.co.jp 動画配信 サービス 株式会社Jストリーム(AS24253) Jストリームは1997年の設立以来、動画配信を主軸として事業展開を続けております。 自社で保有・運営する独自のコンテンツ配信ネットワーク(CDN)を活用した動画配信に加え、 これまで積み上げてきたノウハウを活かした動画の企画・制作・運用から、Webサイト制作、 システム開発、動画広告による収益化支援まで、総合的なサービスとソリューションを提供し、 企業のマーケティングやコンテンツビジネスなどを支援しております。 設立 1997年5月 証券コード 4308(東京証券取引所 グロース市場) 運用 サポート コンテンツ配信 ネットワーク (CDN) 制作( Web/ 映像 )・ 開発 本社:105-0014 東京都港区芝二丁目5-6 芝256スクエアビル6階 西日本オフィス:530-0003 大阪府大阪市北区堂島2-4-27 JRWD堂島タワー5階 資本金 21億8,237万円 (2023年12月末現在) 3
登壇趣旨 ①事例共有:オンプレ環境でZabbix7.0の構築・移行の苦戦 • リリースされてすぐのため、導入企業様はわずか • 当社の事象が少しでも、皆様のお役に立てば ②情報収集をしたい • 各企業様での構成について ・ 機器の監視以外の利用用途 ご意見・ご質問等のコメント投稿、お願いします! 4
• 今回のお話は、あくまでも移行プロセスの一事例です • Zabbix7.0での稼働・本格運用は、これからです 5
本日の目次 • はじめに(自己紹介、会社紹介、登壇趣旨) • 移行概要 • 移行の背景 • 構築内容(設計、構築、運用) • まとめ • 終わりにかえて 6
移行概要 7
移行概要 データセンタ間冗長(L3で冗長)構成 ●現在はオンプレで構築した Zabbix7.0へ環境移行中 • Zabbix Server : 2台 → リプレース完了 • Zabbix Proxy : 9台 → リプレース完了 • 監視対象 : 900台(2024年11月現在) ●監視環境の見直し • 初期テンプレートを使わず、カスタマイズ したテンプレートの利用 • 使用するDB変更 • Zabbix Agentのバージョンアップ (5.0→7.0へ) → 移行中 : 314台完了 • アイテム数 : 185,795個(2024年11月現 在) → 移行中 : 78,300個完了 8
最終構成 ©J-Stream Inc. All Rights Reserved. 9
移行の背景 10
以前の構成(2020年登壇資料より) 同データセンタ内 11
4つの問題点 データセンタA サーバA サーバB 問題❷ フェイルオーバー ができない! 問題❶ 問題❹ Zabbix Server 担当外のアラート受信 が多い FWのメンテナンス・回線 トラブルで監視が止まる インターネット 問題❸ 監視ノードの閾値や設定が 統一されていない 各ノード 各ノード 各ノード 各ノード データセンタB データセンタC データセンタE データセンタD 12
Zabbixリプレースプロジェクトを発足 ●2023年4月~、プロジェクトメンバー : 3名 【プロジェクトにかけるメンバーの想い】 ① リプレースにあわせて拠点を跨いだ冗長構築 ② 構築を機に監視項目も綺麗に! ③ 監視範囲も見直しを(誰の責任かキチンと定義) 13
構築内容(設計) 問題①②について 14
要件定義(構築) 問題 課題 ①FWのメンテナンス・ 回線トラブルで監視が止まる ① 1拠点のネットワーク断は 許容し、監視をとめない ②フェイルオーバーができない! ②DB切替により、 瞬時にフェイルオーバーさせる 15
採用した構成 ●DC間冗長でクリアすべき課題 • 異なるネットワーク(データセンタ間)で Internet ▪ 冗長化ができるか ▪ DBがスムーズに切り替わるか ロードバランサ データセンタA データセンタB Web Server DB Server 16
構築内容 問題①②について 17
最終構成 ©J-Stream Inc. All Rights Reserved. 18
Zabbixの冗長化 Web(PHP) ①DBに現在Activeな Zabbix ServerのIPを 問い合わせ ②Active側IP にアクセス IP: 198.51.100.20 IP: 203.0.113.20 Zabbix Server Zabbix Server Zabbix Server 現在のActiveは198.51.100.20 DB ©J-Stream Inc. All Rights Reserved. 19
Webの冗長化 DNSによる負荷分散 GSLB(広域負荷分散装置) GSLB(広域負荷分散装置) ユーザ ヘルスチェック IP: 198.51.100.10 GLSBを用いて Active-Activeの分散 IP: 203.0.113.10 Web(PHP)) Web(PHP)) IP: 198.51.100.20 IP: 203.0.113.20 Zabbix Server Zabbix Server データセンタ A データセンタ B DB ©J-Stream Inc. All Rights Reserved. 20
DBの冗長化(当初想定) ©J-Stream Inc. All Rights Reserved. 21
DBの冗長化(最終) ©J-Stream Inc. All Rights Reserved. 22
DBの選定 Before After データセンタ間冗長なし データセンタ間冗長あり MySQL ©J-Stream Inc. All Rights Reserved. PostgreSQL(ストリーミングレプリケーション) + Pgpool-II 23
構築内容(運用) 問題③④について 24
要件定義(運用) 問題 課題 ③監視ノードの閾値や設定が 統一されていない ③自社の監視項目が不明確 ④担当外のアラート受信が多い ④あいまいな監視体制 25
③自社の監視項目が不明確 Before:Zabbix Server5.0時 After:Zabbix Server7.0新体制 テンプレートにある項目が すべて発報する運用 ll 利用用途外のアラート増加 自社に必要な監視項目の洗い出し ll 必要な閾値のみをカスタマイズし、 最適化 26
④あいまいな監視体制 Before:Zabbix Server5.0時 アプリケーション インフラ (NW、サーバ) ミドルウェア After:Zabbix Server7.0新体制 アプリケーション + ミドルウェア インフラ (NW、サーバ) 別ツール Zabbix 27
その他の気づき 28
その他の気づき①:導入・運用作業の大幅な工数削減 工数を大幅削減 Before:Zabbix Server5.0時 Ansibleによる自動一括登録 After:Zabbix Server7.0新体制 ひとつひとつ設定。。。 自動で一括登録 サーバ設定 ×サーバ台数 ブラウザ ×サーバ台数 ホスト ×サーバ台数 テンプレート ×サーバ台数 グループ ×サーバ台数 ・ ・ サーバ設定 ブラウザ ホスト テンプレート グループ ・ ・ 一括登録 29
その他の気づき②:Zabbix Proxy7.0で新規構築 ●Zabbix ServerとZabbix Proxyはバージョンを合わせる必要がある • 5.0で稼働していたため、7.0で作り直した Zabbix Server 定期的なポーリング リクエスト Zabbix Proxy 定期的なポーリング リクエスト Zabbix Agent 30
その他の気づき③:移行中のヒヤリハット共有 ●構築に集中しすぎて…コミュニケーション不足で移行が宙に浮く危機 →個々が、各自の業務のその先を意識することが大切 ●CPUがパンクの危機! 原因は集中的なホスト登録 →CPUの確認・割当ては、こまめな実施がオススメ 31
まとめ データセンタA データセンタB Zabbix Server Zabbix Server 各ノード 問題❹の解決 アプリとインフラの 監視範囲を明確にした インターネット 問題❷の解決 問題❶の解決 PostgreSQLに変えた データセンタ間冗長をした 各ノード 各ノード 各ノード データセンタC データセンタE データセンタD 問題❸の解決 テンプレートを作り直し 監視を標準化した 32
終わりにかえて 設計をイチから作る作業は、正直とても大変でした。 でも、想像をはるかに超える貴重な経験と気づきがたくさんありました。 時間との闘いや不安もありますが、今後、 多くの企業様でもZabbix7.0へのチャレンジが進むことを願っております。 (その際はぜひまた情報交換させてください!) 33
ご清聴ありがとうございました 34