일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 테라폼
- Athena
- dns
- ncp
- route table
- Subnet
- AWS
- NaCl
- storage gateway
- Jenkins
- Linux
- AD
- Storage
- lambda
- security group
- Python
- S3
- Windows
- CloudFront
- 윈도우
- EC2
- 네이버 클라우드 플랫폼
- terraform
- FSX
- ALB
- RDS
- 도메인
- VPC
- CLI
- Dedup
Archives
- Today
- Total
끄적이는 보송
[Python] EC2 Instance 리스트 조회하여 필요한 정보 CSV로 추출하기 본문
반응형
Python으로 EC2 Instance의 Name, ID, Private IP, Public IP를 조회하여 CSV파일로 추출하는 코드
import boto3
import csv
YOUR_REGION = 'ap-northeast-2'
# Create an EC2 client
ec2 = boto3.client('ec2', region_name=YOUR_REGION)
# Retrieve all instances (both running and stopped)
instances = ec2.describe_instances()
# Create a list to hold the instance details
instance_details = []
# Append the details of each instance to the list
for reservation in instances['Reservations']:
for instance in reservation['Instances']:
instance_id = instance['InstanceId']
name = ''
for tag in instance['Tags']:
if tag['Key'] == 'Name':
name = tag['Value']
break
private_ip_address = instance.get('PrivateIpAddress', '')
public_ip_address = instance.get('PublicIpAddress', '')
instance_details.append({'Name': name, 'Instance ID': instance_id, 'Private IP': private_ip_address, 'Public IP': public_ip_address})
# Write the instance details to a CSV file
with open('instance_details.csv', 'w', newline='') as file:
writer = csv.DictWriter(file, fieldnames=['Name', 'Instance ID', 'Private IP', 'Public IP'])
writer.writeheader()
for instance in instance_details:
writer.writerow(instance)
반응형
'STUDY > 스크립트&코드' 카테고리의 다른 글
[Python] Python을 이용해 AWS Security Group 생성하기 (0) | 2023.02.20 |
---|---|
VIM에 스크립트 복사 붙여넣기가 잘 안될 때 (1) | 2023.02.13 |
[AWS] 모든 RDS의 FreeStorageSpace를 불러오는 쉘 스크립트 작성해보기 (0) | 2023.02.13 |
Comments