K2 Cloud API Client
In this article:
K2 Cloud API Client#
Важно
Для работы с K2 Cloud API Client требуется Python 2 ≥ 2.7.9 или Python 3 ≥ 3.4
Для работы с различными API К2 Облака можно использовать утилиты из пакета c2-client.
В состав пакета входят следующие утилиты:
c2-as
— клиент к Auto Scaling API;c2-ct
— клиент к CloudTrail API;c2-cw
— клиент к CloudWatch API;c2-ec2
— клиент к EC2 API;c2-eks
— клиент к EKS API;c2-iam
— клиент к IAM API;c2-paas
— клиент к PaaS API;c2-elb
— клиент к Elastic Load Balancing API;c2-route53
— клиент к Route53 API;c2rc-convert
— утилита конвертации настроек для использования в ОС Windows.
Для управления ресурсами в К2 Облаке с помощью API необходимы кастомизированные версии библиотек python-boto и python-boto3.
Установка#
Все операционные системы#
pip install git+https://github.com/C2Devel/boto.git@@BOTO_VERSION@-@BOTO_RELEASE@
pip install git+https://github.com/C2Devel/boto3.git
pip install git+https://github.com/C2Devel/botocore.git
pip install c2client
Linux#
[user@host ~]$ sudo wget https://copr.fedorainfracloud.org/coprs/c2devel/c2-sdk/repo/epel-6/c2devel-c2-sdk-epel-6.repo \
-O /etc/yum.repos.d/c2devel-c2-sdk-epel-6.repo
[user@host ~]$ sudo yum install python-boto c2-client
[user@host ~]$ sudo wget https://copr.fedorainfracloud.org/coprs/c2devel/c2-sdk/repo/epel-7/c2devel-c2-sdk-epel-7.repo \
-O /etc/yum.repos.d/c2devel-c2-sdk-epel-7.repo
[user@host ~]$ sudo yum install python-boto c2-client
Использование#
Необходимо получить настройки для доступа по API. Сделать это можно в консоли управления облаком. Нажмите на логин пользователя в правом верхнем углу и выберите Профиль Получить настройки доступа к API.
В переменной C2_PROJECT укажите идентификатор своего проекта.
Добавить полученные настройки в переменные окружения:
Для ОС Windows нужно конвертировать файл настроек и экспортировать переменные окружения:
C:\> c2rc-convert path\to\c2rc.sh path\to\c2rc.bat
C:\> call path\to\c2rc.bat
Для OC Linux нужно экспортировать переменные окружения:
source path/to/c2rc.sh
Теперь можно использовать утилиты согласно документации. Например:
c2-ec2 DescribeAvailabilityZones
c2-eks DescribeCluster name backend_production