標籤:amazon ec2 aws python api boto
boto是Python的AWS開發套件。
本文中所有環境都是在Linux作業系統下。
安裝:
git clone https://github.com/awslabs/aws-python-sample.git
pip install boto
如果沒有安裝pip,參考這裡的安裝步驟:http://pip.readthedocs.org/en/latest/installing.html
配置:
boto的設定檔有兩種:
1.使用者家目錄設定檔~/.boto,此檔案只對該使用者有用。
2.全域設定檔/etc/boto.cfg,對所有使用者有效。
這兩個檔案是需要按照需求來自己建立的,它主要的作用是為了儲存AWS API的驗證資訊:
aws_access_key_id=XXXX
aws_secret_access_key=XXXX
這裡的兩個值如要在你的aws賬戶中擷取,如何擷取,請看圖片
點擊Crete New Access Key 你將獲得 Access Key ID和Secret Access Key這就是boto設定檔中需要配置的兩個驗證值,相當於API串連AWS的憑證。建立這個設定檔的作用是使你在開發過程中,不需要將憑證寫到代碼中,當然你也可以不建立這個設定檔而直接寫到代碼中。
串連EC2:
import boto.ec2conn = boto.ec2.connect_to_region("ap-northeast-1")
上面的代碼可以串連EC2的相應地區,關於地區代碼請參考:
代碼 |
姓名 |
ap-northeast-1
|
亞太地區地區(東京) |
ap-southeast-1
|
亞太地區地區(新加坡) |
ap-southeast-2
|
亞太地區地區(悉尼) |
eu-central-1
|
歐洲(法蘭克福) |
eu-west-1
|
歐洲(愛爾蘭) |
sa-east-1
|
南美洲(聖保羅) |
us-east-1
|
US East (N. Virginia) |
us-west-1
|
美國西部(加利福尼亞北部) |
us-west-2
|
美國西部(俄勒岡) |
connect_to_region()有很多屬性,最常用的是
region=‘us-east-1‘ 這裡的值是預設值
aws_access_key_id=xxxx
aws_secret_access_key=xxxx
這裡的憑證與boto的設定檔中的值是一樣的。connect_to_region會從boto的設定檔中讀取憑證,如果沒有boto設定檔,則必須指定。
connect_to_region()返回class boto.ec2.connection.EC2Connection也就是boto.ec2.connection的執行個體化。
下一節講解這個class可以做什嗎?比如conn.get_all_instances()可以獲得你所在地區的all instance reservations
【Amazon EC2 Python API系列】boto的介紹和安裝