Установка Picodata¶
Данный раздел содержит сведения об установке Picodata из готовых пакетов, а также сборке продукта из исходного кода.
Обзор доступных сборок¶
Мы предоставляем готовые пакеты с Picodata для следующих операционных систем:
- RHEL 8–9 и совместимые с ним дистрибутивы, например Rocky Linux
- Fedora 43–44
- РЕД ОС 7.x и 8.x
- Astra Linux 1.7 и 1.8 SE
- Debian 12 "Bookworm" и 13 "Trixie"
- Ubuntu 22.04 (Jammy Jellyfish), 24.04 (Noble Numbat), 26.04 (Resolute Raccoon) и совместимые дистрибутивы
- Семейство Alt Linux на основе платформ p9, p10 и p11
- ROSA Chrome (платформа 2021.1)
Готовые пакеты можно установить как через добавление репозиториев, так и
скачав напрямую — см. инструкции для
отдельных дистрибутивов ниже. Имейте в виду, что готовые пакеты имеют в
качестве "мягкой" зависимости компонент PostgreSQL, содержащий psql —
рекомендуемое приложение для подключения к Picodata. Это означает, что
пакетный менеджер ОС может установить вместе с Picodata также и пакет с
psql.
Picodata также развивает свой форк Tarantool, который имеет ряд технологических отличий от стандартного Tarantool, в том числе поддержку кластерного SQL и дополнительные Rust API. Скачать нашу версию Tarantool вы также можете по инструкциям ниже.
Также доступны:
- ночные сборки мастер-веток наших продуктов
- Docker-образы с Picodata
См. также:
Примечание
Действия по настройке репозиториев Picodata и установке готовых пакетов
следует производить в терминале с правами администратора. Авторизуйтесь
под пользователем root или повысьте привилегии через sudo -i.
Инструкции для дистрибутивов Linux¶
RHEL 8/Rocky 8¶
Импортируйте ключ репозитория Picodata, используя следующую команду в терминале (здесь и далее команды следует вводить с правами администратора):
rpm --import https://download.picodata.io/tarantool-picodata/picodata.gpg.key
Подключите репозиторий:
rpm --import https://download.picodata.io/tarantool-picodata/picodata.gpg.key
echo '
[picodata]
name=Picodata Yum Repo
baseurl=https://download.picodata.io/tarantool-picodata/el/$releasever/$basearch
enabled=1
gpgcheck=1
' > /etc/yum.repos.d/picodata.repo
После успешного выполнения команды в вашей системе появится
дополнительный репозиторий в /etc/yum.repos.d/picodata.repo.
Установите пакет Picodata, скопировав и вставив в терминал следующие команды:
dnf clean all
dnf install -y picodata
Для того чтобы установить только пакет с нашей версией Tarantool, введите следующую команду:
dnf install -y tarantool-picodata
RHEL 9/Rocky 9¶
Создайте файл /etc/yum.repos.d/picodata.repo:
echo '
[picodata]
name=Picodata Yum Repo
baseurl=https://binary.picodata.io/repository/yum/el/$releasever/$basearch/RELEASE
enabled=1
gpgcheck=0' > /etc/yum.repos.d/picodata.repo
Установите Picodata (здесь и далее команды следует вводить с правами администратора):
dnf install -y picodata
Для того чтобы установить только пакет с нашей версией Tarantool, введите следующую команду:
dnf install -y tarantool-picodata
Fedora 43–44¶
Создайте файл /etc/yum.repos.d/picodata.repo:
echo '
[picodata]
name=Picodata Yum Repo
baseurl=https://binary.picodata.io/repository/yum/fedora/$releasever/$basearch/RELEASE
enabled=1
gpgcheck=0' > /etc/yum.repos.d/picodata.repo
Установите Picodata (здесь и далее команды следует вводить с правами администратора):
dnf install -y picodata
Для того чтобы установить только пакет с нашей версией Tarantool, введите следующую команду:
dnf install -y tarantool-picodata
РЕД ОС/RED OS 7.x и 8.x¶
Импортируйте ключ репозитория Picodata, используя следующую команду в терминале (здесь и далее команды следует вводить с правами администратора):
rpm --import https://download.picodata.io/tarantool-picodata/picodata.gpg.key
Подключите репозиторий:
echo "
[picodata]
name=Picodata Yum Repo
baseurl=https://download.picodata.io/tarantool-picodata/redos/\$releasever/\$basearch
enabled=1
gpgcheck=1
" > /etc/yum.repos.d/picodata.repo
Установите пакет Picodata, скопировав и вставив в терминал следующие команды:
dnf clean all
dnf install -y picodata
Для того чтобы установить только пакет с нашей версией Tarantool, введите следующую команду:
dnf install -y tarantool-picodata
Astra Linux 1.7/1.8 SE¶
Подключите репозиторий Picodata, используя следующие команды в терминале (здесь и далее команды следует вводить с правами администратора):
apt-get update
apt-get install -y --no-install-recommends gpg curl apt-transport-https software-properties-common
curl -s https://download.picodata.io/tarantool-picodata/picodata.gpg.key | gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/picodata.gpg --import
chmod 644 /etc/apt/trusted.gpg.d/picodata.gpg
Создайте файл /etc/apt/sources.list.d/picodata.list.
Для версии 1.7 SE:
echo '
deb [arch=amd64] https://download.picodata.io/tarantool-picodata/astra/ 1.7 main
' > /etc/apt/sources.list.d/picodata.list
Для версии 1.8 SE:
echo '
deb [arch=amd64] https://download.picodata.io/tarantool-picodata/astra/ 1.8 main
' > /etc/apt/sources.list.d/picodata.list
Обновите список источников:
apt-get update
Установите пакет Picodata, скопировав и вставив в терминал следующую команду:
apt install picodata
apt install tarantool-picodata
Для работы в режиме Замкнутой программной среды (ЗПС) выполните дополнительную команду:
curl -s https://download.picodata.io/tarantool-picodata/astra/picodata_pub.key -o /etc/digsig/keys/picodata_pub.key
После этого потребуется перезагрузка.
Debian 12–13¶
Подключите репозиторий Picodata, используя следующие команды в терминале (здесь и далее команды следует вводить с правами администратора):
curl -s https://download.picodata.io/tarantool-picodata/picodata.gpg.key | gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/picodata.gpg --import
chmod 644 /etc/apt/trusted.gpg.d/picodata.gpg
Создайте файл /etc/apt/sources.list.d/picodata.list:
. /etc/os-release
echo "
deb [arch=amd64] https://download.picodata.io/tarantool-picodata/debian/ $VERSION_CODENAME main
" > /etc/apt/sources.list.d/picodata.list
Обновите список источников:
apt-get update
Установите пакет Picodata, скопировав и вставив в терминал следующую команду:
apt install picodata
Для того чтобы установить только пакет с нашей версией Tarantool, введите следующую команду:
apt install tarantool-picodata
Ubuntu 22.04, 24.04, 26.04¶
Подключите репозиторий Picodata, используя следующие команды в терминале (здесь и далее команды следует вводить с правами администратора):
curl -s https://download.picodata.io/tarantool-picodata/picodata.gpg.key | gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/picodata.gpg --import
chmod 644 /etc/apt/trusted.gpg.d/picodata.gpg
Создайте файл /etc/apt/sources.list.d/picodata.list:
. /etc/os-release
echo "
deb [arch=amd64] https://download.picodata.io/tarantool-picodata/ubuntu/ $VERSION_CODENAME main
" > /etc/apt/sources.list.d/picodata.list
Обновите список источников:
apt-get update
Установите пакет Picodata, скопировав и вставив в терминал следующую команду:
apt install picodata
Для того чтобы установить только пакет с нашей версией Tarantool, введите следующую команду:
apt install tarantool-picodata
Alt Linux (платформа p10)¶
Подключите репозиторий Picodata, используя следующие команды в терминале (здесь и далее команды следует вводить с правами администратора)):
apt-get install -y gpg curl apt-https
curl -s https://download.picodata.io/tarantool-picodata/picodata.gpg.key | gpg --no-default-keyring --keyring gnupg-ring:/usr/lib/alt-gpgkeys/pubring.gpg --import
echo "
rpm [picodata] https://download.picodata.io/tarantool-picodata/altlinux p10/x86_64 main
rpm [picodata] https://download.picodata.io/tarantool-picodata/altlinux p10/x86_64 debuginfo
rpm-src [picodata] https://download.picodata.io/tarantool-picodata/altlinux p10/x86_64 main
" > /etc/apt/sources.list.d/picodata.list
echo '
simple-key "picodata" {
Fingerprint "2EB992F946D6AD71A035BC5B6F7E9F5C3F63892C";
Name "kdy@picodata.io";
}
' > /etc/apt/vendors.list.d/picodata.list
Обновите список источников:
apt-get update
Установите пакет Picodata, скопировав и вставив в терминал следующую команду:
apt-get install picodata
Для того чтобы установить только пакет с нашей версией Tarantool, введите следующую команду:
apt-get install tarantool-picodata
ROSA Chrome (платформа 2021.1)¶
Подключите репозиторий Picodata, используя следующие команды в терминале (здесь и далее команды следует вводить с правами администратора)):
rpm --import https://download.picodata.io/tarantool-picodata/picodata.gpg.key
echo "
[picodata]
name=Picodata Yum Repo
baseurl=https://download.picodata.io/tarantool-picodata/rosa/\$releasever/\$basearch
enabled=1
gpgcheck=1
" > /etc/yum.repos.d/picodata.repo
Установите пакет Picodata, скопировав и вставив в терминал следующую команду:
dnf install picodata
Для того чтобы установить только пакет с нашей версией Tarantool, введите следующую команду:
dnf install tarantool-picodata
Ночные сборки¶
Подключите репозиторий ночных сборок с помощью следующей команды:
curl -L https://download.binary.picodata.io/tarantool-picodata/install.sh | bash
Внимание!
Одновременное использование репозиториев Picodata для релизных сборок и ночных невозможно!
Docker-образы¶
Доступны Docker-образы с Picodata, в том числе, distroless:
docker pull picodata/picodata:latest
docker pull picodata/picodata:<номер версии>
docker pull picodata/picodata-distroless:<номер версии>
Сборка из мастера:
docker pull docker.binary.picodata.io/picodata:master
docker pull docker.binary.picodata.io/picodata:master-distroless
Примеры команд:
docker pull picodata/picodata:26.2.1
docker pull picodata/picodata:26
docker pull picodata/picodata-distroless:26.2
docker pull docker.binary.picodata.io/picodata:master
Образы собраны на базе ОС Rocky Linux 8, доступны под архитектуры x86 и arm.
Установка из исходного кода¶
Вы можете также собрать Picodata из исходного кода в Linux и macOS, используя инструкции ниже.
Необходимые инструменты¶
- Rust и Cargo 1.98.1 или новее
- cmake 3.16 или новее
- gcc, g++
- libstdc++-static
- openssl
- NodeJS и Yarn 4 (требуются для сборки веб-интерфейса Picodata)
Установка зависимостей для сборки¶
Rust и Cargo¶
Установка Rust и Cargo универсальна для всех поддерживаемых ОС:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"
NodeJS¶
Установите NodeJS для вашей ОС:
RHEL 8/9 и деривативы, Fedora 43–44
curl -sL https://rpm.nodesource.com/setup_lts.x | sudo bash -
sudo dnf install nodejs
Ubuntu 22.04 и 24.04
sudo apt update
sudo apt install -y curl gpg ca-certificates
curl -fsSL https://nodesource.com | sudo -E bash -
sudo apt install -y nodejs
sudo corepack enable
Ubuntu 26.04
sudo apt update
sudo apt install -y curl gnupg ca-certificates
curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash -
sudo apt install -y nodejs
Alt Server p10
su -
apt-get install curl
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash
source ~/.bashrc
nvm install --lts
macOS
Установите NodeJS при помощи пакетного менеджера Brew.
Установка Brew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install node
Yarn¶
Для сборки веб-интерфейса требуется Yarn 4. Рекомендуем использовать Corepack, который сам установит необходимую версию Yarn, поэтому придерживайтесь следующего порядка действий:
- убедитесь, что в системе не используется Yarn, поставляемый в виде пакета для ОС
- включите Corepack:
corepack enable - если предыдущая команда не выполняется из-за отсутствия Corepack,
установите его командой
npm install -g corepack(возможно, потребуются права администратора ОС), после чего выполните командуcorepack enable
Прочие зависимости¶
Далее приведены команды для установки остальных зависимостей под разные ОС.
RHEL 8/9 и деривативы, Fedora 41-43
Только для ОС, основанных на RHEL 8/9:
sudo dnf config-manager --set-enabled powertools
sudo dnf in -y gcc gcc-c++ make perl automake libtool cmake git patch libstdc++-static openssl-devel
Ubuntu 22.04 и 24.04
Установка общих зависимостей для сборки:
sudo apt-get install build-essential git cmake autoconf libtool curl libssl-dev pkg-config -y
Alt Server p10 и p11
Установка общих зависимостей для сборки:
su -
apt-get install -y gcc gcc-c++ cmake git patch libstdc++-devel-static libgomp-devel-static libssl-devel-static autoconf systemd-devel automake make libtool clang
macOS
Сборка под macOS почти не отличается от таковой в Linux. Потребуется macOS 10.15 Catalina, либо более новая версия (11+). Установите актуальные версии Rust и Cargo, а также NodeJS и Corepack.
Получение исходного кода¶
git clone https://github.com/picodata/picodata.git --recursive
Сборка¶
Используйте приведенные ниже команды для сборки Picodata. Для получения debug-версии:
make build
Для получения release-версии:
make build-release-pkg
Исполняемый файл picodata появится в директории target/debug или
target/release соответственно. Далее его следует скопировать в
директорию, входящую в $PATH, например в /usr/bin или
/usr/local/bin.
Проверка установки¶
Когда программное обеспечение Picodata установлено, то можно проверить
наличие в системе основного исполняемого файла picodata, используя
следующую команду:
which picodata
Ответом на нее должно быть значение /usr/bin/picodata, либо — если вы
устанавливали ПО вручную с другим префиксом — иное расположение,
включенное в $PATH. Чтобы убедиться в работоспособности ПО, а также
посмотреть его версию, используйте следующую команду:
picodata --help
В состав ПО также включены юнит-тесты, позволяющие проверить работоспособность основных функций. Юнит-тесты можно запустить следующей командой:
picodata test
Пример вывода команды:
running 6 tests
test test_traft_pool ... ok
test test_storage_peers ... ok
test test_storage_state ... ok
test test_storage_log ... ok
test test_mailbox ... ok
test test_version ... ok
test result: ok. 6 passed; 0 failed; finished in 0.88s
Обновление Picodata¶
См. Обновление кластера.
Удаление Picodata¶
Порядок действий для удаления Picodata:
- перед удалением необходимо остановить все запущенные на данном хосте инстансы Picodata
- для каждого инстанса требуется удалить его рабочую директорию (instance_dir)
- если Picodata была установлена из готового пакета для определенной ОС,
то следует удалить этот пакет, используя системный менеджер пакетов
(например,
sudo apt remove picodataилиsudo dnf remove picodata) - если Picodata была собрана из исходного кода, то необходимо удалить
исполняемый файл
picodata. Если этот файл был ранее помещен в одну из директорий, входящих в$PATH, то следует явно удалить его оттуда:sudo rm -rf $(which picodata). После этого следует удалить директорию с Git-репозиторием Picodata - после удаления следует удостовериться, что команда
which picodataсигнализирует об отсутствии исполняемого файлаpicodataв$PATH
См. также: