文档首页/ 云容器引擎 CCE/ 最佳实践/ DevOps/ 使用Pulumi自动化部署应用
更新时间:2026-07-10 GMT+08:00
分享

使用Pulumi自动化部署应用

Pulumi是一款基础设施即代码(IaC)自动化工具,依赖Terraform构建。支持使用主流编程语言Python、TypeScript、C#和Go来完成云基础设施的构建、部署与全生命周期管理。

本文介绍使用Pulumi部署应用的流程,并通过一个具体的示例演示该过程。

准备工作

  • 创建一个CCE集群,并确保节点已绑定弹性公网IP(EIP),用于下载镜像和外部访问。
  • 准备一台ECS服务器,绑定EIP并配置kubectl连接集群,详情请参见通过kubectl连接集群

安装Pulumi

  1. 登录ECS服务器。
  2. 通过以下命令安装Pulumi,您也可以前往Pulumi官网按照指示手动安装。

    curl -fsSL https://get.pulumi.com | sh

  3. 通过以下命令查看Pulumi是否安装成功。

    pulumi version

  4. 前往Pulumi官网注册Pulumi的账号。
  5. 创建Pulumi的Access Token。

    登录Pulumi控制台,单击用户头像,选择“Settings”。进入设置页,单击“Access Tokens” 菜单,单击“Create token” 按钮进行创建。

  6. 设置Pulumi Access Token环境变量。

    export PULUMI_ACCESS_TOKEN=pul-xxxx

使用Pulumi部署应用

  1. 初始化Pulumi项目,以python语言为例。

    mkdir pulumi-demo && cd pulumi-demo
    pulumi new kubernetes-python

    执行后交互式填写:

    • project name:项目名(如 pulumi-cce-demo)
    • description:项目描述
    • stack name:环境栈(默认 dev,区分开发 / 测试 / 生产环境)

    初始完成后自动生成核心文件:

    pulumi-demo/
    ├── Pulumi.yaml       # 项目元数据
    ├── Pulumi.dev.yaml   # dev 环境配置
    ├── __main__.py       # 基础设施主代码
    └── venv/             # Python 虚拟环境

  2. 编写测试代码__main__.py,部署一个nginx应用。

    """A Kubernetes Python Pulumi program"""
    import pulumi
    from pulumi_kubernetes.apps.v1 import Deployment
    app_labels = { "app": "nginx" }
    deployment = Deployment(
        "nginx",
        spec={
            "selector": { "match_labels": app_labels },
            "replicas": 1,
            "template": {
                "metadata": { "labels": app_labels },
                "spec": { "containers": [{ "name": "nginx", "image": "nginx" }] }
            },
        })
    pulumi.export("name", deployment.metadata["name"])

  3. 在终端中,执行以下命令部署您的基础设施。

    pulumi up

    回显将要创建的资源,输入yes确认。

  4. 查看部署是否成功。

    kubectl get pod

    回显如下,部署成功。

常见问题

  • 初始化Pulumi时安装依赖超时:

    可以将下载源替换为国内源。

    mkdir -p ~/.pip
    cat > ~/.pip/pip.conf <<EOF
    [global]
    index-url = https://xxx
    timeout = 120
    trusted-host = xxx
    EOF

    然后重新安装。

    pulumi install

相关文档