2024.12.10
“放置系”なのにサイバー攻撃を監視・検知、「統合ログ管理ツール」とは 最先端のログ管理体制を実現する方法
リンクをコピー
記事をブックマーク
司会者:質問してくれている人がいますね。質問者さん、マイクをオンにしてもらって。
質問者:はい。発表ありがとうございました、メッチャおもしろかったです。
相原魁氏(以下、相原):ありがとうございます。
質問者:Observabillityをとりあえずやってみようとなった場合は、Prometheusを使ってみるのが一番簡単ですか?
相原:簡単という点でいったら、Prometheusの場合はMetricsを収集してくれるPrometheusのサーバを自分で用意しないといけなくなってしまうので、ちょっとハードルが高いです。ただ、最近GCPが、フルマネージドのPrometheusのサーバをサービスにしてくれたので、それを使うことでだいたい感覚はわかりそうです。
趣味であれば「Datadog」のようなSoftware as a Serviceを使うと、Prometheusのサーバに相当するものが簡単に手に入るので、そういうものでもいいかもしれません。
質問者:ありがとうございます。あともう1個あって、先ほどもトレーシングやMetricsのを見せてもらいましたが、可視化をしてMySQLの例で遅くなっているから調べ始めたという話だったと思いますが、アクションを始めるルールは決めておくものですか?
相原:そこはチームごとにがんばって文化を作らなければいけない部分です。我々のチームだと、相当大事な仕事をしていない限りは、通知を受け取った瞬間に即時に調査するルールにしていたりします。
だいたいSlackの通知で異常を検知できるようにしてあるので、そのSlackの通知を受け取った後にチームとしてどう動くかはわりと組織の話というか、チーム内でがんばってルールを決める感じになります。こういう話で合っていますかね。
質問者:ありがとうございます。以上です。
相原:これは大変ですね。深夜に問題が起きた時にどうするのかとかは、会社との契約の話にもなってきます。
質問者:ちなみに、それを知るためのことは、Slackに通知などで自動化することが多いですか。
相原:そうですね。実際にPrometheusとほとんど同じような開発者が、Prometheusと一緒に使うための「Alertmanager」というソフトウェアを開発しています。Prometheusには「Metricsがこうなったらアラートをする」という機能が組み込まれています。
Prometheusのアラートにする情報をアラートマネージャーというソフトウェアから受け取って、Slackなどのチャットサービスに通知するという機能をPrometheusコミュニティで全部用意してくれているので、それらを全部使ってSlackに通知するところまでは作っておくというような感じです。
質問者:通知する部分は自前でやる感じですか?
相原:そうですね。どういうルールを作るかは、大量のルールを経験のあるSREがたくさん用意して、Slackに通知されるようにしておくという感じですね。
質問者:ありがとうございます。
相原:「サービス初期のKubernetes使用サービスでは、どのようなロギング観点がありますか?」ということですが、このサービスがWebのアプリケーションだった場合、特にKubernetes特有のものというのはないです。
ただ、サービス初期から「あれは必要だろう」「これも必要だろう」とたくさんのロギングを実施しておくと、先ほど話したように、ログの保存のコストは高いので、あまり好ましくありません。実際にサービスを動かして運用をとおしていった上で、「ああ、じゃあこういう情報が必要だよね」と、後から必要な情報を足していくほうが失敗はしづらいと思います。
もちろん、経験があるエンジニアであれば、「だいたいこのくらいものが必要になるでしょ」と最初から用意できると思いますが、サービス初期という特有の事情であれば、最初からあまりたくさんのログを出し過ぎないというのは気をつけておいたほうがいいかもしれないです。
相原:「ロギングとMetrics、トレーシングを全部やるのが大変だから、まずはMetricsだけみたいなこともありですか?」という質問です。ありがとうございます。
これはあまりおすすめはしていなくて。先ほど話したように、これらはすべてそれぞれ補完し合う関係にあるので、できれば全部一遍に欲しいです。どれか1つを外すのであれば、トレースだけは外してログとMetricsだけはやるのが、よくある妥協の仕方かなと思います。
ただ一方で、先ほど話したように、OpenTelemetryのSDKを入れるだけで、Metricsとトレースの出力は完了します。あとはこれを入れるだけで大まかなトレースの収集も終わってしまうので、がんばってOpenTelemetryのSDKを入れた上で、必要最低限のロギングをしておくだけでも、可観測性は十分になります。
一方で、これだけだとMetricsは足りなかったりするので、それはそれぞれのメソッドに従って徐々に付け足していきます。トレースに関しても、OpenTelemetryのSDKによって導入ができるのはHTTPのクラアイントやDBのクライアントに対してなので、外部のI/Oだけです。
本当はI/Oを伴わない部分のトレースも考えないといけないのですが、それは別に後からでいいので、大変だとは思いますが、ログとOpenTelemetryのSDKの導入まではやっておくといいと思います。
これは導入はすごく簡単で、言語ごとのSDKを導入して、READMEに従って設定するだけなのでやっておきたいかなという感じです。
将来はログのサポートも入るみたいなので、将来的にはもうOpenTelemetryを入れるだけで全部が、すべてが済む世界観が実現されると思います。
司会者:ありがとうございます。では、せっかく準備されたので、おまけのところで伝えたいことがあれば。
相原:ちょっと重たい話なので、興味があれば、SlideShareからおまけも読んでもらえるといいと思います。
(スライドを示して)このプロファイリングはPrimary Signalsに追加されるもう1つのシグナルとして最近注目されている概念で、今後重要になってくると思うので、このあたりも追っておくと可観測性のさらに次の一歩に踏み出せると思います。興味がある方はぜひご覧ください。
司会者:ありがとうございます。あらためて読み返してもらったり、おまけのところもぜひ見てもらえればと思います。では、最後に一言コメントをいただいて終わりますか。
相原:おまけに書いておいたのですが、我々が作っている内製PaaSの「KEEL」は、このような可観測性に関して考えて、開発者に対して環境を提供するみたいなことをやっています。2023年卒のエンジニア採用の話ではありませんが、興味がある方はお待ちしていますので、ぜひお越しください。では、今日はご清聴いただきありがとうございました。
司会者:ありがとうございました。
関連タグ:
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
2024.12.09
10点満点中7点の部下に言うべきこと 部下を育成できない上司の特徴トップ5
2024.12.09
国内の有名ホテルでは、マグロ丼がなんと1杯「24,000円」 「良いものをより安く」を追いすぎた日本にとって値上げが重要な理由
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
2024.12.10
職場であえて「不機嫌」を出したほうがいいタイプ NOと言えない人のための人間関係をラクにするヒント
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.06
嫌いな相手の行動が気になって仕方ない… 臨床心理士が教える、人間関係のストレスを軽くする知恵
PR | 2024.11.26
なぜ電話営業はなくならない?その要因は「属人化」 通話内容をデータ化するZoomのクラウドサービス活用術
2024.12.11
大企業への転職前に感じた、「なんか違うかも」の違和感の正体 「親が喜ぶ」「モテそう」ではない、自分の判断基準を持つカギ
PR | 2024.11.22
「闇雲なAI導入」から脱却せよ Zoom・パーソル・THE GUILD幹部が語る、従業員と顧客体験を高めるAI戦略の要諦