LINUX.ORG.RU
ФорумAdmin

ОСь Oracle Linux Server (перенос приложения с системного диска vda на другой)

 


0

1

Добрый день. Есть ВМ (openStack) с Осью Oracle Linux Server release 7.9 NAME=«Oracle Linux Server» VERSION=«7.9» ID_LIKE=«fedora» на системном диске vda установлен Nexus3 (opt)

  • NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
  • vdb 252:16 0 20G 0 disk
  • └─vg_oracle-lv_oracle 251:0 0 20G 0 lvm /oracle
  • vda 252:0 0 40G 0 disk
  • ├─vda2 252:2 0 39.5G 0 part /
  • └─vda1 252:1 0 500M 0 part /boot

df -h

  • Filesystem Size Used Avail Use% Mounted on
  • devtmpfs 2.9G 0 2.9G 0% /dev
  • tmpfs 3.0G 0 3.0G 0% /dev/shm
  • tmpfs 3.0G 54M 2.9G 2% /run
  • tmpfs 3.0G 0 3.0G 0% /sys/fs/cgroup
  • /dev/vda2 39G 16G 22G 44% /
  • /dev/mapper/vg_oracle-lv_oracle 20G 3.7G 16G 19% /oracle
  • /dev/vda1 497M 209M 289M 42% /boot
  • tmpfs 595M 0 595M 0% /run/user/1033

  • /dev/vda1: LABEL=«/boot» UUID=«3a30dfba-593b-4f53-9e0c-e565c85063ca» TYPE=«xfs»
  • /dev/vda2: UUID=«323b3d17-8a3e-4dd4-a89a-30a8deff532c» TYPE=«ext4»
  • /dev/mapper/vg_oracle-lv_oracle: LABEL=«oracle» UUID=«a088937d-3f8e-4e58-b7d7-e66a5dd3bd18» UUID_SUB=«90a0e96f-f0c2-468b-8f09-e8cb39579b85» TYPE=«btrfs»
  • /dev/vdb: UUID=«CfewRo-Kesl-lFBq-tagA-No65-Wnaa-2eN6vP» TYPE=«LVM2_member»

Как переместить nexus3 c сис.диска vda на vdb /dev/mapper/vg_oracle-lv_oracle (в стеке доп.диск легче ширить).



Последнее исправление: ilya_nick (всего исправлений: 5)

Изучи разметку: https://www.linux.org.ru/help/markdown.md

Отредактируй сообщения используй синтаксис разметки для помещения блоков кода.

Используй кнопку «Предросмотр» дабы удостовериться, что сообщение выглядит так, как ты ожидаешь.

kostik87 ★★★★★
()
Ответ на: комментарий от ilya_nick

Плохо исправил.

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vdb 252:16 0 20G 0 disk 
└─vg_oracle-lv_oracle 251:0 0 20G 0 lvm /oracle
vda 252:0 0 40G 0 disk 
├─vda2 252:2 0 39.5G 0 part / 
└─vda1 252:1 0 500M 0 part /boot

Должно быть вот так.

Но тебе уже ответили.

kostik87 ★★★★★
()

к ln -s посоветую еще глянуть в сторону mount --bind с ним вылазит меньше косяков с правами доступа, к примеру, работает даже в случае chroot.

pfg ★★★★★
()
Последнее исправление: pfg (всего исправлений: 1)
Ответ на: комментарий от pfg

opt в корне / (vda диск без lvm)

lvs

  • LV VG Attr LSize
  • lv_oracle vg_oracle -wi-ao—- <20.00g

pvs

  • PV VG Fmt Attr PSize PFree
  • /dev/vdb vg_oracle lvm2 a– <20.00g 0

как это сделать ?

ilya_nick
() автор топика
Ответ на: комментарий от Vsevolod-linuxoid

исправил. opt в корне / vda диска

lvs
  LV        VG        Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv_oracle vg_oracle -wi-ao---- <20.00g

pvs

 pvs
  PV         VG        Fmt  Attr PSize   PFree
 /dev/vdb   vg_oracle lvm2 a--  <20.00g    0
ilya_nick
() автор топика
Ответ на: комментарий от ilya_nick

То есть ты хочешь чтобы весь /opt оказался на /dev/vdb, верно?

Тут два варианта:

  • Создать директорию в /oracle и переместить туда все данные из /opt, после чего сделать или mount --bind или симлинк на новое расположение.

  • Создать для /opt отдельный LV на /dev/vdb, для чего нужно или уменьшить vg_oracle-lv_oracle, или расширить /dev/vdb.

Нужно перед выбором ещё узнать, используется или нет SELinux и какая ФС у тебя сейчас. Покажи выводы:

df -hT
cat /etc/selinux/config
Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от Vsevolod-linuxoid

весь opt, там установлен nexus /opt/nexus

 ll
total 96
drwxr-xr-x  3 nexus nexus  4096 Jun  1 12:01 bin
drwxr-xr-x  2 nexus nexus  4096 Jun  1 11:45 deploy
drwxr-xr-x  7 nexus nexus  4096 Jun  1 12:53 etc
drwxr-xr-x  5 nexus nexus  4096 Jun  1 11:45 lib
-rw-r--r--  1 nexus nexus   651 May 19 16:15 NOTICE.txt
-rw-r--r--  1 nexus nexus 17321 May 19 16:15 OSS-LICENSE.txt
-rw-r--r--  1 nexus nexus 41954 May 19 16:15 PRO-LICENSE.txt
drwxr-xr-x  3 nexus nexus  4096 Jun  1 11:45 public
drwxr-xr-x  3 nexus nexus  4096 Jun  1 11:45 replicator
drwxr-xr-x 22 nexus nexus  4096 Jun  1 11:45 system
 df -hT
Filesystem                      Type      Size  Used Avail Use% Mounted on
devtmpfs                        devtmpfs  2.9G     0  2.9G   0% /dev
tmpfs                           tmpfs     3.0G     0  3.0G   0% /dev/shm
tmpfs                           tmpfs     3.0G   54M  2.9G   2% /run
tmpfs                           tmpfs     3.0G     0  3.0G   0% /sys/fs/cgroup
/dev/vda2                       ext4       39G   16G   22G  44% /
/dev/mapper/vg_oracle-lv_oracle btrfs      20G  3.7G   16G  19% /oracle
/dev/vda1                       xfs       497M  209M  289M  42% /boot
tmpfs                           tmpfs     595M     0  595M   0% /run/user/1033
cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted

vdb легче поширить через openstack

ilya_nick
() автор топика
Ответ на: комментарий от ilya_nick
-rw-r--r--.  1 root   root   143111803 Jul  5  2021 jdk-8u261-linux-x64.tar.gz
-rw-r--r--   1 root   root   216219704 May 19 17:27 latest-unix.tar.gz
drwxr-xr-x  10 nexus  nexus       4096 Jun  1 11:45 nexus
drwxr-xr-x   3 nexus  nexus       4096 Jun  1 11:45 nexusdata
drwxr-xr-x.  2 zabbix zabbix      4096 Jul  5  2021 zabbix

opt

ilya_nick
() автор топика
Ответ на: комментарий от ilya_nick

Кхм, странная разметка…

/ на ext4 нормален, как и /boot на xfs, но сочетание странное, обычно их на одной ФС делают (в смысле на одной и той же, то есть ext4+ext4 или xfs+xfs). Именно странное, проблем само по себе это не приносит.

А вот зачем было делать btrfs поверх LVM в /oracle я не понимаю. Как бы фича btrfs именно в том, что там есть свой механизм subvolume, в отличии от классических ФС, так что это не дает никаких преимуществ, но в теории может вызвать деградацию производительности. ЕМНИП, под btrfs рекомендуют выделять голые разделы или блочные устройства целиком.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 3)
Ответ на: комментарий от ilya_nick

Можно вместо переноса всего /opt целиком переместить только /opt/nexus и /opt/nexusdata, никто не запрещает.

И есть куча вариантов с размещением переносимых данных:

  • на /oracle в новой директории, которая будет mount --bind на старое расположение (симлинк скорее всего не сработает нормально из-за включенного SELinux, при этом в любом случае при переезде нужно не забыть про его политики и скопировать нужные метки вместе с файлами).

  • на новом LV, который мы создадим на vg_oracle

    • на добавленном в /dev/vdb месте

    • на освободившемся на vg_oracle месте после сжатия lv_oracle

  • на совершенно новом диске /dev/vdc — почему нет, собственно?

И во всех сценариях, кроме первого, нам ещё нужно ФС для раздела нового выбрать: ext4, xfs или btrfs.

Как ты хочешь? Все варианты рабочие и выполнимые.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 3)
Ответ на: комментарий от ilya_nick

Ответ на то, что ты удалил:

При создании вм в стеке, автоматом диск vda подключается, возможно такие настройки забиты. А второй диск vdb - да, обычно ext4 размечаем. Как все это поправить ?

А это нужно править? То есть может у того, кто сделал btrfs на LVM была причина, я не знаю. В некоторых ситуациях это оправданная конфигурация.

Если бы у меня не было ограничений на то, как мне можно или нет действовать, я бы добавил диск /dev/vdc , сделал из него PV, отдал целиком в новую VG, потом сделал там новый LV, отформатировал его в XFS, временно примонтировал в /new_opt, скопировал бы все данные из /opt с сохранением всех атрибутов, включая метки SELinux, после чего удалил бы всё в /opt, отмонтировал бы /new_opt и занес в /etc/fstab запись о том, что мой новый LV нужно монтировать в /opt, после чего mount -a.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от ilya_nick

Ответ на удаленный комментарий:

Понял, лучше так: на новом LV, который мы создадим на vg_oracle на добавленном в /dev/vdb месте. Так лучше.

Какую ФС хочешь? ext4, xfs, btrfs? Я бы взял xfs или ext4. У xfs бесконечные иноды, у ext4 есть возможность сжимать ФС без переформатирования заново.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от ilya_nick

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

Вспомнил, что есть ещё вариант создать на btrfs отдельный subvolume для нового /opt… короче, это Linux, вариантов разметки больше, чем я могу описать.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

спасибо. думаю ext4 обычно делаем так (пример подключения нового диска)

pvcreate /dev/sdb
vgcreate vg01 /dev/sdb
lvcreate -l 100%FREE vg01 
mkfs.ext4 /dev/mapper/vg01-lvol0

mkdir /u01
mount /dev/vg01/lvol0 /u01

vi /etc/fstab
/dev/mapper/vg01-lvol0  /u01                    ext4    defaults        1 2
ilya_nick
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.