Я новичок в python и boto3.
Мне нужно получить данные ниже, используя python, я использовал bash, чтобы получить эти данные.
#!/bin/bash
aws ec2 describe-instances --query "Reservations[*].Instances[*].[Tags[?Key=='Name']|[0].Value,InstanceId,InstanceType,Platform,State.Name,PrivateIpAddress,PublicIpAddress,Placement.AvailabilityZone]" --output text --region me-south-1 >> aws_ec2_details_me_south_1.xlsx
aws elbv2 describe-load-balancers --query "LoadBalancers[*].[LoadBalancerArn,DNSName,LoadBalancerName,Type,Scheme,State.Code]" --output text --region me-south-1 >> aws_elb_details_me_south_1.xlsx
aws autoscaling describe-auto-scaling-groups --query "AutoScalingGroups[*].[AutoScalingGroupName,AutoScalingGroupARN,MinSize,MaxSize,DesiredCapacity,DefaultCooldown]" --output text --region me-south-1 >> aws_autoscaling_me_south_1.xlsx
aws ec2 describe-addresses --query "Addresses[*].[Tags[?Key=='Name']|[0].Value,PublicIp,PrivateIpAddress]" --output text --region me-south-1 >> aws_eip_list_me_south_1.xlsx
aws rds describe-db-instances --query "DBInstances[*].[DBInstanceIdentifier,DBInstanceClass,Engine,EngineVersion,DBInstanceStatus,MasterUsername,Endpoint.Address,MultiAZ,AllocatedStorage,PreferredBackupWindow,BackupRetentionPeriod,StorageEncrypted]" --output text --region me-south-1 >> aws_rds_details_me_south_1.xlsx
Я сделал здесь пример python скрипта,
import boto3
session = boto3.Session(profile_name='default',region_name='me-south-1')
ec2_des = session.client('ec2')
resp = ec2_des.describe_instances(
Filters = [ {
'Name' : 'instance-state-name',
'Values' : [ 'running' ]
} ]
)
for i in resp:
print i(instance-id)
print (i.image-id)
Получение ошибки
Traceback (most recent call last):
File "t4.py", line 11, in <module>
print (i.instance-id)
AttributeError: 'str' object has no attribute 'instance'
Пожалуйста, помогите мне завершить это с пониманием
У нас есть 80+ AWS аккаунт, основная задача - запустить скрипт для получения данных из 80+ аккаунтов за один раз.