Boto3 EC2の情報を取得
プログラミングスキル向上を目指し、自分で手を動かしてコードを書いていこうと思う。 まずは、入門レベルから。今回は、「EC2の情報を取得する」コードを書いてみた。
import boto3 client = boto3.client('ec2') response = client.describe_instances() #jsonファイルのReservations から情報を取得、EC2台数分必要なのでfor を使う for instance in response['Reservations']: #Reservations 配下のInstancesから情報を取得、EC2台数分必要なのでfor を使う for instance2 in instance['Instances']: #Instances>Placementから情報を取得 az = instance2['Placement']['AvailabilityZone'] #Instances>Stateから情報を取得 state = instance2['State']['Name'] print("InstanceID:" +instance2['InstanceId'], "Type:" +instance2['InstanceType'], "AZ:" +az, "Status:" +state )
はまったところ。「az」の情報を取得する際に、「Placement」からうまく情報を引っ張れなかった。 JSONの階層を見間違いしていたためである。次回以降は気をつけたい。