Где находится плагин управления ключами aws для MariaDB в Ubuntu 18.04? - PullRequest
0 голосов
/ 27 августа 2018

Я следовал инструкциям здесь https://mariadb.com/kb/en/library/aws-key-management-encryption-plugin-setup-guide/#installation и добавил соответствующий репозиторий для MariaDB в мою установку Ubuntu 18.04. Затем я попытался установить плагин управления ключами aws, но этот пакет не найден. Я провел много времени в Google, пытаясь выяснить, где он находится, и до сих пор не могу понять, как его установить.

Кто-нибудь сталкивался с этой проблемой и / или кто-нибудь знает, как мне установить этот плагин? Я скачал список пакетов и не могу найти ничего, связанного с aws.

Ответы [ 4 ]

0 голосов
/ 29 мая 2019

Для тех из вас, кто использует Docker, я создал образ Docker , который создает плагин управления ключами AWS из исходного кода. Полученный aws_key_management.so совместим с официальными образами Docker для MariaDB .

Чтобы сделать aws_key_management.so, сделайте следующее:

docker run --name aws_key_management_build creemama/mariadb-aws_key_management-plugin-build:latest
docker cp aws_key_management_build:/usr/local/src/build-mariadb/plugin/aws_key_management/aws_key_management.so .

Проверьте Dockerfile для шагов, используемых для создания плагина.

0 голосов
/ 10 марта 2019

Мне удалось собрать кусочки для компиляции плагина aws_key_management из исходного кода CentOS 7.

установить зависимости сборки

yum-builddep -y mariadb-server
yum install -y git \
    gcc \
    gcc-c++ \
    bison \
    libxml2-devel \
    libevent-devel \
    rpm-build

загрузить источник MariaDB

cd /usr/local/src
git clone --branch 10.3 https://github.com/MariaDB/server.git

запустить CMake, чтобы прочитать MariaDB для сборки

mkdir /usr/local/src/build-mariadb
cd /usr/local/src/build-mariadb
cmake -DRPM=centos7 \
      -DPLUGIN_AWS_KEY_MANAGEMENT=DYNAMIC \
      -DAWS_SDK_EXTERNAL_PROJECT=1 \
      -DNOT_FOR_DISTRIBUTION=1 \
      ../server

сборка MariaDB

make aws_key_management

копировать плагин aws_key_management

cp ./plugin/aws_key_management/aws_key_management.so \
   /usr/lib64/mysql/plugin/aws_key_management.so
0 голосов
/ 20 марта 2019

Основано на ответе OracleJavaNet (https://stackoverflow.com/a/55083209/4683164),. Я собрал свой собственный мини-учебник по Ubuntu (протестирован 16.04 и 18.04):

Часть 1. Установите MariaDB

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://sfo1.mirrors.digitalocean.com/mariadb/repo/10.3/ubuntu bionic main'

Отредактируйте /etc/apt/sources.list и раскомментируйте строку deb-src для репозитория (внизу файла)

apt-get update
sudo apt-get install mariadb-client-10.3 mariadb-server-10.3

Часть 2. Установите плагин aws_key_management

Обратите внимание, что установка DCMAKE_CXX_FLAGS в c ++ 11 вместо gnu ++ 11 приводит к ошибкам компиляции!

sudo apt-get install ncurses-dev libcurl4-openssl-dev uuid-dev libssl-dev
cd /tmp && sudo apt-get source mariadb-server-10.3
cd /tmp/mariadb-10.3*
sudo cmake -DCMAKE_CXX_FLAGS=-std=gnu++11 -DPLUGIN_AWS_KEY_MANAGEMENT=DYNAMIC -DAWS_SDK_EXTERNAL_PROJECT=1 -DNOT_FOR_DISTRIBUTION=1
sudo make aws_key_management
sudo cp -R /tmp/mariadb*/plugin/aws_key_management/aws_key_management.so /usr/lib/mysql/plugin && chmod 644 /usr/lib/mysql/plugin/aws_key_management.so
0 голосов
/ 05 марта 2019

Да, это намеренно. К сожалению, мы не можем распространять плагин aws_key_management - тот факт, что мы делали это раньше, был ошибкой.

Этот плагин использует (и связан с) AWS C ++ SDK, доступный по лицензии Apache 2.0. И эта лицензия не совместима с GPLv2.

Вы можете создать этот плагин самостоятельно, используя опцию cmake -DNOT_FOR_DISTRIBUTION = 1, плагин будет собран, и вы получите предупреждение о том, что результат не GPL и не может быть распространен.

Если мы найдем замену для AWS C ++ SDK, которая использует лицензию, совместимую с GPLv2, мы сможем переключиться на нее и снова распространить плагин.

1010 * Reference *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...