В постоянно развивающемся ландшафте систем управления базами данных CockroachDB стала мощным и устойчивым решением для современных приложений. Известная своей масштабируемостью, высокой согласованностью и распределенной архитектурой, CockroachDB является отличным выбором для предприятий, стремящихся обрабатывать большие объемы транзакций и обеспечивать целостность данных на нескольких узлах.
Мы уже рассказывали про установку CockroachDB на Ubuntu. Вы можете посмотреть эту статью по ссылке ниже:
Необходимые условия
- Сервер под управлением одной из следующих операционных систем: AlmaLinux 9.
- Рекомендуется использовать свежую установку ОС, чтобы предотвратить возможные проблемы.
- SSH-доступ к серверу (или просто откройте Terminal, если вы работаете на рабочем столе).
- Активное подключение к Интернету. Интернет-соединение понадобится для загрузки необходимых пакетов и зависимостей.
- Для работы CockroachDB требуется минимум 2 ядра процессора и 4 ГБ оперативной памяти. Однако для оптимальной производительности рекомендуется иметь не менее 4 ядер процессора и 8 ГБ оперативной памяти, особенно в производственных средах.
- Для установки Bpftool и внесения общесистемных изменений вам понадобятся права root или sudo. Убедитесь, что у вас есть необходимые права перед началом процесса установки.
Установка CockroachDB на AlmaLinux 9
Шаг 1. Обновите систему.
Чтобы процесс установки прошел гладко, рекомендуется обновить систему AlmaLinux 9 до последней версии. Откройте терминал и выполните следующую команду:
sudo dnf clean all
sudo dnf update
Эта команда обновит все установленные пакеты до последних версий, включая все исправления безопасности и ошибки.
Шаг 2. Установка необходимых зависимостей.
Для правильной работы CockroachDB требуется несколько дополнительных зависимостей. Установите их, выполнив следующую команду:
sudo dnf install wget curl tar
Шаг 3. Установка CockroachDB.
Откройте веб-браузер и перейдите на официальную страницу загрузки CockroachDB. На этой странице представлена последняя стабильная версия CockroachDB для систем Linux.
На странице загрузки найдите раздел «Linux» и скопируйте ссылку на скачивание последней стабильной версии. На момент написания статьи последней стабильной версией является v22.1.11. Используйте следующую команду для загрузки бинарного файла CockroachDB с помощью wget:
wget https://binaries.cockroachdb.com/cockroach-v22.1.11.linux-amd64.tgz
Чтобы убедиться в целостности загруженного файла, вы можете сравнить контрольную сумму загруженного архива с контрольной суммой, указанной на странице загрузки. Выполните следующую команду, чтобы вычислить контрольную сумму SHA256 загруженного файла:
sha256sum cockroach-v22.1.11.linux-amd64.tgz
Сравните сгенерированную контрольную сумму с той, что указана на странице загрузки, чтобы убедиться, что файл был загружен правильно.
Затем с помощью команды tar распакуйте загруженный архив:
tar -xvf cockroach-v22.1.11.linux-amd64.tgz
Перейдите в распакованный каталог и переместите двоичный файл CockroachDB в системный путь, например /usr/local/bin, чтобы сделать его доступным для всей системы:
cd cockroach-v22.1.11.linux-amd64
sudo mv cockroach /usr/local/bin/
Чтобы убедиться, что двоичный файл CockroachDB имеет необходимые разрешения для запуска, выполните следующую команду:
sudo chmod +x /usr/local/bin/cockroach
Чтобы убедиться, что CockroachDB установлен правильно, выполните следующую команду:
cockroach version
Шаг 4. Инициализация кластера CockroachDB.
Установив CockroachDB, давайте инициализируем одноузловой кластер:
Выберите каталог, в котором CockroachDB будет хранить свои данные. Например, вы можете создать каталог с именем cockroach-data в своем домашнем каталоге:
mkdir ~/cockroach-data
Чтобы запустить одноузловой кластер CockroachDB, выполните следующую команду:
cockroach start-single-node --insecure --listen-addr=localhost --background
Чтобы кластер CockroachDB автоматически запускался при загрузке системы, вы можете создать службу systemd. Создайте файл с именем cockroachdb.service в каталоге /etc/systemd/system со следующим содержимым:
[Unit]
Description=CockroachDB
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/cockroach start-single-node --insecure --listen-addr=localhost
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
Сохраните файл и выполните следующие команды, чтобы включить и запустить службу:
sudo systemctl enable cockroachdb.service
sudo systemctl start cockroachdb.service
Шаг 5. Настройка CockroachDB.
Теперь, когда кластер CockroachDB запущен, давайте выполним некоторые базовые настройки:
Для взаимодействия с кластером CockroachDB вы можете использовать встроенную оболочку SQL. Для доступа к оболочке выполните следующую команду:
cockroach sql --insecure
В оболочке SQL создайте нового пользователя, выполнив следующий оператор SQL:
CREATE USER myuser WITH PASSWORD 'mypassword';
Чтобы создать новую базу данных, выполните следующий оператор SQL:
CREATE DATABASE mydb;
Чтобы разрешить вновь созданному пользователю доступ к базе данных и внесение в нее изменений, предоставьте ему необходимые привилегии:
GRANT ALL ON DATABASE mydb TO myuser;
Чтобы выйти из оболочки CockroachDB SQL, введите q и нажмите Enter.
Шаг 6. Тестирование установки.
Давайте выполним несколько основных тестов, чтобы убедиться, что установка CockroachDB работает правильно:
Снова зайдите в оболочку CockroachDB SQL, на этот раз используя только что созданного пользователя:
cockroach sql --insecure --user=myuser --database=mydb
Внутри оболочки SQL выполните несколько основных команд SQL для взаимодействия с базой данных. Например:
CREATE TABLE users (id INT PRIMARY KEY, name STRING);
INSERT INTO users (id, name) VALUES (1, 'Mey Shela');
SELECT * FROM users;
Эти команды создадут новую таблицу с именем users, вставят в нее строку и извлекут данные.
Шаг 7. Настройте брандмауэр.
Чтобы позволить CockroachDB взаимодействовать с другими узлами и клиентами, необходимо настроить брандмауэр на разрешение необходимого трафика. Выполните следующие команды, чтобы открыть необходимые порты:
sudo firewall-cmd --permanent --add-port=26257/tcp
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
Эти команды откроют порт 26257 для межузловой связи и порт 8080 для веб-интерфейса CockroachDB.
Шаг 8. Проверьте веб-интерфейс CockroachDB.
CockroachDB предоставляет веб-интерфейс для мониторинга и управления кластером. Откройте веб-браузер и перейдите по адресу http://localhost:8080. Вы должны увидеть веб-интерфейс CockroachDB, отображающий обзор кластера и метрики.
Поздравляем! Вы успешно установили CockroachDB. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт CockroachDB.