BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース DevOpsのレンズを通してオープンソース統合をナビゲートする

DevOpsのレンズを通してオープンソース統合をナビゲートする

オープンソースに対するDevOpsの視点を持つことは、OSSプロジェクトを環境に組み込むのに役立つ。DevOpsエンジニアは、サードパーティとの統合に抵抗がなく、異なるグループ間の壁を取り払い、チームワークを促進するというオープンソースの考え方に合致している。

Hila Fish氏は、DEV: Challenge Accepted 2023で、オープンソースに対するDevOpsの視点について講演する。このカンファレンスは9月30日にブルガリアのソフィアで開催される。

開発者がオープンソースについて機能面から考えるのに対して、Fish氏は、DevOpsエンジニアは運用面や環境面から考えるべきだと考えている。例えば、OSSツール/プロジェクトがどのように環境に利益をもたらし、環境に統合されるのか、また、そのためにはセキュリティやメンテナンスの考慮など、他にどのような周辺的なことが必要なのかだ。

Fish氏によると、DevOpsエンジニアはオープンソースツールの統合を恐れないという。
DevOpsエンジニアの多くはシステム管理者/エンジニアのバックグラウンドを持っているため、サードパーティとの統合という概念は彼らにとって不思議なものではない。

プロセスの自動化、コードデリバリー、特定の機能の導入など、多くの重要で必要とされることを達成するのに役立つため、私たちはそれを歓迎する。

DevOpsとは、開発チームと運用チームの間のサイロを取り払い、コラボレーションを促進することだ、とFish氏は主張する。オープンソースプロジェクトは、多様な個人や組織からの貢献を奨励することで、この精神を体現している。DevOpsチームは、オープンソースの協調的な性質を活用して、特定のニーズに沿ったツール、フレームワーク、プラットフォームを作成できる。

Fish氏によると、オープンソースプロジェクトは、チームメンバーが新しいスキルを学び、より幅広いテクノロジーに触れる機会を提供する。オープンソースコミュニティに参加することは、DevOpsの専門家が業界のトレンドやベストプラクティスの最新情報を得るのに役立つ。

InfoQは、オープンソースに対するDevOpsの視点について、Fish氏にインタビューした。

InfoQ: 適切なオープンソースプロジェクトを探す上での課題は何か

Fish氏: 世の中にはたくさんのプロジェクトがあり、自分のユースケースにもっとも適したものを選ぶ必要があります。

また、そのプロジェクトが次のような利点のほとんど、あるいはすべてに当てはまることも確認してほしい。

  • 十分に成熟した製品であり、メンテナンスがあまり必要なく、バグもあまりない

  • 定期的にメンテナンスされているので、バグが見つかってもすぐに修正される

  • 十分なエコシステムがあり、問題が発生したときに他の人が助けてくれる(十分なエコシステムがあるということは、通常、そのプロジェクトの現状において多くのユースケースがすでにカバーされていることを意味する)

InfoQ: オープンソースソフトウェアに対するあなたの見解は?

Fish氏: DevOpsエンジニアは、しばしばプロダクションのゲートキーパーであるため、可能な限り最善の解決策を導入するよう努めたいです。DevOpsとオープンソースの共通点はコラボレーションです。そして私たちが知っているように、ほとんどの場合、コラボレーションはより良い結論と解決策/実装につながります。 OSSユーザーのようなコミュニティが、共有課題の周りに形成されるとき、多くのアイデアが自然に生まれ、より良い解決策につながります。私たちはプロダクションのゲートキーパーとして、自分たちの環境にとって可能な限り最良の解決策を選びたいので、その達成にこの共通基盤は役立つのです。

InfoQ: OSSプロジェクトを統合することが適切な場合とそうでない場合を、どのように見極めればいいのか?

Fish氏: OSSプロジェクトの採用に関して、正解も間違いもありません。考え方の問題です。しかし、統合を進める前に、最適であり、長続きする可能性があることを確認するために、考えられること、考えるべきことはあります。 例えば、プロジェクトが活発であれば、問題やバグに頻繁に対処してくれるでしょう。だから、そのツールのヘビーユーザーになることが予想されるなら、アクティビティ指標に重きを置くべきです。そうでなければ、時代遅れのツールを手にすることとなり、(計画外の)メンテナンスを自分で行うか、別のツールへの移行を計画する必要が出てきます。 また、ツールのエコシステムが小さければ、日々のエンジニアリングでそれを実感するでしょう。サポートしていないため、新機能の導入が難しくなります。エコシステムが小さいので、あなたより先にうまくいったり、これらの機能について事前に問合せたユーザーは多くありません。また、例えばDiscordやSlackのようなコミュニティチャンネルや、ブログ記事やスタックオーバーフローの回答のようなオンラインプレゼンスにおいて、あなたを助けてくれるユーザーがいないかもしれません。

作者について

この記事に星をつける

おすすめ度
スタイル

BT