使い勝手が向上
Netflixの継続的デプロイツール「Spinnaker」がKubernetesとの連携を強化
NetflixとGoogleが主導する継続的デプロイツール「Spinnaker」とKubernetesの連携機能が刷新され、企業にとっての魅力が増している。
NetflixとGoogleが主導する継続的デプロイツール「Spinnaker」のKubernetesとの連携機能が改善された。企業のDevOpsチームにとって、より魅力的になったといえるだろう。Spinnakerを利用することで、DevOpsチームは継続的デプロイを高速化できる。
Spinnakerではパイプライン(実行したいタスクに関する一連の処理)を用いて継続的デプロイを実行する。このパイプラインは非常に細かくカスタマイズできる。だがNetflixによる初期設定では、DevOpsチームがアプリケーションの継続的デプロイの導入で得られる優位性がほとんどない。Spinnakerではなく、別のオープンソースのパイプラインツール「Jenkins」を採用しているユーザーもいる。そちらの方が使いやすいためだという。これまでSpinnakerとKubernetesのコンテナクラスタの連携について改善が求められていたが、その機能が2018年10月中旬に実装された。
Spinnakerの新しい機能
SpinnakerのKubernetesプラグイン(以下「プロバイダー」)のバージョン2は次の特徴を備える。以前使われていたJavaライブラリではなく、Kubernetesネイティブのコマンドラインインタフェース(CLI)「kubectl」と統合された。カスタムリソースを定義できるため、Kubernetesと併せて使うことでサードパーティー製のインフラコンポーネントを管理しやすい。
つまりKubernetesプロバイダー バージョン2では、任意のコンテナイメージのKubernetesマニフェストを自動で生成する。そして、Spinnakerパイプラインの一環として、ステージング環境用、テスト環境用、運用環境用といった具合に、複数バージョンのマニフェストが生成される。IT運用管理者はKubernetesプロバイダー バージョン2を使用して、セキュリティを目的としたKubernetesクラスタへのアクセス制限を実施できる。
多国籍メディア企業のSchibsted Media GroupでDevOpsエンジニアスタッフを務めるガード・リーメスタ氏は次のように語る。同社はノルウェーに拠点を置き、Kubernetesプロバイダー バージョン2を早くから導入している。「もはやKubernetesプロバイダーは恐ろしいものではなく、Kubernetesのコードと非常に近くなった。つまりSpinnakerによって、ローカル環境で使用しているものと同じバージョンのKubernetesをクラウドでも使用できるようになった」
継続的デプロイの実現を後押しするSpinnakerパイプライン
NetflixがSpinnakerのパイプラインツールを社内用に作成したのは2014年のことだ。Spinnakerがオープンソースコミュニティーにリリースされた2015年に、Googleも同プロジェクトに参加した。2017年6月のSpinnaker バージョン1.0のリリース以降、パイプラインを使ったアプローチはクラウド化があまり進んでいない企業の注目を集めるようになった。
「2013年からに7回にわたって継続的デプロイに挑戦してきたが、全て失敗した」とモバイルデバイスのセキュリティ会社Lookoutに所属するブランドン・リーチ氏は言う。同氏は同社の継続的デプロイ部門のシニアエンジニアリングマネジャーを務める。同社では4つのJenkinsパイプラインを導入して安定的に運用していたが、より優れたアプローチを探していた。そして2018年にSpinnakerを採用した。
「Spinnakerではリリースの観点からインフラを調整できる。どのような方法でリリースするかを検討すれば、それに合わせたインフラが提供される。インフラ定義ソフトウェアの『Terraform』を使用したブルーグリーンデプロイメント(2つの環境を切り替えてバージョンアップを実施する手法)よりもはるかに円滑な方法だ」とリーチ氏は語る。
オンライン印刷サービス会社のVistaprint USAでは、継続的インテグレーションツール「Bamboo」やJenkinsをベースにした継続的デプロイシステムを、Spinnakerのパイプラインに置き換えた。同社は小企業向けにマーケティング資料のカスタム印刷を提供している。Vistaprint USAではパイプラインの刷新を計画していた。プロビジョニング中のBambooビルドをスピンアップするのに2日以上掛かるようになり、テストが完了するまでリリース作業を中断しなければいけなくなったためだ。同社は社内で作成したデプロイ用コードと組み合わせてSpinnakerとJenkinsをテストおよび比較した。その結果、使いやすさの点でSpinnakerに軍配が上がった。
「基本的なSpinnakerパイプラインは1日で稼働させられた。さらに1日半で実際にデプロイすることができた」と述べるアンドリュー・ドブソン氏は、Vistaprint USAでソフトウェアエンジニアを務める。
Spinnakerパイプラインでは核心部分のインフラ構成タスクが抽象化されるため、ユーザーは具体的な処理を意識しなくてもよいが、Spinnakerのコードに手を加えることも可能だ。Lookoutのリーチ氏はSpinnakerのインフラプロバイダーを独自に作成した。Kubernetesではなく、Amazon Web Servicesのコンテナ管理サービス「Amazon Elastic Container Service」(Amazon ECS)でコンテナオーケストレーション環境を扱うためだ。一方でSchibsted Media Groupのリーメスタ氏は、Spinnakerパイプラインツールと同社独自のデプロイデーモンを連携させている。
Spinnakerパイプラインユーザーのウィッシュリスト
Spinnakerパイプラインは、企業が継続的デプロイの初期段階を乗り切るのに役立つ。だがユーザーが洗練されていくにつれ、より多くの機能が期待されるようになる。例えば継続的インテグレーション段階前のSpinnakerパイプラインにおける成果物の自動評価、プロモート、ロールバックなどだ。ユーザーによると、Spinnakerパイプラインでステートフルアプリケーションのデプロイを実行するためのAPIが改善され、CLIの安定化や簡素化が遂行される可能性があるという。Netflix内でもまだα版の段階である宣言型のパイプラインツールが利用可能になることを切望するユーザーもいる。
Vistaprint USAのドブソン氏は次のように述べる。「Spinnakerコミュニティーでは、方法を気にせずにデプロイできるようにするための取り組みが進められている。つまり新しい技術が用いられても、内部の仕組みを更新できるようにしている」
Spinnakerパイプラインのロードマップには、成果物のプロモート機能、α版のCLIを使いやすくするための強化が含まれている。さらにユーザーの要望に基づいたステートフルなアプリケーション導入APIの更新、オープンソースとしての管理プロジェクトの運営委員会なども含まれている。
「Netflixの全てのステートフルサービスは、アプリケーションのデリバリーに組み込めるようSpinnakerのAPIを使用している。当社で利用している分散データベース『Apache Cassandra』やメッセージサービス『Apache Kafka』でも、オーケストレーション済みのデプロイを実行したことがある。いずれはこうした機能の一部をSpinnakerに組み込むことになるだろう」とNetflixでデリバリーエンジニアリング部門のディレクターを務めるグローバー氏は語った。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
2
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
3
「データストレージの活用方法」に関するアンケート
-
4
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
-
5
本当に安いPCで十分か? “すぐ重くなる”を防ぐノートPC選びの絶対条件
-
6
Claudeの不可視透かしに批判殺到 著作権消失や誤判定に潜む企業リスク
-
7
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
8
221人調査で分かった「情シス最大のストレス」は?
-
9
LLMの「過学習」、正しく説明している文章はどれ?
-
10
レガシー基幹システムをSAPに統合 山善が突き止めた「標準化と個別最適」の境界線
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー