The Latest From John Peterson

  • JFrog Log AnalyticsでDocker HubへのPullリクエストを監視する

    | < 1 min read

        ご存知ですか?Docker Hubは現在、無料の匿名アカウントとログイン済みアカウントの使用を制限しています。6時間以内に同一IPアドレスからのPull数が一定のしきい値(匿名アカウントは100、クレデンシャルアカウントは200)を超える場合、Docker Hubは帯域幅を制限します。Dockerイメージの取得は出来ても、速度がかなり遅くなります。 Docker Hubのポリシー変更については、以前のブログ記事をご覧ください。 DockerレジストリとしてDocker Hubを利用している組織では、この新しいポリシーが生産性に大きな打撃を与える可能性があります。しきい値はユーザーごとではなくIPごとに設定されているため、企業ごとにこうした制限がすぐに、しかも頻繁に発生する可能性があります。 これらの変更による影響をどこまで把握していますか?JFrog Log Analyticsの最新アップデートにより、JFrog ArtifactoryのユーザーであればDocker Hubの変更による影響を最小化することができます。 ArtifactoryでDocker HubからのPullをキャッシュする Docker Hub用のリモートリポジトリを用意することで、ArtifactoryのユーザーはPullの頻度を減らすことが出来ます。このリポジトリはプロキシとしてDocker HubからPullされたすべてのDockerイメージをキャッシュするため、それ以降同じイメージに対するPullはアーティファクトのリポジトリ・マネージャーから行われます。 この方法ではDocker Hubからキャッシュするための最初のPullのみがDocker HubのPull制限にカウントされます。そのため、最も頻繁に使用するDockerイメージはビルド時には常にフルスピードで利用されます。また、一度キャッシュされたイメージはDocker Hubが利用できない場合でも常に利用できるようになります また、Artifactoryで独自のセキュアなプライベートDocker registryを管理することで、Docker Hubへの依存度をさらに減らすことができます。 Dockerリポジトリ分析 Artifactoryを搭載したJFrog DevOps Platformのセルフホスト型インストールでは、Fluentdデータによる収集を通じて統一されたJFrogログデータを利用できるようにしました。また、このデータを使って、Splunk、Elastic Stack、Prometheus/Grafana、DataDogなどの一般的な分析ツール用のダッシュボードにレンダリングするためのインテグレーションを提供しています。 自分に最適な分析ツールを通して、データ転送量、どのリポジトリが誰に利用されているか、誰がアクセスを拒否されているかなど、運用上の有益な統計情報を見ることができます。 JFrogはこのようなインテグレーションのアップデートにより、Docker Hubの使用状況を監視するのに役立つDocker統計情報を表示する新しいタブを提供しています。Splunk 用のJFrog Logsアプリではどのように表示されるかを見てみましょう。 Pullリクエストの傾向 以下は過去6時間のDocker Hubに対するPullリクエストの数とそれが増加傾向にあるか減少傾向にあるかを示しています。リモートリポジトリのキャッシュによってPullが行われたもの(たとえばキャッシュミス)はこのカウントに含まれていないため、Docker Hubのポリシー制限にカウントされるPullリクエストのみが計測されています。 Dockerリポジトリのキャッシュヒット率 DockerイメージのPullリクエストがキャッシュにより完了する頻度は比率で表され、値が1であればすべてのリクエストはキャッシュから返していることを意味します。例えば、以下の0.703という数値はキャッシュヒット率70.3%を意味します。つまり、キャッシュミスは合計269件(29.7%)であり、628件のPullリクエストがArtifactoryによりフルスピードで処理されたことになります。 Docker Hub Pullリクエスト 次のグラフは6時間以内のDocker HubへのPullリクエストのカウントを示しています。各バーにはその時間から過去6時間以内に行われたPullリクエストの総数が表示されています。 この統計は組織がDocker Hubのポリシー制限に近づいているか、あるいは超えているか、そしてピーク時にどのような状態になっているのかを確認することができます。 トップ10ユーザーとIPアドレス これらの統計から、Dockerリポジトリを独占的に使っているユーザーが誰なのかがユーザー別、IPアドレス別に明らかになります。Pullリクエストが超過していることがわかれば、この情報をもとに原因となるユーザーを特定することができます。 はじめよう ご紹介したデータ収集と分析ツールはGitHubリポジトリ「JFrog log analytics…

    さらに見る
  • OpenShiftでJFrog Enterpriseをスムーズに実行するOperatorを提供

    | < 1 min read

    Red Hat OpenShiftとJFrog Artifactoryは共にクラウドネイティブなため、エンタープライズ規模でコンテナ化されたソフトウェアをスムーズに開発することができます。また、JFrog Enterprise用の認定済みOpenShift Operatorが新たに利用可能となったことで、より強固になりました。 Kubernetesをスケールに合わせてビルド 1,700以上の組織から信頼されているRed Hat OpenShiftはエンタープライズKubernetesアプリケーションプラットフォームをベースとしたハイブリッドクラウドです。JFrog DevOpsプラットフォームの中核をなすバイナリ管理の業界標準であるJFrog ArtifactoryはFortune 100社の多数を含む5,000社以上の企業で使用されています。 JFrog EnterpriseがOpenShift同様に複数チームで構成されている組織の拡大するニーズに合わせてどのように構築されているかをご紹介します: 主要なすべてのパッケージタイプ用のリポジトリは言語(Java, npm, NuGet, Python, Golangなど)と実行環境を問わず開発作業を効率的に行えます。 高可用性とプッシュ/プル・レプリケーションにより、世界中で毎時間実行される何百ものCIのビルドが可能です。 オンプレミスでもクラウドでも同じ操作と機能を有し、完全にハイブリッドです。 DockerレジストリとHelm chartリポジトリのサポートにより、Artifactory Enterpriseは完全にトレース可能なKubernetesレジストリとして機能し、OpenShift K8sにデプロイ可能な信頼できるソフトウェアのリポジトリとして機能します。   JFrog EnterpriseのOpenShift Operator OpenShift OperatorはKubernetesアプリケーションをパッケージング、デプロイ、管理するオペレーターです。これらのオペレーターはコンテナ化されたソフトウェアを実行する際の複雑な処理を行い、OpenShift Container Platformの状態を監視して、自動化したリアルタイムな運用が可能です。 JFrog Enterpriseで利用可能なOpenShift OperatorはOpenShift 4と互換性があり、Artifactoryのデプロイを自動的にモニタリングします。これによりK8sクラスタでArtifactoryの継続運用が可能となります: JFrog Artifactoryを安全に実行するためのRBACポリシーの設定 JFrog Artifactoryを高可用性(HA)モードでデプロイ 必要なストレージとサービスのエンドポイントをプロビジョニング DevSecOps用のJFrog EnterpriseサブスクリプションにJFrog Xrayを追加することでXrayの継続的セキュリティのインストールとメンテナンスを同様に支援するために、2つ目のOpenShift Operatorが利用可能です。 OperatorによるJFrog Artifactoryのデプロイ ArtifactoryでSSLを利用する場合は秘密鍵と証明書にKubernetes ingressでtlsSecretNameも指定する必要があります。このK8s secretはOpenShift Developer CLIのoc createコマンドで作成できます。…

    さらに見る