svetsmirnova (svetasmirnova) wrote,
svetsmirnova
svetasmirnova

Oracle is easy

Пожалуй самым звёздным MySQL-продуктом на прошедшей OOW были JSON UDFs MySQL Plugin for Oracle Enterprise Manager (OEM). Проще всего потестировать плагин, установив OEM на виртуальную машину. Однако здесь есть нюансы.

Я устанавливала OEM для всей комнады MySQL Support и это стоило мне немножко нервов, усиленных временами медленным VPN.

Собственно нюансы. Я предпочитала, где возможно, пользоваться командной строкой.

0. Импортируем virtual machine image, заменяем сетевой адаптер на имеющийся у нас в системе, разрешаем с ней соединяться при помощи rdesktop:

sudo vboxmanage import VBox_EM12cR4.ova --vsys 0 --vmname myhost-vbox04 --vsys 0 --unit 17 \
--disk /data0/vbox/myhost-vbox04/myhost-vbox04.vmdk
sudo vboxmanage modifyvm myhost-vbox04 --bridgeadapter1 'eth0'
sudo vboxmanage modifyvm myhost-vbox04 --vrdeaddress myhost --vrde on --vrdeport 9004

1. Предустановленных 3G RAM - это мало, увеличивайте сразу до 8-ми:

sudo vboxmanage modifyvm myhost-vbox04 --memory 8192

2. 40G диска по умолчанию будет занято после первой же попытки запустить OEM, поэтому его тоже нужно сразу увеличить. Я увеличила до 100G Так как диск у машины в формате vmdk и VirtualBox не поддерживает динамическое увеличение таких дисков, его нужно сначала конвертировать в vdi.

sudo vboxmanage clonehd myhost-vbox04.vmdk myhost-vbox04.vdi --format vdi
sudo vboxmanage modifyhd myhost-vbox04.vdi --resize 102400

3. Конвертирую новый диск обратно в vmdk и меняю старый на новый:

sudo vboxmanage clonehd myhost-vbox04.vdi myhost-vbox04-01.vmdk --format vmdk
sudo vboxmanage storageattach myhost-vbox04 --storagectl "SATA" --device 0 --port 0 \
--type hdd --medium /data0/vbox/myhost-vbox04/myhost-vbox04-01.vmdk

4. Однако добавленные 60G так и будут невидимыми пока мы не изменим существующие partitions. Я делала это при помощи GParted, но тру-юниксоиды могут воспользоваться и системными утилитами.

5. Выключаем машину, eject (как это по-русски?) GParted CD:

sudo vboxmanage storageattach myhost-vbox04 --storagectl "IDE" --port 0 --device 0 --medium emptydrive

6. Загружаемся, заходим root-ом (пароль welcome1) и видим, что хотя система расширенный диск видит, места на partition где находится инсталляция OEM как не было, так и нет:

$ /sbin/fdisk -l

Disk /dev/sda: 107.3 GB, 107374182400 bytes
255 heads, 63 sectors/track, 13054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 13055 104753177+ 8e Linux LVM

Disk /dev/dm-0: 36.5 GB, 36574330880 bytes
255 heads, 63 sectors/track, 4446 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/dm-0 doesn't contain a valid partition table

Disk /dev/dm-1: 7314 MB, 7314866176 bytes
255 heads, 63 sectors/track, 889 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/dm-1 doesn't contain a valid partition table

$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
33G 32G 0 100% /
/dev/sda1 99M 23M 71M 25% /boot
tmpfs 4.0G 0 4.0G 0% /dev/shm

Это потому, что OEM у нас находится в LVM. Исправляем:

$ /sbin/lvm
lvm> pvresize /dev/sda2
lvm> lvextend -L+55G /dev/mapper/VolGroup00-LogVol00
Extending logical volume LogVol00 to 89.06 GB
Logical volume LogVol00 successfully resized
lvm> quit
Exiting.

$ /sbin/resize2fs /dev/mapper/VolGroup00-LogVol00
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/mapper/VolGroup00-LogVol00 is mounted on /; on-line resizing required
Performing an on-line resize of /dev/mapper/VolGroup00-LogVol00 to 23347200 (4k) blocks.
The filesystem on /dev/mapper/VolGroup00-LogVol00 is now 23347200 blocks long.

$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
87G 32G 51G 39% /
/dev/sda1 99M 23M 71M 25% /boot
tmpfs 4.0G 0 4.0G 0% /dev/shm

Теперь можно выйти из-под root-аккаунта и запустить OEM.

7. Но это только если вам не нужно соединяться с виртуальной машиной по ssh. Или же вы можете настроить свою сеть таким образом, что emcc.example.com будет ресолвиться. В моём случае это не так, поэтому я настроила сеть (обычным образом, можно использовать GUI) и заменила значение ORACLE_HOSTNAME в .bashrc и ./start_agent.sh скриптах на свой.

Но это не значит, что вы сможете соединяться с OEM GUI по http с удалённой машины даже при выключенном firewall. Честно говоря, настройку удалённого доступа к OEM GUI я так и не осилила, хожу при помощи rdesktop.

8. Вот теперь в самом деле запускаем как указано в README файле к виртуальной машине: не используем ./start_all.sh, а делаем всё постепенно:

./start_db.sh
/u01/OracleHomes/Middleware/oms/bin/emctl start oms
./start_agent.sh

Да, установку OEM и последующую настройку, особенно на удалённой машине, лучше проводить вот в такой маечке:



Как настроить MySQL Plugin я рассказывать не буду: вот здесь всё подробно. Никаких сложностей не вызывает. Можно мониторить как сервер, находящийся на той же машине, так и удалённый. Лучше покажу немного screenshot-ов.

Только что соединились с сервером на удалённой машине:



И на локальной:



И после того как погрузили локальную при помощи mysqlslap:



А этот странный график из-за того, что машина у нас виртуальная я работает на ней всё медленно:

Tags: mysql, mysql plugin for oem, oem
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 7 comments