本文将介绍使用Python语言和Pulumi在阿里云指定区域和可用域中快速创建一台Linux云服务器。
任务描述
新建一个Pulumi项目
部署一台Linux服务器
Linux服务器位于指定的区域和可用区,使用专用网络并配置好安全组规则。
前置要求
Python 版本为3以上
安装virtualenv
已经根据文档完成Pulumi安装。
新建一个Pulumi项目
1.使用`pulumi new --dir ` 在本地建一个工作目录。根据提示选择合适的模板。
![](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/8353975961/p82396.png)
2. 往下翻页,选择`alicloud-python`模板。
3.在界面提示下输入:项目名称、项目描述、堆栈名称、阿里云区域(默认cn-beijing) 。
![](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/7353975961/p82399.png)
完成后,界面提示项目创建成功。可以使用提示的命令开始第一个部署。
4.确认项目创建后,本地目录下生成的文件。
![](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/8353975961/p82418.png)
其中,
__main__.py 文件用于定义部署配置的。
Pulumi.demo-dev.yaml记录了该堆栈的公共配置,如:区域。
Pulumi.yaml记录项目元信息:项目名称、描述、语言。
requirements.txt 文件定义了运行依赖的python模块。
5.根据提示进入工作目录
cd project-demo
6.开启独立python环境(如果服务器只有一个python版本可跳过此步骤)
virtualenv -p python3 venv
source venv/bin/activate
7.安装pulumi和pulumi-alicloud模块
pip3 install -r requirements.txt
部署一台Linux服务器
1. 定义部署文件
__main__.py内容如下:
import pulumi
import pulumi_alicloud as alicloud
vpc = alicloud.vpc.Network("my-vpc",cidr_block="172.16.0.0/12")
az = "cn-hangzhou-i"
sg = alicloud.ecs.SecurityGroup("pulumi_sg",description="pulumi security_groups",vpc_id=vpc.id)
vswitch = alicloud.vpc.Switch("pulumi_vswitch",availability_zone=az,cidr_block="172.16.0.0/21",vpc_id=vpc.id)
sg_ids= [sg.id]
sg_rule= alicloud.ecs.SecurityGroupRule("sg_rule",security_group_id=sg.id,ip_protocol = "tcp", type= "ingress",nic_type = "intranet",port_range="22/22",cidr_ip="0.0.0.0/0")
instance=alicloud.ecs.Instance("ecs-instance2",availability_zone=az,instance_type ="ecs.t6-c1m1.large" , security_groups =sg_ids,image_id="ubuntu_18_04_64_20G_alibase_20190624.vhd",instance_name ="ecsCreatedByPulumi2",vswitch_id=vswitch.id,internet_max_bandwidth_out = 10)
代码导入pulumi_alicloud模块,并定义了专用网络、vswitch、安全组、安全组规则,最后定义了ECS实例。
2. 使用Pulumi命令行来使配置生效。
运行`pulumi up`。
![](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/8353975961/p82899.png)
在应用我们的配置前,先查看执行计划,选择details。
![](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/2991581851/p82900.png)
![](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/2991581851/p82905.png)
确认无误后,选择“yes”执行我们的配置,如下图显示5个资源已经创建。
![](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/2991581851/p82909.png)
3.也可以单击permalink到Pulumi 官网页面进行查看。
![PU1.png](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/3282875961/p723285.png)
恭喜您,成功使用pulumi创建阿里云的服务器!