使用Pulumi快速創建Linux服務器
本文將介紹使用Python語言和Pulumi在阿里云指定區域和可用域中快速創建一臺Linux云服務器。
任務描述
新建一個Pulumi項目
部署一臺Linux服務器
Linux服務器位于指定的區域和可用區,使用專用網絡并配置好安全組規則。
前置要求
Python 版本為3以上
安裝virtualenv
已經根據文檔完成Pulumi安裝。
新建一個Pulumi項目
1.使用`pulumi new --dir ` 在本地建一個工作目錄。根據提示選擇合適的模板。
2. 往下翻頁,選擇`alicloud-python`模板。
3.在界面提示下輸入:項目名稱、項目描述、堆棧名稱、阿里云區域(默認cn-beijing) 。
完成后,界面提示項目創建成功。可以使用提示的命令開始第一個部署。
4.確認項目創建后,本地目錄下生成的文件。
其中,
__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`。
在應用我們的配置前,先查看執行計劃,選擇details。
確認無誤后,選擇“yes”執行我們的配置,如下圖顯示5個資源已經創建。
3.也可以單擊permalink到Pulumi 官網頁面進行查看。
恭喜您,成功使用pulumi創建阿里云的服務器!