JFrogのログ分析を弹性で

DevOpsチ,ムはユニバ、サル、バ、ナリ、リポジトリマネ、ジャ、としてArtifactoryを利用していますが,その運用監視は困難な場合があります。複数の高可用性ノ,ドとx射线をJFrog DevOpsプラットフォ,ムとして統合することで運用デ,タはJFrogプラットフォ,ムの各サ,ビスのログに分散されます。

運用チームはリアルタイムのデータマイニングとプラットフォーム監視で得られる貴重なデータの分析を必要としています。以前のブログJFrogのログ分析をSplunkでにて初めてご覧になった方もいるかもしれません。

この機能をより広範囲に利用できるようにするため,JFrogはこの機能を弹性堆栈のユ,ザ,に拡張し,ElasticsearchとKibanaの統合を行いました。

Elasticsearchは分散型でスケーラブルな検索エンジンで全文検索,構造化テキスト検索,アナリティクス検索などに利用できます。大量のデタを検索する場合はもろん,さまざまな種類の文書を検索する場合にも利用されています。

KibanaはElasticsearchの可視化とダッシュボ,ドとして一般的に導入されています。Kibanaを使用した場合,ビルドの可視化やダッシュボードを使ってWeb UIからElasticsearchのログデータを検索することができます。

オ,プンソ,スのログ分析テクノロジ,を活用する方法をご紹介します。弹性、Fluentd Kibanaを活用し,運用チームが価値ある情報を得るための無償のオープンソース・ログ分析プラットフォームを提供します。

流利の使用

まず,JFrog上のオ,プンソ,スのデ,タコレクタであるFluentdをElasticsearchとKibanaの統合で利用できるようにしました。FluentdはJFrogプラットフォームの各製品に対するログ入力,フィールドの抽出,レコードの変換を行い,このデータをJSONに変換します。

すべてのログデータを共通フォーマットで利用できるため,Fluentdはプラグインを介して,お客様が選択したElasticsearchにログデータを送信します。

Fluentdのンストル

各JPDノドにFluentdロギングエジェントをンストルする必要があります。このエージェントは様々な詹妮弗ログファイルを処理し,新しいログ行を解析後,対応するレコードに変換し,Fluentdの関連する出力プラグインに送信する役割を持っています。

各ノドにFluentdエジェントをンストルするにはFluentdンストルガドに記載されている通り,osの種類に応じた手順を実施します。

例えばRed Hat Linux无论何时を動作させているノードではFluentdエージェント“td-agentをインストールする必要があります(このOSでは根アクセスが必要です):

$ curl -L https://toolbelt.treasuredata.com/sh/install-redhat-td-agent3.sh | sh

Red Hat无论何时の空间にインストールする場合はFluentdのRubyと宝石をインストールします:

$ curl -O | tar -xvf

流利の設定

rootユ,ザかそれ以外のユ,ザかにより,Fluentd設定ファルの配置場所の変更を必要な場合があります。

パッケージマネージャを使用した場合,根ユーザによるインストールではデフォルトでtd-agent.confファイルは/etc/td-agent/にあります。

$ ls -al /etc/td-agent/td-agent.conf -rw-r——r——1 root root 8017 5月11日18:09 /etc/td-agent/td-agent.conf

根ユーザ以外のインストールでは書き込み権限があればtd-agent.confファイルをどこでも保存できます。td-agentを実行時,- cフラグを利用してfluentdをこのファイルの場所に指定することができます。

設定ファ@ @ルはJFrog日志分析Github回购から取得した設定ファ@ @ルに置き換える必要があります。

このリポジトリではfluentdフォルダに設定ファ▪▪ルのテンプレ▪▪トが含まれています。ノ,ドで実行されているJFrogアプリケ,ションにマッチするテンプレ,トを使用してください:

この設定ファesc esc esc esc esc esc esc esc esc esc esc匹配ディレクティブで更新する必要があります:

#END弹性输出@type elasticsearch @id elasticsearch主机elasticsearch端口9200 index_name unified-artifactory include_tag_key true type_name fluentd logstash_format false #END弹性输出

ここでのホストはデプロイしたkibana_svc.yamlスニペットの仕様上,内部のk8クラスタ・ホストのelasticsearchです。ElasticsearchとKibanaを別の方法で設定している場合は外部IPアドレスを設定することも可能です。

流利の実行

新しい設定ファイルを設定後にコンテナにログインし,吊舱上のサービスとしてtd-agentを起動することができます:

$ systemctl start td-agent

非根ユーザによるインストールの場合はtd-agentに設定ファイルを指定して実行することができます:

$ td-agent -c td-agent.conf

これでFluentdのログ・エージェントが起動し,詹妮弗のログを尾巴してElasticsearchに送信します。

Artifactoryとx光を実行しているすべてのKubernetes Podに対して,これらの手順を繰り返す必要があります。

ElasticsearchとKibanaの利用

Elasticsearchのaapl .ンスト.ルと設定Kibanaのセットアップが未完了の場合は今すぐ実施してください。また,ElasticsearchとKibanaをKubernetesにデプロ电子词典する際の手順とyamlファルも提供しています。

Kibanaの指数管理ペ,ジからFluentdのインストールと各Artifactoryとx光Podでtd-agentが実行されている状態とインデックスが生成されていることが確認できます。

Elasticsearch/Kibana用のJFrog統合では索引模式と可视化を定義するndjsonファルを提供しています。このファ@ @ルはKibana Saved Objectsペジからンポトすることができます。

索引模式,可视化,仪表板,小部件,保存搜索がaaplンポ,トされていることが確認できます。

索引模式ではunified-artifactoryパタン用に2の脚本字段があります。

これはrequest_content_lengthresponse_content_lengthをgbに変換しているからです。生成されているログは发现セクションで見ることができます。

最後に数据部件全体に表示される情報を含む指示板を表示し,JFrog统一平台をリアルタescムで監視できるようにします。

インストール後JFrog日志ダッシュボードに主要な動作メトリクスのタイムラインとカウントデータが表示されます:

  • 可以过滤日志卷,这类型(タイプでフィルター可能なログ・ボリューム)
  • 服务错误(サ,ビスエラ,)
  • HTTP响应码(HTTPレスポンスコ,ド)
  • 已访问的镜像(アクセスされたaapl . exe .メ.ジ)
  • 已访问的存储库(アクセスされたリポジトリ)
  • 在GB上传/下载数据传输(アップロード/ダウンロードされたデータ量(GB))
  • 上传/下载排名前十的IPs(アップロード/ダウンロードが多い上10位件のIPアドレス)
  • 按用户名(ユ,ザ,毎の監査アクション)进行审计操作
  • 否认行为和由IP和登录用户名(IPとユーザー毎の拒否されたアクションとログイン)
  • 接受按用户名部署(ユ,ザ,毎の許可されたデプロ,;)

素晴らしいものが統合される時

これですべてのサービスと実行ノードに渡り,JFrog平台部署を監視するツールプラットフォームが構築されて運用に関する貴重なデータの分析ができるようになりました。

JFrogプラットフォムを使用する方法やその他の最良の方法にいて,さらに詳しく知りたい場合はバ,チャルSwampUp 2020カンファレンスに登録することでArtifactory、x光分布、管道に関するオンライントレーニングや詳細なセッションに参加できます。