インフラ構成ツールの「Pulumi 3.0」正式リリース。APIでPulumiを呼び出し可能、クラウドのアップデートに即時対応など
コードを用いてクラウドをはじめとするITインフラの構成を定義できる、いわゆるInfrastructure as Codeツールの「Pulumi」が、最新版となる「Pulumi 3.0」として正式リリースされました。
Announcing our new #CloudEngineering Platform (Pulumi 3.0)!
— Pulumi (@PulumiCorp) April 20, 2021
Native providers with 100% API coverage
Pulumi Packages to share #cloud components
Automation API for programmatically deploying infrastructure from code
Enterprise-grade #IAM
https://t.co/KEdSlew6DV pic.twitter.com/WLNhPC3L11
Pulumiはオープンソースのインフラ構成ツールです。開発元であるPulumi社によって商用サービスとしても提供されています。
一般にインフラ構成ツールでは、独自の文法や命令を備えたスクリプトを用いてインフラの構成や状態を定義します。そのため、これらのツールの利用には新たな命令や構文などを覚える必要があります。
Pulumiの最大の特徴は、PythonやTypeScript、Goといった既存の主要なプログラミング言語を用いてインフラ構成を記述できる点にあります。
そのおかげで、インフラ構成を記述するコードがプログラマにとって読みやすいコードになり、しかも既存のエディタやIDEなどによる構文チェック、コード補完、コードの整形といった便利な機能をそのまま使えるため、より効率的に記述できること、などの利点を得ることができます。
PulumiをAPI経由で呼び出し可能に
今回リリースされたPulumi 3.0では、APIを通じてPulumiを操作できる「Pulumi Automation API」、クラウドベンダ自身がPulumiのクラウド対応機能のメンテナンスを担当することで、つねに最新のクラウド対応が即時に行われる「Native Providers for Azure and Google Cloud」、あるプログラミング言語で記述されたインフラ構成を別のプログラミング言語からでも呼び出せる「Pulumi Packages and Multi-Language Components」などの新機能が追加されました。
それぞれを紹介しましょう。
「Pulumi Automation API」は、PulumiをAPI経由で呼び出せる機能。これによりさまざまなアプリケーションからPulumiを呼び出してインフラの構成を変更できることになります。
一般にPulumiのようなインフラ構成ツールは、コマンドラインから、あらかじめ設定済みの構成ファイルを呼び出して実行する、という方法で利用されます。構成ファイルを用意し、実行するのはインフラ担当者です。
Pulumi Automation APIによってAPI経由でインフラ構成を変更できるようになれば、例えばアプリケーション開発担当がいつでもテスト用のインフラ構成をもとに戻せるスイッチや、CI/CDのワークフローの途中で自動的にビルド用のインフラ構成を実現するワークフローなどが容易に構築できるようになると説明されています。
クラウドベンダ自身がPulumiのクラウド対応をメンテナンス
PulumiはAWSやMicrosoft Azure、Google Cloudをはじめとするさまざまなクラウドやインフラに対応しています。これはPulumiに対してプラグインのような形で追加する「Provider」というコンポーネントによって実現されています。
このProviderを記述することで、Pulumiは新しいインフラやアプリケーションの構成を変更できる能力を備えることができるのです。
しかしクラウドはつねに新しい機能やサービスのアップデートが行われており、Providerはそれに追随しなければ、Pulumiから新機能などを呼び出せません。
そこでクラウドベンダ自身がPulumiのProviderのメンテナンスを担当することで、最新の機能が即時にカバーされるのが「Native Providers for Azure and Google Cloud」です。Microsoft AzureはPulumi 3.0とともに正式版となり、Google Cloudはプレビュー版となります。
別のプログラミング言語でもPulumiの構成を呼び出せる
Pulumiの特徴はさまざまなプログラミング言語でインフラ構成を定義できる点にありますが、これまでは、あるプログラミング言語で記述したインフラ構成を別のプログラミング言語で再利用することができませんでした。
Pulumi 3.0の新機能「Pulumi Packages and Multi-Language Components」は、これを解決し、記述されたインフラ構成の再利用や部品化を容易にしてくれるものです。
そのほかPulumi 3.0ではGoとPython SDKの改善、有償サービスとの連携強化など、さまざまな機能追加が行われています。
詳しくはPulumiのブログ「Announcing Pulumi 3.0」をご覧ください。
あわせて読みたい
国内企業はコンテナ型仮想化の本格的な普及期に。本番環境での採用率は17%、テストや検証段階は23%、合計40%以上が導入へ。IDC Japan
≪前の記事
WebAssemblyがSIMDをサポート、「WebAssembly SIMD」がChromeやFirefoxで標準実装。画像処理や物理演算など高速実行