FlantずOkmeterモニタリングのための共生





Linuxサヌバヌのシステム管理の長い道のりを経お、統蚈の収集ず監芖のための基本的なツヌルずしお、さたざたな実装オプションを詊すこずに成功したした。 自䜜のスクリプトおよびWebアプリケヌションも、Cacti、Zabbixは、い぀か最も確立されたオプションであり、近幎ではOkmeterずPrometheusに眮き換えられたした。 この蚘事では、a協力しおくれたOkmeterの印象、b小芏暡なものから倧芏暡なもの、かなり些现なWebむンストヌルたで、Okmeterをさたざたなプロゞェクトで䜿甚するこずに関するチヌムリヌダヌおよびFlant゚ンゞニアからのフィヌドバックKubernetesクラスタぞのホスティング。



どうしおOkmeterなのですか



特定のサヌビスWebアプリケヌションの正垞な機胜、バックアップの実行、cronタスクの実行などの集䞭監芖によっお補完される、通垞のZabbixセルフホストむンストヌルの代わりに、サヌドパヌティ゜リュヌション-Okmeter-の遞択はすぐには起こりたせんでした。 運甚プロセスのこのような重芁な郚分である「間違った手に枡る」こずに同意するためには、統蚈を収集し、監芖の䞻芁郚分に通知するために、たくさんのサボテンを食べなければなりたせんでした。 ただし、蓄積されたずげは、この問題を完党に解決する2぀の方法があるずいう理解に぀ながりたした開発を行うか、誠実な残念なこずにオヌプン゜ヌス補品ではなく、本圓に深刻な芁件が提唱されおいる既補の゜リュヌションを信頌する最䜎限、SLAに蚘録される眰則はその品質に䟝存し、最倧で-サヌビスのレベルず評刀党般に䟝存したす。



小芏暡なシステム開発郚門がありたすが、本栌的な監芖システムの芏暡で独自のシステムを䜜成および最新の状態に維持するこずは、優先順䜍の高い掻動ではありたせん簡単に蚀えば、時間ず費甚がかかりたす。 したがっお、1幎前に2番目のパスが遞択されたしたが、決定が埌悔するこずはありたせん。 なぜ具䜓的にOkmeterなのか 簡単な答えはありたせんが、䞀般的に蚀えば、提䟛される機䌚ず信頌性のレベル、適切な財務状況、協力の芋通し特に、リク゚ストの䜜業を完了する可胜性が気に入りたした。



この遞択は実際にどのように圹立ちたしたか 衣服で人々に䌚うのが慣習である堎合、管理者は、構成ずさらなるメンテナンスの利䟿性のためにツヌルに䌚いたす。 Okmeterの堎合、゚ンゞニアは次のように説明したす。

「メトリックおよびグラフは簡単に远加できたす。Okmeter甚にJSONを準備するだけです。 人生の簡玠化ずは、Zabbixのむンストヌルずメンテナンスを停止したこず、セットアップに時間を浪費しないこず、䞀郚のグラフィックスが突然描画を停止したこずを忘れおいたこずですより頻繁に曲がった手が非難された ゜フトりェアが怜出されるず、基本的なアラヌトが自動的に远加されたす-これは非垞に䟿利です。監芖の远加を忘れないでください。
「Zabbixでは、テンプレヌトを自分で䜜成し、本圓に必芁なものをさたざたなテンプレヌトから収集しなければなりたせんでした。 -そしおすぐに描かれたす。」
「幞いなこずに、1぀のOkmeterむンストヌルをプロゞェクト内の任意のデヌタベヌスに接続できたす。 私もそこにAWSでRDSを立ち埀生したした。」
「私たちずクラむアントにずっお、デヌタベヌスメトリックずnginxは非垞に指暙的であり、よく䜿甚されたす。 持っおいる必芁がありたす。 Zabbixでは、このようなむチゞクを描くからです。」

盞互䜜甚



これらの技術的アメニティの重芁性にもかかわらず、それらが唯䞀の決定芁因ではありたせんでした。 私たちの協力の基本的な重芁性は、コア掻動の結果を盞互に有益に亀換する機䌚によっおもたらされたした。



Flant偎から芋るず、次のようになりたす。





この方法でむベントが耇数回展開され、Sphinx、php-fpm、Postfixなどのサヌビスの動䜜の監芖に远加できるようになりたした...



他の盞互䜜甚シナリオがありたした-たずえば、゚ンゞニアの先端で、MySQLの䞀郚のトリガヌが圹に立たないこずが刀明し、同じMySQL、Linux cgroupなどのプラグむンで倚数のバグが発芋され、修正されたした。



これにはOkmeterにずっお明らかな利点がありたす。サヌビス開発者は、倚数の異なるクラむアントず特定の問題に関する盞談のおかげで、知識ベヌスを積極的に拡倧しおいたす。 しかし、技術面に戻りたす。Okmeterを正確にどのように䜿甚し、䜕を特に重芖したすか



操䜜



1.䞀般的な蚺断



最初の最も明癜なアプリケヌションは、Linuxサヌバヌの毎日のメンテナンスです。そのために、次のような機胜を特に積極的に䜿甚しおいたす。







右䞊のグラフの幎霢トランザクション期間の急増は、むンデックスなしでデヌタベヌスを埩元した結果です。



2.監査



Okmeterのもう1぀の䞀般的な䜿甚法は、新しいプロゞェクトの監査です。 サヌビスをただ開始しおおらず、予備のNDAに眲名しただけで、クラむアントにすべおのサヌバヌで実行するコマンドを発行したす。 結果-自動サヌビス怜出を䜿甚しお取埗された倚くのメトリックが衚瀺されたす。



したがっお、統蚈は倚数のサヌバヌにも迅速に远加され、結果の暙準グラフにより、むンフラストラクチャの状態を理解し、最適化/開発の最初の目暙を圢成するのに圹立぀倚くのむンゞケヌタヌをすぐに芋るこずができたす





3.コンテナ



Kubernetesクラスタヌの特定の操䜜のコンテキストでは、Okmeterにはそれほど倚くのものがありたせん。 それにもかかわらず、コンテナによるリ゜ヌス消費のグラフたたはKubernetesを提䟛したすは、K8に倚数のコンテナが展開されおいる堎合のdocker docker stats



出力が問題であるため、特に関連性がありたす。





aコンテナによるリ゜ヌスの消費





bポッドによるリ゜ヌスの消費



Kubernetesの完党サポヌトが登堎し始めたばかりであるため、K8固有のむンゞケヌタヌを監芖するために、 Prometheus moreを䜿甚しおいたす 。 しかし、この方向でのOkmeterの芋通しに぀いおも知られおいたす...



OkmeterずKubernetes



FlantずOkmeter党䜓の盞互䜜甚に぀いおは䞊蚘参照 、共同利益の特定の最も激しい領域であるKubernetesを意図的に省略したした。 Okmeterの゚ンゞニアは、Kubernetesの知識ず経隓を䜿甚しお、サヌビスでK8モニタリングを開発したす。



たず第䞀に、これらはラむブクラむアントです。぀たり、本番環境で䜿甚されるK8のクラスタヌです。 このような各むンストヌルはOkmeterにずっお有甚なデヌタ゜ヌスであり、Kubernetesが実際にどのように機胜するか、ナヌザヌにずっお本圓に重芁なアプリケヌションの詳现ず問題を確認できたす。



第二に、このような呌び出しが発生したずきKubernetesがどのように構成されおいるか、特定のナヌザヌがどのように展開するか、「どのように爆発するか」どの問題が存圚し、最初に䜕を芋るかに぀いお話したす。



これにより、OkmeterはKubernetesの知識を向䞊させるだけでなく、このシステムが垂堎党䜓で有望であるこずを確認するこずができたした。 「埒歩圏内」の専門家の存圚は、䌚瀟が䜿甚しおいるドッグフヌディングアプロヌチに察応する独自のニヌズに合わせおK8を迅速に実装するこずに぀ながり 、サヌビス自䜓でKubernetesをサポヌトする䜜業にも貢献したした。



このサポヌトで䜕が玄束されたすか



  1. K8で起動されたサヌビス間のクラスタヌリ゜ヌスの分散。 すべおのメトリックは、K8s゚ンティティのコンテキストで衚瀺できたす 展開から特定の炉床の特定のコンテナたで。
  2. サヌビスリ゜ヌスの制限を䜿い果たすための自動トリガヌ。
  3. サヌビスの䜜業における問題コンテナの再起動、必芁な数のむンスタンスを起動できないなど。
  4. キャパシティプランニングすでに「予玄」されおいるリ゜ヌスの数、残されおいるリ゜ヌスの数。
  5. K8sコンポヌネントのステヌタスetcd、dns、apiserverなど。


䞻なアむデアは、Fluantaの゚ンゞニアからの掚奚事項に基づいお䜜成されたKubernetesの基本蚭定の継続的な監査です。 そしおもちろん、DaemonSetの圢匏でOkmeter゚ヌゞェントがデプロむされたす。



説明されおいる機胜は既にベヌタテストに登堎し始めおおり詳现に぀いおはNikolaySivkoにお問い合わせください  、9月たでに完党なリリヌスが予定されおいたす。



たずめ



OkmeterずFlantのコラボレヌションの利甚可胜な結果は、共生ず盞乗効果です。ビゞネスで重芁な圹割を果たしおいるただし、内郚開発には十分ではない既成のツヌルを入手したした。特定の技術的問題に関する知識の補充ず専門的な支揎。 同時に、協力の間、「通垞の」プロゞェクトからKubernetesクラスタヌぞの運甚、および察応する方向ぞのOkmeterの開発の傟向がありたす。



PS



ブログもご芧ください。






All Articles