Я пытаюсь выполнить функцию boto3 с локального компьютера с помощью сценариев python fabric3.
Конфигурация на локальном компьютере:
- установленный python3.5 fabric3 *Скрипт 1008 *
- , использующий fabric3 для создания снимка aws rds.
- ssh auth store в
ssh-add ~/.ssh/ec2.pem
Конфигурация на экземпляре aws EC2:
созданы ~ / .aws / config и ~ / .aws / учетные данные и сохранены необходимые настройки, такие как:
a. region=, output in ~/.aws/config aws_access_key_id=,
b. aws_secret_access_key in ~/.aws/credentials
rds открыт для ec2только экземпляр.
Наблюдение:
при выполнении сценария фабрики с локального компьютера запрашивается botocore.exceptions.NoRegionError: You must specify a region.
, если я предоставляю имя региона в boto3.client (region_name = ''), он запросит botocore.exceptions.NoCredentialsError: Unable to locate credentials
означает, что Python Fabric не принимает файлы ~ / .aws / config и ~ / .aws / credentials.
1.Собирает ли Python Fabric учетные данные и конфиги из ~ / .aws?потому что я не хочу предоставлять учетные данные через скрипт фабрики
2.Каков стандартный способ развертывания на основе матрицы в aws-ec2