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
OpenSearchのデータを Grafanaで可視化して、 自由の翼を授ける
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
katsu
March 24, 2025
0
300
OpenSearchのデータを Grafanaで可視化して、 自由の翼を授ける
katsu
March 24, 2025
Tweet
Share
Featured
See All Featured
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
410
Accessibility Awareness
sabderemane
0
58
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Technical Leadership for Architectural Decision Making
baasie
2
250
KATA
mclloyd
PRO
34
15k
BBQ
matthewcrist
89
10k
Design in an AI World
tapps
0
150
Writing Fast Ruby
sferik
630
62k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
210
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
Transcript
OpenSearchのデータを Grafanaで可視化して、 ⾃由の翼を授ける PHPerKaigi2025 Day1 #TrackB
⾃⼰紹介 名前:Katsu 所属企業:株式会社ウィルゲート 所属チーム:インフラチーム 趣味:ゲーム、読書 PHPerKaigiに初参加初登壇 PHPは趣味で書く
皆さんに質問です
翼欲しいですか?
欲しいですよね?
今回は翼を授ける話です
⽬次 1. 導⼊ 2. アポトルの概要 3. OpenSearchの概要 4. Grafanaの概要 5.
技術選定の理由 6. Grafanaの設定 7. 苦労した点 8. 注意する点 9. 設定した結果
⽬次 1. 導⼊
新規技術を採⽤するとき思いがちな 「可視化するのだるい... 」 大事なのは分かるけど ... コストあまりかけたくない
ある⽇採⽤した新規技術を可視化することになった
今回可視化する対象は 「OpenSearch」 ドーモ。OpenSearch=サン。
実際のプロダクトをもとに説明
宣伝
⽬次 1. 導⼊ 2. アポトルの概要
アポトルの概要 • BtoB セールスツールで、あらゆる機能が「企業を検索する」こと に関連
アポトルの概要 • 企業名や事業‧サービス内容のフリーテキスト検索、業種や所在 地を選択しての検索、従業員数や売上⾼などの数値の範囲検索を ⾃由に組み合わせて検索
アポトルの概要 • ⽇本で法⼈番号を持つ法⼈は約 500 万件の企業が存在
アポトルの概要 • 企業ごとにキーマン情報を取得
リリース当時のアポトルの課題
アポトルの課題 • 検索条件に対応する値をカラムとして持つ 1 つのテーブルに対し て、 MySQLでAND や OR でつなげて検索するイメージ
• 検索条件の組み合わせの最もひどいケースではMySQLサーバーか らレスポンスに 9 分近くかかる
OpenSearchを導⼊した理由は 「検索」が遅かったから うわっ…企業の検索、遅 すぎ…?
⽬次 1. 導⼊ 2. アポトルの概要 3. OpenSearchの概要
OpenSearchって何?
OpenSearchとは 「検索を速くする技術」
導⼊した結果は‧‧‧ 「10倍速くなった!」
導⼊結果 • 画⾯上で 1 つの条件を指定し「検索」ボタンをクリックしてから 結果が表⽰されるまでの時間が13 秒から1 秒に短縮された • 他にも数分間かかる複雑な条件の組み合わせが、1
秒強以内にな り、検索速度が全体的に少なくとも10倍になった 13秒 1秒
ブログ • 詳細はテックブログを参照してください 参考資料 :https://tech.willgate.co.jp/entry/2024/12/07/090000
OpenSearchの構成 • Amazon OpenSearch Service でOpenSearchの環境を構築
OpenSearchの構成 • セキュリティ⾯を考慮し、VPCドメイン(VPC内でのみアクセス可 能)で設定したため、踏み台経由でアクセスしていた
Grafanaの導⼊経緯 • プロダクトのセキュリティも担保し、パフォーマンスは上がった 開発チーム おっ、やったか!? よし、勝ったな 風呂入ってくる
Grafanaの導⼊経緯 • 営業チームが欲しいデータを直接DBから抽出していたり、 OpenSearchに直接クエリ叩いて抽出していた N回
Grafanaの導⼊経緯 • 運⽤⾯の負担が開発チームに重くのしかかっていた 開発チーム
⽬次 1. 導⼊ 2. アポトルの概要 3. OpenSearchの概要 4. Grafanaの概要
Grafanaって何?
Grafanaとは 「データ可視化ツール」
Grafanaの導⼊経緯 • プロダクトの監視でGrafanaを利⽤していた
構成図
⽬次 1. 導⼊ 2. アポトルの概要 3. OpenSearchの概要 4. Grafanaの概要 5.
技術選定の理由
技術選定 機能 可⽤性 セキュリティ コスト 標準のダッシュボード ◎ ◎ △ △
Amazon Managed Grafana 〇 ◎ 〇 × Grafana 〇 △ 〇 ◎
技術選定 機能 可⽤性 セキュリティ コスト 標準のダッシュボード ◎ ◎ △ △
Amazon Managed Grafana 〇 ◎ 〇 × Grafana 〇 △ 〇 ◎
標準のダッシュボードの特徴 メリット • OpenSearchにクエリを投げる、モニタリングする、データをバッ クアップする、権限を管理するなど幅広い操作が可能 • Amazon OpenSearch Serviceの場合、クラスターを作成した時点 で利⽤可能
標準のダッシュボードの特徴 デメリット • 機能が多すぎることで学習コストと運⽤コストが⾼い • インフラ⾯での管理コストは低いが、権限設定や学習コストの⾼ さで、アプリケーション⾯の管理コストが⾼くなる
標準のダッシュボードのユースケース ユースケース • 基本的には標準のダッシュボードがおすすめ • OpenSearchへのアクセスが容易 • 操作する⼈が開発チームのみなど限られている ◦ 権限設定などで考慮する点が少なくなる
技術選定 機能 可⽤性 セキュリティ コスト 標準のダッシュボード ◎ ◎ △ △
Amazon Managed Grafana 〇 ◎ 〇 × Grafana 〇 △ 〇 ◎
Amazon Managed Grafanaの特徴 メリット • マネージドサービスなのでサーバーを管理する必要が無く、管理 コストと運⽤コストは低い • OpenSearchのネットワークの設定やセキュリティ⾯を考慮しなく て良い
• 既にGrafanaを運⽤している場合、学習コストが低い
Amazon Managed Grafanaの特徴 デメリット • ⾃前のGrafanaよりサービス分のコストが⾼い • インフラ⾯のセキュリティリスクは低いが、アプリケーション⾯の セキュリティリスクは⾃前のGrafanaと同じ
Amazon Managed Grafanaのユースケース ユースケース • インフラコストが増えても運⽤コストや管理コストを低くしたい • OpenSearchのセキュリティ⾯を厳しく設定している
技術選定 機能 可⽤性 セキュリティ コスト 標準のダッシュボード ◎ ◎ △ △
Amazon Managed Grafana 〇 ◎ 〇 × Grafana 〇 △ 〇 ◎
Grafanaの特徴 メリット • AWS以外の環境でも使え、移⾏しやすい • 既にGrafanaを運⽤している場合、学習コストが低い • サーバーを管理する運⽤コストは⾼いが、サービス分のコストが 低い
Grafanaの特徴 デメリット • セキュリティ⾯やネットワーク⾯を考慮する必要があるので、実装 に⼯夫が必要 • Grafanaを運⽤していない場合、コスト⾯のメリットはあまり無い
Grafanaののユースケース ユースケース • 既にGrafanaを運⽤している • 運⽤コストや管理コストが増えてもインフラコストを低くしたい
ここまでのまとめ • 特に制約が無い場合 → 標準のダッシュボードがおすすめ • 運⽤コストや管理コストを低くしたい場合 → Amazon Managed
Grafanaがおすすめ • インフラコストを低くしたい場合 → Grafanaがおすすめ
⽬次 1. 導⼊ 2. アポトルの概要 3. OpenSearchの概要 4. Grafanaの概要 5.
技術選定の理由 6. Grafanaの設定
どうやってGrafanaで可視化した?
設定 参考資料 :https://grafana.com/grafana/plugins/grafana-opensearch-datasource/
設定 • 標準のダッシュボードからOpenSearchのインデックス や監視するのに欲しい項⽬を調査し、可視化
設定 • 標準のダッシュボードからOpenSearchのインデックス や監視するのに欲しい項⽬を調査し、可視化 • GrafanaのOpenSearchのプラグインを利⽤
設定 • 標準のダッシュボードからOpenSearchのインデックス や監視するのに欲しい項⽬を調査し、可視化 • GrafanaのOpenSearchのプラグインを利⽤ • OpenSearchのエンドポイントを指定すれば設定完了
⽬次 1. 導⼊ 2. アポトルの概要 3. OpenSearchの概要 4. Grafanaの概要 5.
技術選定の理由 6. Grafanaの設定 7. 苦労した点
苦労した点 • 可視化する話が出た段階でOpenSearchを知らなかった ◦ → 0からキャッチアップ • そもそも何を可視化すれば良いのかが分からなかった ◦ →
サンプルデータを使って、出来る範囲を調査 • VPCドメインで作成し、アカウントもまたいでいるので、ネット ワークの疎通が難しかった ◦ → VPCエンドポイントの設定が必要になった
構成図
⽬次 1. 導⼊ 2. アポトルの概要 3. OpenSearchの概要 4. Grafanaの概要 5.
技術選定の理由 6. Grafanaの設定 7. 苦労した点 8. 注意する点
注意点 • VPCエンドポイントを利⽤する場合、その分だけコストが増える • インデックスの構造が適切でないと正常に表⽰されない場合があ る
⽬次 1. 導⼊ 2. アポトルの概要 3. OpenSearchの概要 4. Grafanaの概要 5.
技術選定の理由 6. Grafanaの設定 7. 苦労した点 8. 注意する点 9. 設定した結果
Grafanaを設定した結果 • 直接DBから抽出したり、OpenSearchに直接クエリ叩く必要がな くなった
Grafanaを設定した結果 • 厳密な権限の管理が不要なので、クエリのミスなど⼈的な事故の リスクがほぼなくなった
Grafanaを設定した結果 • 開発チームに重くのしかかっていた運⽤⾯の負担を取り除き、翼を 授けるに成功
翼を授けることに成功!