Статья сделана по мотивам не попавшего на INFOSTART EVENT доклада. В одну статью уложить не смог поэтому содержание статей ниже. Первая часть будет обзорная с элементами мяса, остальные будут более «мясные».
Сразу скажу - цель статей не в критике и не в рекламе! Моя цель поделиться накопленными рецептами, болью и тем, что реально понравилось.
В статьях будет обзор Yandex Cloud Managed Service for SQL и немного Yandex Cloud Managed Service for PostgreSQL.
Надеюсь, Вам будет полезно! Поехали!
Для кого статьи:
- Для тех, кто думает о переходе на Managed Service, для тех, кто уже там. Особенно важно тем, кто прочитал только анонсы и по рекламе сделал выводы.
- Фантазерам, которые думают, что облака решат все проблемы.
Сокращения:
- YC – Yandex Cloud
- YC MS – Yandex Cloud Managed Service
- YC MS SQL – Yandex Cloud Managed Service for SQL
- YC MS PSQL – Yandex Cloud Managed Service for PostgreSQL
Содержание статей:
- Как нам живется с Yandex Cloud Managed Service?
- Yandex Cloud Managed Service: создание и перенос баз.
- Yandex Cloud Managed Service: мониторинг, планы обслуживания, бэкапы и выводы.
Читаю и радуюсь, выходит вообще все делается само. Купил, запустил и только знай права раздавай. Сказка, а не жизнь…
Плюсом получаем легкую горизонтальную систему масштабирования. Это как звук добавить или убавить, повернул влево - стало тише, вправо - мощнее.
С чем я согласен из рекламы?
- Разграничение доступа к данным
- Развёртывание виртуальных машин
- Настройка сети
- Установка ОС и ПО
- Обновление СУБД
- Настройка репликации данных
- Безопасность хранилища данных и оборудования
Неупомянутое, но есть:
- Лицензии входят в стоимость
- Поддерживает ТОЛЬКО SQL Server 2016 ServicePack 2.
Частично согласен:
- Резервное копирование
- Интеграция с сервисами Yandex.Cloud
- Инструменты мониторинга
Чего нет:
- Поддержка MS SQL 2019
- Планы обслуживания
- Перенос БД (Способы есть но об этом ниже)
- Забудьте про sa, роли и права. Это важно!
- Все роли теперь назначаются в Yandex Cloud Managed Service, а там только:
DB_DENYDATAREADER, DB_DENYDATAWRITER, DB_DATAREADER, DB_DATAWRITER, DB_DDLADMIN, DB_BACKUPOPERATOR, DB_ACCESSADMIN, DB_SECURITYADMIN и DB_OWNER.
Через MS Managed Studio вы увидите SA и даже можете увидеть поле поменять пароль и прочее, но это как мираж… Вы не сможете применить изменения (но это не точно).
- Не все скрипты будут работать. Точнее так… Будут работать только те скрипты, на которые у вас будут права, но не все права вам доступны. Это касается не только скриптов, но об этом дальше.
2) Если у вас стоит MSSQL ниже 2016 версии, нужно обновляться или забыть про переезд.
Жизненный цикл продуктов MS примерно 10 лет и, если продукт более не получает фиксы безопасности, значит в YC ему путь «Заказан»:
- Старый продукт будет уязвим, а значит будут уязвимы все владельцы Yandex Cloud Managed Service
- Лицензии включены в стоимость владения и если лицензии перестали продаваться, тогда Яндекс не сможет предоставлять Вам владение.
Поэтому в Yandex Cloud Managed Service никогда не будет безвременной поддержки старых версий.
3) Подучите TSQL, не лишним будет завести DBA. Пока не буду объяснять почему, но думаю, все прояснится ближе к выводам.
4) Выберите необходимые вычислительные мощности и создайте готовый к работе кластер. https://console.cloud.yandex.ru/link/managed-sqlserver/
Нужно сразу учесть, выбрав мощности, деньги будут списаны за месяц.
5) Можно почитать часто задаваемые вопросы и ответы: Managed Service for SQL Server. Ответы на вопросы | Yandex.Cloud - Документация
6) «Сложное стало проще, легкое стало сложным» — это пока оставлю без объяснения. По ходу статей к Вам придет понимание.
Правила тарификации для Managed Service for SQL Server
А давайте покрутим и посмотрим. Цены будут показаны на YC MS SQL и YC MS PSQL.
Yandex Cloud Managed Service for SQL:
Минималка (Standard Edition):
Максималка (Standard Edition):
Минималка (Enterprise Edition):
Максималка (Enterprise Edition):
Managed Service for PostgreSQL
Минималка (Standard):
Максималка (Standard):
Минимальная максималка:
Максимальная максималка:
Информация по настройкам, влияющим на цену:
Версия – версия инсталляции. Да, да! YC MS SQL доступен только 2016 версии!!!
Платформа -процессор.
Тип – тип виртуальной машины.
Выводы по ценам, мне кажется, видны сразу. PostgreSQL дешевле.
Все, что влияет на цену, меняется автоматикой, но все ли делается автоматически?
Нет. Есть настройки, которые нужно менять ручками, иначе чуда не произойдет. При этом у YC MS SQL и YC MS PSQL настройки отличаются. Давайте сравним.
YC MS SQL | YC MS PSQL |
Особенности:
- Обратите внимание в YC MS PSQL есть возможность выставить 60 дневное хранение бэкапов, а YC MS SQL такой настройки нет.
В YC MS SQL бэкапы хранятся 7 дней!
Пруф:
https://cloud.yandex.ru/docs/managed-sqlserver/qa/general#default-backup
и
- Начало резервного копирования (UTC) показано время полного бэкапа, но нигде ни написано, когда делаются бэкапы журнала транзакций.
Бэкапы журналов транзакций делаются раз в 15 минут.
Пруф:
- Защита от удаления появилась недавно, пока писал статью спросил ее функционал
- По поводу DataLens я уже писал в статье //infostart.ru/1c/articles/1373546/
Но и это еще не все настройки! Есть настройки, которые пугающим сообщением устрашают простых обывателей и эти настройки никак ни могут заполняться «Автоматически»!
Перечень доступных для изменения настроек СУБД:
Имейте в виду, настройки СУБД сами себя не заполнят! Как вы могли заметить, для PostgreSQL настроек существенно больше и настраивать должен человек, понимающий, что делает.
Надеюсь, миф о автоматическом администрировании рассеян.
YC MS SQL | YC MS PSQL |
Описание основных пунктов:
- Обзор – отображает общую информацию по кластеру, используемые ресурсы, выбранные дополнительные настройки и настройки СУБД
- Хосты – позволяет смотреть мониторинг виртуалки на которой крутится YC MS
- Пользователи -созданные пользователи для баз данных и выданные права.
- Базы данных – перечень созданных баз данных
- Резервные копии – содержит перечень бэкапов и средства для восстановления и бэкапирования
- Операции – лог выполненных операций
- Мониторинг – настроенные виджиты мониторинга и возможность войти Yandex Monitoring
- DataLens – возможность перейти в Yandex DataLens
- SQL - Язык запросов SQL для работы с базами данных PostgreSQL. Подробный справочник по поддерживаемым запросам смотрите в документации PostgreSQL.
На этом обзорная часть окончена.
В следующей статье поговорим о том, как «обойти» нехватку роли dbcreator при переносе базы в Yandex Cloud Managed Service for SQL. Статья будет написана в виде конкретных кейсов.