Cloud Providers

Amazon Web Services

Amazon Web Services

AWS Provider HandBook

Установка AWS CLI                                                                                               
AWS Provider Guide
Amazon Web Services

Change DNS [AWS CLI]

Получение данных DNS записей                                                                        

Получаем список всех DNS зон

aws route53 list-hosted-zones-by-name

Получаем список всех DNS записей

aws route53 list-resource-record-sets \
  --hosted-zone-id ZCOKAAJ9UMS0T \
  | jq '.ResourceRecordSets[] | .Name'

Получаем детали нужной DNS записи

aws route53 list-resource-record-sets \
  --hosted-zone-id ZCOKAAJ9UMS0T \
  | jq '.ResourceRecordSets[] | select (.Name == "xeonmp22.devops.rebrain.srwx.net.")'
{
  "Name": "xeonmp22.devops.rebrain.srwx.net.",
  "Type": "A",
  "TTL": 200,
  "ResourceRecords": [
    {
      "Value": "95.217.219.153"
    }
  ]
}
Удаление DNS записи

Создаём JSON файл, используемый для удаления DNS записи

tee delete.json << 'EOF'
{
  "Comment": "delete this record",
  "Changes": [
    {
      "Action": "DELETE",
      "ResourceRecordSet": {
        "Name": "xeonmp22.devops.rebrain.srwx.net.",
        "Type": "A",
        "TTL": 200,
        "ResourceRecords": [
          {
            "Value": "95.217.219.153"
          }
        ]
      }
    }
  ]
}
EOF

В файлах все значения записей должны строго совпадать ("TTL": 200) и т.п.

Применение удаления DNS записи

aws --region us-east-2 route53 change-resource-record-sets \
  --hosted-zone-id ZCOKAAJ9UMS0T \
  --change-batch file://delete.json
Изменение DNS записи

Создаём JSON файл, используемый для изменения DNS записи

tee update.json << 'EOF'
{
  "Comment": "update this record",
  "Changes": [
    {
      "Action": "UPSERT",
      "ResourceRecordSet": {
        "Name": "xeonmp22.devops.rebrain.srwx.net.",
        "Type": "A",
        "TTL": 400,
        "ResourceRecords": [
          {
            "Value": "158.160.49.98"
          }
        ]
      }
    }
  ]
}
EOF

В файлах все значения записей должны строго совпадать ("TTL": 400) и т.п.

Применение изменения в DNS записи

aws --region us-east-2 route53 change-resource-record-sets \
  --hosted-zone-id ZCOKAAJ9UMS0T \
  --change-batch file://update.json

Yandex Cloud

Yandex Cloud

Yandex Cloud CLI

Установка Yandex CLI                                                                                             

Установка CLI в /opt/yc (~/.bashrc Неизменён)

curl https://storage.yandexcloud.net/yandexcloud-yc/install.sh | \
    bash -s -- -i /opt/yc -n

Добавление конфига в ~/.bashrc

echo -e "\n# Yandex Cloud CLI\n\
if [ -f '/opt/yc/path.bash.inc' ]; then source '/opt/yc/path.bash.inc'; fi\n\
if [ -f '/opt/yc/completion.bash.inc' ]; then source '/opt/yc/completion.bash.inc'; fi\n\
" >> ~/.bashrc

# Применение ~/.bashrc
. ~/.bashrc

Service Key Activation

yc config set service-account-key ~/.ssh/yc.service.key
yc config set folder-id <>
Управление Yandex Cloud
Описание Команда
Cписок ВМ yc compute instance list
Полные данные о ВМ mon-do27 yc compute instance get --full mon-do27
Список сервисных аккаунтов yc iam service-account --folder-id b1gtv3uhmd1feqdajugp list
Список профилей yc config profile list
Указать облако в профиле yc config set cloud-id b1gm6imb36aoic2km8d0
Указать каталог в профиле yc config set folder-id b1gtv3uhmd1feqdajugp
Запустить ВМ yc compute instance start mon-do27

Yandex Cloud

YC Provider Handbook