パッケージリポジトリのJFrogが日本法人を設立。日本人社員に聞いたJFrogの勘所
パッケージマネージャとして利用されているArtifactoryの開発元、JFrogの日本法人が設立された。JFrogはパッケージレジストリ、リポジトリマネージャなどと呼ばれているソフトウェアだ。GitHubがソースコードを中心として開発プロセスを構築しているのに対し、JFrogはソースコードがビルドされるプロセスを中心にCI/CDの基点となるソフトウェアと位置付けられる。しかしこれまでは日本法人もパートナーも存在しなかったために全体像が掴みづらかった。今回、日本法人の代表となったカントリーマネージャーの田中克典氏とシニアデベロッパーサポートエンジニアの岩下博文氏にインタビューを行い、ソフトウェアの特徴などについて解説を受けた。
― 簡単に自己紹介をお願いします。
- 田中:カントリーマネージャーの田中です。これまではアドビやオートデスクなどでマーケティングやビジネス開発を行ってきました。今回、JFrogの日本人社員1号としてJFrogの製品を日本に広めていきたいと思っています。
- 岩下:以前はCA Technologiesでエンジニアをやっていましたが、田中の次に日本人社員として働き始めました。主にパートナーやお客様のサポートを行う役割ですね。
― 田中さんのアドビ時代に、私も一緒にマーケティングの仕事をしていたので、お久しぶりの再会となりましたが、JFrogはアドビやオートデスクとはだいぶ領域が違うソフトウェアです。それについて問題はなかったですか?
- 田中:お久しぶりですね(笑)。確かに最初は「何のソフトウェアだろう?」と分からないことも多かったのは事実です。実際にカントリーマネージャーの面接を受ける時に他にも多くの候補者がいて、私の経歴は他の方と比べればだいぶ異なっていたはずです。ただイスラエルにも出向いて面接を受けた時に感じたのは、強烈な信念とでもいう部分でした。JFrogが提唱する「リキッドソフトウェア」という新しいソフトウェアのあり方が書かれた本を渡され、帰りの飛行機の中で読んだときに「これは何かすごいことが書かれている」ということを痛烈に感じたのが大きかったですね。結果的にカントリーマネージャーとしてここにいるわけですが、最初の面接の時からその「リキッドソフトウェアを実現するんだ」という強い気持ちを、私が会った全てのメンバーから感じたんですよ。なので「このチームの一員になりたい」「日本でもリキッドソフトウェアを広めたい」というのが私の今の気持ちです。
― 多くのベンダーがDevOpsやCI/CD、アジャイル開発などのキーワードを使って自社の製品を拡販しようとしていますが、日本では事業会社側にソースコードを書くデベロッパーが居ないことがDevOpsを阻害する構造上の問題ではないかと私は思っています。それに関しては?
- 田中:確かにそういう問題はあるでしょう。ただソフトウェアを武器にしていかないとこれからのビジネスは立ち行かないという認識は徐々に広まっていると思います。実際にアジャイル開発を行うための組織改革を行っている事業会社も出てきましたからね。
― JFrog製品の中核となるのはArtifactoryです。DevOpsのリポジトリとしては重要な役割を担うソフトウェアだと思いますが、その利点などについて教えてください。GitHubのようにソースコードのリポジトリであれば、コードに修正を加えたり、それをマージしたりするリポジトリの機能とGitHub上でのコミュニケーションツールとしても利点が多いのは分かりやすいですが、ビルドされたバイナリのリポジトリというにはどんな利点がありますか?
- 岩下:Artifactoryは既にJavaをはじめ多くの開発言語のパッケージをサポートしているので、パッケージがどうやって開発されたのかを一元的に管理できるというのは利点のひとつですが、あまりデベロッパーに直接訴えかける機能ではないのですよね。プログラムのビルドはC言語であればmakeのようにそのコードが必要とするライブラリなどを取り込んで、最終的にバイナリを作ることです。JavaであればMavenのどのバージョンを使うのか、ライブラリは何かなどをXMLファイルに記述してそれを実行するというのが良い例です。Javaをはじめとした多くの言語やパッケージフォーマットでも一元的にリポジトリとして管理するのがArtifactoryです。ソフトウェアのビルドを個別にマニュアルでビルドできますが、脆弱性などをチェックしながらそれをやるのは今はほぼ不可能に近いと思っています。実際にあるライブラリがまた他のライブラリを利用していたりして依存関係を理解するのは難しいんですよね。ArtifactoryはMavenやnpm、RubyのRubygem、WindowsであればNuGetなど数多くのパッケージをサポートしていますので、多くの言語やプラットフォームで開発を進められるというのが利点です。もう少し大規模なシステム開発になると、例えば中国とインドに開発拠点があって、日本の本部からそれをコントロールしているという場合に、複数のArtifactoryをそれぞれの拠点に立ててそれをレプリケートすることでライブラリなどの整合性を揃えるといった使い方をしているエンタープライズは多いです。
― つまり、各拠点がそれぞれビルドするとインドで作ったバイナリには最新のライブラリが入ってしまい、少し前にビルドした他のシステムと合わなくてエラーになる、みたいな状態ですか?
- 岩下:そうですね。Artifactoryにはリモートでの利用に最適なArtifactory Edgeというエディションがありますが、これはリードオンリーのアクセスを許すリポジトリです。つまり複数の拠点でもマスターとなるライブラリやバージョンを本社側から管理できるという機能を実装しています。複数の拠点で開発する際に整合性が合わないということを防ぐために、ビルドされたArtifactにメタデータを付ける機能が役に立ちます。このビルドは「いつ」「誰が」「何を使って作ったのか」をシステムに情報として付与するのです。それをDiffという機能で比較することで確認できるのです。
― なるほど。一人のデベロッパーとしてはArtifactoryの利点はあまり享受できないですが、チームとして開発を行う場合、特に複数拠点を跨る大規模な開発チームになればなるほどその利点が効いてくるというわけですね。
- 岩下:そうです。なので、我々もこの利点を訴求する時はデベロッパーというよりも組織を管理するマネージャーの人に良さを伝えたいと思っています。
― Artifactoryにはいくつかのエディションがあるようですが、それを紹介してください。
- 岩下:基本的にはOSSとして公開しているものがあります。これは主にJavaの開発を行う場合に適しています。Artifactory自体もJavaで書かれているので親和性は高いと思います。その他に追加した機能により有償版のPro、Pro X、Enterprise、Enterprise+と分けています。SaaSとして使う際のエディションもありますが、基本的にはマルチクラウドでもオンプレミスでも同じ機能を提供できるように開発を行っています。
― いわゆるオープンコアとして中核の基本機能をOSSとして公開し、付加価値的な機能はプロ版もしくはエンタープライズ版として有償のエディションを購入してほしいという施策ですね。
- 岩下:そうです。Artifactoryを中心にポートフォリオを作っています。今後はリポジトリとセキュリティ、CI/CDなどを機能強化していく予定です。
- 田中:パブリッククラウドやオンプレミス以外にもSaaSとして提供するエディションもあります。SaaSの場合はAWS、GCP、Azureの3つのパブリッククラウドでサービスとして提供しています。つまり、どのパブリッククラウドにも依存することなくサービスとして利用できます。2019年2月に買収を発表したShippableがCI/CDパイプラインの中核ソフトウェアですが、Artifactoryを中心としたワークフローに統合する形で開発が進んでいます。
* * *
GitHubのソースコードを中心にしたコラボレーションは、エンタープライズが抱える開発案件ではなくOSSの様に多くのコントリビュータが関わるソフトウェア開発には最もフィットするが、エンタープライズが志向する「自社のビジネスニーズを満たすことが最優先」というゴールには自社内のデベロッパーの存在が不可欠だ。日本では今でも外部の開発部門にソフトウェア開発を委託し、検収まで発注側が責任を持つスタイルが主流であることを考えると、DevOpsの実現には悲観的にならざるを得ない。
JFrogの製品はOSSデベロッパーにはあまり評価されず、エンタープライズには高い評価を得ているという背景には、OSS版にはないメタデータの利用やバイナリリポジトリのリプリケーションなど、多くの機能差によるところが大きいのだろう。この成功はエンタープライズが求める多言語対応、遠隔地を含んだ大規模なソフトウェア開発などに必要な機能を網羅していることに尽きる。GitHub以上に日本での拡販は難しいとは思えるが、今後のJFrogの動向に期待したい。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- KubeConサンディエゴ:CI/CDを始めるJFrogに訊いてみた
- JFrog Japan主催による、DevOpsの最新事情がわかる開発者向けイベント「DevOps Kaigi ’21」を開催
- CNDT 2020開幕、キーノートではサイボウス、プレイドなどのエンドユーザーがスケールするシステムの開発事例を語る
- クラウドネイティブなCIを目指すCircleCIの未来とは? CEOとカントリーマネージャーに訊いてみた
- GitHub、ベルリンで発表した新機能などを解説するメディア説明会を開催
- GitHub Satellite都内で開催。MSによる買収発表後もブレない姿勢を見せる
- GitHub Universe開催、ActionsとPackagesの背景にある思想をCTOに訊いた
- CircleCIのCTOがクラウド時代のCI/CDについて語る
- 「GitHub Universe 2022」セキュリティの機能強化はOSS向けとエンタープライズ向けの2本立て
- GitHubのチーフビジネスオフィサーがGitHub自身の変革について語る