プルミの概要
IaCツール「Pulumi」
- オープンソースのInfrastructure as Code(IaC)ツール
- HashiCorp社のTerraformと同様に、クラウドインフラやアプリケーション環境をコードで定義し、自動的にプロビジョニングや管理することができる
Pulumiの特徴
マルチクラウド対応
AWS、Azure、GCP、Kubernetesなど、主要なクラウドプロバイダーだけでなく、オンプレミス環境もサポート
宣言型構文
Terraformと同様の宣言型構文を採用しており、コードで目的の状態を定義することで、自動的にその状態に環境を収束させる
豊富なライブラリ
様々なクラウドサービスやアプリケーションフレームワークに対応したライブラリが豊富に用意されており、開発を効率化することができる
クロスプラットフォーム
Windows、macOS、Linuxなど、主要なOSで動作する
インフラ構築の自動化
コードでインフラを定義することで、手動による作業を削減し、ミスを減らすことができる
環境の再現性
コードで環境を定義することで、同じ環境を簡単に再現することができる
バージョン管理
コードをバージョン管理することで、過去の変更を追跡したり、ロールバックしたりすることができる
チームコラボレーション
コードベースを共有することで、チームメンバー間で簡単にコラボレーションすることができる
Pulumiの歴史
Pulumiは、2019年にMatt Cutler氏とJosh Boren氏によって設立されました。Cutler氏は元Microsoftのエンジニアで、Azure CLIの開発に携わった人物でもあります。Boren氏は元AWSのエンジニアで、Serverless Application Model(SAM)の開発に携わった人物です。
Pulumiは設立以来、急速に成長しており、多くの企業に採用されています。2022年には、シリーズCで3億ドルの資金調達に成功しています。
Pulumiの代表コマンド
Pulumiは以下のコマンドを主に使用します。
pulumi up: コードで定義された環境をプロビジョニング
pulumi down: コードで定義された環境を破棄
pulumi preview: コードで定義された変更が環境にどのように影響を与えるかをシミュレート
pulumi refresh: コードと実際の環境の状態を同期
pulumi stack ls: 現在のワークスペースにあるすべてのスタックを一覧表示。
pulumi stack info: 指定されたスタックに関する情報を表示
Pulumiの始め方
公式サイトからダウンロードしてインストール
インストール後、以下のコマンドを実行して、最初のスタックを作成することができる
pulumi new my-stack
その後、コードエディタでpulumi.yamlファイルを作成し、環境を定義することができる
参照
Pulumi公式サイト: https://www.pulumi.com/
Pulumi ドキュメント: https://www.pulumi.com/docs/
Pulumi チュートリアル: https://www.pulumi.com/docs/get-started/
Discussion