boto3モジュール

AWSのサービスをPyhtonからコントロールするためのモジュール(AWS SDK for Python)

AWSドキュメント

AWS SDK for Python (Boto3)

インストール

py -m pip install boto3

インポート

import boto3

インスタンスのスタート・ストップ

client = boto3.client(\
        'ec2',\
        aws_access_key_id='xxxxxxxx',\
        aws_secret_access_key='xxxxxxxx',\
        region_name='ap-northeast-1'\
        )

# Start EC2
response = client.start_instances(InstanceIds=['xxxxxxxx',],)

# Stop EC2
response = client.stop_instances(InstanceIds=['xxxxxxxx',],)

# Start RDS
response = client.start_db_instance(DBInstanceIdentifier='xxxxxxxx')

# Stop RDS
response = client.stop_db_instance(DBInstanceIdentifier='xxxxxxxx')

Athena Create/Drop Database

client = boto3.client(\
        'athena',\
        aws_access_key_id='xxxxxxxx',\
        aws_secret_access_key='xxxxxxxx',\
        region_name='ap-northeast-1'\
        )

response = client.start_query_execution(
        QueryString=f'{'crteate'} database {'xxxxxxxx'}',
        ResultConfiguration={"OutputLocation": s3_query_result}
    )

Athena Create Table

client = boto3.client(\
        'athena',\
        aws_access_key_id='xxxxxxxx',\
        aws_secret_access_key='xxxxxxxx',\
        region_name='ap-northeast-1'\
        )

query1 = file1.read()    # Read Athena Table Definition Codes

response = client.start_query_execution(\
                    QueryString=query1,\
                    ResultConfiguration={"OutputLocation": s3_query_result}
                )

QueryStringは複数行になるので、Athenaのテーブル定義のステートメントをファイルから読み込んだ変数を指定する。