Лабораторная работа 1
Создание кластера для СУБД riak
1, Создание узла с операционной системой ubuntu.
1.1. Создать виртуальную машину с установленной на ней ОС ubuntu. Адрес этого узла во
внутренней сети должен быть [Link], адрес шлюза [Link].
1.2. Настройка виртуальной машины
Для ускорения работы выполнить в командной строке команду
sudo apt-get install [Link] virtualbox-
guest-dkms virtualbox-guest-x11 virtualbox-guest-utils
Перезапустить виртуальную машину
2. Инсталляция riak
2.1. Установить пакет для работы по протоколу http в командной строке curl.
sudo apt-get update
sudo apt-get install curl
curl [Link] | sudo apt-key add -
2.2. Установка библиотеки для ubuntu PAM (Pluggable Authentication
Module)
sudo apt-get install libpam0g-dev
2.3. Установка Riak зависимости, используя apt:
sudo apt-get install build-essential libc6-dev-i386 git
2.4. Установка языка Erlang
Загрузка
wget [Link]
Распаковка
tar zxvf otp_src_21.[Link]
Инсталляция
sudo apt-get update
sudo apt-get install erlang
2.5. Инсталляция riak
Загрузка
sudo wget
[Link]
precise/riak_2.2.3-1_amd64.deb
Инсталляция
sudo apt-get update
sudo apt-get install riak
3. Настройка riak
3.1. Редактирование конфигурационного файла riak.
Перейти в каталог, содержащий файл [Link]
cd /etc/riak/[Link]
Выполнить команду ls (просмотр содержимого каталога), найти файл
[Link].
nn@s1:/etc/riak$ ls
[Link] calc_rooms_capacity.rb [Link]
calc_cap_hotel.rb create_hotel_db.rb [Link]
calc_rooms_capacity [Link]
Запустить с правами администратора текстовый редактор gedit и
загрузить в него файл [Link]
sudo gedit [Link]
Внести следующие изменения в файл [Link]. Изменения показаны
для узла с адресом [Link] во внутренней сети.
...
####nodename = riak@[Link]
nodename = riak@[Link]
...
## ring_size = 64
ring_size = 8
...
####[Link] = [Link]:8098
[Link] = [Link]:8098
...
####[Link] = [Link]:8087
[Link] = [Link]:8087
3.2. Создать файл riak-clear для очистки настроек по умолчанию со
следующим содержимым, используя редактор gedit.
sudo rm -rf /var/lib/riak/ring/*
sudo rm -rf /var/lib/riak/bitcask/*
Переместить файл riak-clear в каталог /bin/
sudo cp riak-clear /bin/riak-clear
Сделать файл riak-clear исполняемым
cd /bin
sudo chmod 755 riak-clear
3.3. Установить язык ruby
sudo apt-get install ruby-full
Установить драйвер ruby для riak
gem install riak-client json
4. Создание кластера из трех узлов.
4.1. Создать еще 2 узла методом клонирования, с адресами во внутренней сети
[Link], [Link], адрес шлюза [Link]. Выполнить для каждого узла
операции, указанные в пункте 3.
4.2. Запустить все узлы, проверить командой ping работоспособность внутренней
сети.
4.3. Перейти в 1-й узел с адресом [Link], и подготовить команду для
подключения к нему 2-го узла с адресом [Link].
sudo riak-admin cluster join riak@[Link]
4.4. Просмотреть список предполагаемых изменений в кластере.
sudo riak-admin cluster plan
4.5. Произвести фиксацию изменений
sudo riak-admin cluster commit
4.6. Включить в кластер 3-й узел, выполнив пункты 4.3-4.5 для узла
riak@[Link]
4.7. Просмотр сделанных изменений.
sudo riak-admin member-status
При получении следующего сообщения кластер готов для работы с СУБД riak.
============= Membership ======================
Status Ring Pending Node
--------------------------------------------------
valid 50.0% -- 'riak@[Link]'
valid 25.0% -- 'riak@[Link]'
valid 25.0% -- 'riak@[Link]'