«Я хочу это попробовать» 🚀 YugabyteDB на KubeCon

Как представитель разработчиков, пребывание на стенде Yugabyte на KubeCon Europe 2022 было очень интересным, с отличными дискуссиями о распределенных базах данных SQL с замечательными людьми. И так много реакций «я хочу это попробовать»! Самое простое — это контейнер docker на вашем ноутбуке:

docker network create -d bridge yb

docker run -d --name yb0 --hostname yb0 --net=yb -p5433:5433 -p7000:7000 yugabytedb/yugabyte:latest yugabyted start --daemon=false --listen yb0 --tserver_flags="ysql_enable_auth=false"

Войти в полноэкранный режим Выйти из полноэкранного режима

Вот и все. Может потребоваться несколько минут на загрузку образа, если это еще не сделано. yugabyted создает и запускает кластер. Вы можете подключиться к нему с помощью всего, что вы используете для PostgreSQL — инструментов, приложений, фреймворков… вы используете те же драйверы, и получаете то же поведение. Почему бы не сделать проще:

docker exec -it yb0 bash -c "PGPASSWORD=yugabyte ysqlsh -P pager=off -h yb0 -p 5433 -U yugabyte yugabyte"

Войти в полноэкранный режим Выйти из полноэкранного режима

Это запускает ysqlsh в контейнере. Это то же самое, что и psql: вы выходите из него с помощью q. Вы также можете подключить любое приложение PostgreSQL к порту 5433 вашего локального хоста.

Из этой командной строки вы создаете своих пользователей, свою базу данных, свою схему… точно так же, как вы это делаете в PostgreSQL. Этого достаточно для проверки совместимости с Postgres. Если вы обнаружите что-то несовместимое, пожалуйста, проверьте проблемы на GitHub или откройте одну. YSQL — это название PostgreSQL API, который повторно использует код Postgres для лучшей совместимости.

С помощью этого контейнера вы получаете возможности PostgreSQL, но с другим слоем хранения: никаких проблем с вакуумом, никакого раздувания, никакого обхода XID… Но вы хотите большего, верно?

Вы хотите масштабироваться:

docker run -d --name yb1 --hostname yb1 --net=yb -p5434:5433 yugabytedb/yugabyte:latest yugabyted start --daemon=false --listen yb1 --tserver_flags="ysql_enable_auth=false" --join yb0 

docker run -d --name yb2 --hostname yb2 --net=yb -p5435:5433 yugabytedb/yugabyte:latest yugabyted start --daemon=false --listen yb2 --tserver_flags="ysql_enable_auth=false" --join yb0

Войдите в полноэкранный режим Выход из полноэкранного режима

С этими двумя дополнительными контейнерами, присоединившимися к кластеру, вы можете поиграть с высокой доступностью. Созданные вами данные будут сбалансированы и реплицированы на трех узлах. И вы можете подключиться к любому узлу. Для масштабирования подключений, обработки данных и хранения достаточно добавить еще узлов.

Вы открыли порт 7000 на первом контейнере, чтобы вы могли проверить плоскость управления в http://localhost:7000 — посмотреть состояние кластера, узлы сервера планшетов, таблицы, разбитые на планшеты… и получить свою бесплатную футболку 👕, чтобы соответствовать солнечным очкам, которые вы получили на KubeCon Valencia!

Теперь, когда вы знаете, как масштабироваться, просто с помощью опции --join в yugabyted, вы можете собрать свой файл docker-compose. Например, чтобы заменить PostgreSQL в Docker Compose, используемом для тестов, я использую те же переменные, что и в образе PostgreSQL — пример здесь. А yugabyted удобен для быстрого запуска, но вы можете иметь больше контроля, запустив все компоненты, как это делаю я, когда демонстрирую высокую доступность и эластичность: https://github.com/FranckPachot/ybdemo/tree/main/docker/yb-lab.

Чтобы получить свою бесплатную футболку, вы присоединились к нашему Slack. Пожалуйста, поздоровайтесь в канале #introduction и, если мы встречались на KubeCon или где-то еще, пожалуйста, упомяните об этом. У нас были отличные обсуждения на стенде. Наша команда мечты была так рада быть там и встретиться с вами.

YugabyteDB
@yugabyte
Хотите присоединиться к нашей банде крутых ребят?! 😎

Мы с нетерпением ждем еще одного замечательного дня на #kubecon! 🚀

Посетите @bron_campbell, @rachel_pescador, Halil Dagli, @FranckPachot, @fritshoogland & Doug Hadfield, на стенде @Yugabyte (S18) & spin to win our exclusive sunglasses & stickers!

09:30 утра — 19 мая 2022 г.

Когда вы закончите, вы можете удалить контейнеры docker:

docker container rm -f yb0
docker container rm -f yb1
docker container rm -f yb2
docker network rm yb
Войти в полноэкранный режим Выйти из полноэкранного режима

Оцените статью
Procodings.ru
Добавить комментарий