Нужна помощь по архитектуре

276 просмотров
Перейти к первому непрочитанному сообщению

Denis Loshakov

не прочитано,
10 мая 2013 г., 07:22:4510.05.2013
– openstac...@googlegroups.com
Добрый день, нужна помощь/консультация по архитектуре Openstacka, особенно про Cinder и около него.
Так же тупик с Open vSwitch.
Заранее спасибо.

yashumitsu

не прочитано,
13 мая 2013 г., 05:41:4613.05.2013
– openstac...@googlegroups.com
Здравствуйте!

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

 

Denis Loshakov

не прочитано,
13 мая 2013 г., 08:56:4713.05.2013
– openstac...@googlegroups.com
Добрый день, в целом все просто, для меня пока так и остается тайной, как построить классический кластер (2 и более copmpute нод + shared схд (iscsi)).
Т.е. у Vmware все просто, есть ноды, есть схд (iscsi), подключаем к одной ноде, vmsf, и далее цепляем уже к другим нодам.
А как быть тут, допустим я презентую его как raw диск, дык cinder хочет его как LVM использовать и понеслось, тут у меня шаблон и ломается.
Какая FS должна использоваться и т.д.

П.С. схд не брендовый, скажем так, пока это Linux+iscsi, в будущем планируется что-то другое, но обязательно iscsi.

понедельник, 13 мая 2013 г., 12:41:46 UTC+3 пользователь yashumitsu написал:

yashumitsu

не прочитано,
13 мая 2013 г., 18:19:2013.05.2013
– openstac...@googlegroups.com
OpenStack разделяет дисковые устройства на два подвида[1]:
  • "Ephemeral Storage" – первичный диск виртуальной машины, создаваемый на основе образа Glance. Представляет из себя файл формата qcow2, размещаемый в директории /var/lib/nova/instances compute-нод;
  • "Volume Storage" – это область Cinder, подобное Amazon EBS, так называемое "блочное устройство как сервис";
Вариант размещения "Ephemeral Storage" на общем хранилище схож с VMware vmfs, за тем исключением что настраивать всё придется самому: понадобится кластерная файловая система (например GFS/OCFS2, GlusterFS) для обеспечения одновременного монтирования '/var/lib/nova/instances' на всех нодах, также потребуется внести небольшие правки[2] в конфигурацию для поддержки живой миграции.

"Volume Storage" используется при случае потребности виртуальной машины в дополнительном дисковом пространстве: внутрь VM презентуется блочное устройство, без файловой системы.

Конфигурация Cinder не ограничивается iSCSI+LVM, вариантов множество – https://wiki.openstack.org/wiki/CinderSupportMatrix

Cinder служит посредником между вызовами интерфейса OpenStack и Хранилищем, выполняя внутри себя заскриптованные последовательности команд (код драйверов по ссылке [3]). Тем самым, если хочется как можно проще, примеры адаптеров непосредственно выполняющих команды на СХД (см. HP и EMC), вы можете транслировать на свою инфраструктуру.
Дополнительно, в версии Grizzly, Cinder научился управлять параллельно несколькими разными типами хранилищ[4].

Можно обойтись без Ephemeral Storage, используя только Volume, функция называется "Boot from volume", однако она таит в себе значительные неудобства:

   - требует дополнительных действий при создании VM, а в этом случае web-интерфейс Horizon несколько теряет в удобстве;
   - выделение Volume происходит с большими затратами чем Ephemeral, что значительно увеличивает время создания виртуальной машины.


К сожалению, OpenStack пока не умеет High availability даже в простейшем виде – в случае отказа одного из серверов, виртуалки автоматически не перезапустятся на другой ноде.

Написанное относится к OpenStack + KVM, возможно с другими гипервизорами ситуация в чём-то отличается.


Denis Loshakov

не прочитано,
14 мая 2013 г., 05:18:0814.05.2013
– openstac...@googlegroups.com
Спасибо за столь подробный ответ.

На сколько я понял, нормально с iscsi cinder-openstack работает только с теми схд, для которых есть драйвера (hp, emc и т.д.), если для твоего схд нет драйверов (к примеру Open-E - http://www.open-e.com/), то прямая дорога к GFS/OCFS2, GlusterFS, Ceph или NFS.

Про Ephemeral Storage/Volume Storage буду читать, я понимаю в чем различия, но не совсем понятно как тогда создавать VM, без Volume Storage/Boot from volume, если не выбирать этого, то VM просто не видит диска.


вторник, 14 мая 2013 г., 1:19:20 UTC+3 пользователь yashumitsu написал:

yashumitsu

не прочитано,
14 мая 2013 г., 12:38:0814.05.2013
– openstac...@googlegroups.com
Добрый день.

On Tuesday, May 14, 2013 1:18:08 PM UTC+4, Denis Loshakov wrote:
На сколько я понял, нормально с iscsi cinder-openstack работает только с теми схд, для которых есть драйвера (hp, emc и т.д.), если для твоего схд нет драйверов (к примеру Open-E - http://www.open-e.com/), то прямая дорога к GFS/OCFS2, GlusterFS, Ceph или NFS.

К сожалению, не нашел упоминаний о поддержке Open-E в Cinder, видимой такой инициативы пока не возникало. 

OpenStack не диктует определенный формат используемых технологий, а старается адаптироваться ко всему. Выбор и комбинирование средств зависит от инженера.
 
Про Ephemeral Storage/Volume Storage буду читать, я понимаю в чем различия, но не совсем понятно как тогда создавать VM, без Volume Storage/Boot from volume, если не выбирать этого, то VM просто не видит диска.

Хм, вы используете образ в формате qcow2 и он не грузится? А, например, если его запустить в VirtualBox, всё в порядке?

Наличие Volume Storage никак не сказывается на работе VM. "Boot from volume" делает следующее: на подготовленный volume, разворачивает образ и создает виртуальную машину с указанием этого диска как первичного. 

Оба способа должны работать одинаково.

Denis Loshakov

не прочитано,
15 мая 2013 г., 04:05:3715.05.2013
– openstac...@googlegroups.com
Добрый день, да, у Open-E и Oenstack ничего нету, но на данный момент open-e, просто как вариант, т.е. не факт что мы его будем покупать и использовать.
Процесс создания ВМ выглядит так (по архитектуру, 4 сервера, 1 - management, 2 - compute, 1 - nfs share). Сначала создается volume (к примеру 5ГБ), далее создается instance из flavour (в котором я конечно указываю какие-то цифры на RootDisk/EphemeralDisk, но в последствии они не играют никакой роли, могу написать хот 5TB) и уже в закладке VolumeOptions я выбираю Boot from volume и указываю volume на 5gb. Если этого не сделать, то ВМ просто не видит дисков (что логично). Ну и в итоге ВМ грузится, видит весь volume на 5gb, все ок.
Смущает то, зачем писать что-то в Flavour - RootDisk/EphemeralDisk.
А так же ваша фраза "Можно обойтись без Ephemeral Storage, используя только Volume, функция называется "Boot from volume", однако она таит в себе значительные неудобства", если не делать Boot from volume, то машина просто не видит дисков.

Спасибо.

вторник, 14 мая 2013 г., 19:38:08 UTC+3 пользователь yashumitsu написал:

Ilya Alekseyev

не прочитано,
15 мая 2013 г., 04:08:4315.05.2013
– openstac...@googlegroups.com
А что вы подразумеваете под "машина просто не видит дисков"? Дисков нет в /dev/ ?


15 мая 2013 г., 12:05 пользователь Denis Loshakov <dlos...@gmail.com> написал:

--
Вы получили это сообщение, поскольку подписаны на группу Russian OpenStack Community.
 
Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес openstack-russ...@googlegroups.com.
Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу openstac...@googlegroups.com.
Перейдите в группу по ссылке http://groups.google.com/group/openstack-russia?hl=ru.
Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out.
 
 

yashumitsu

не прочитано,
15 мая 2013 г., 05:01:1515.05.2013
– openstac...@googlegroups.com
Извиняюсь, сам запутался.

На RootDisk - разворачивается образ и его размер зависит от размера выбранного образа. Через flavor его нельзя сделать меньше чем он есть, а если указать больше – получим тот же раздел и неразмеченную область диска. Разумно указывать в 0.
Ephemeral Storage - это дополнительный диск к Root Disk, в формате qcow2, лежащий рядом с ним. Определяется в системе ещё одним блочным устройством (/dev/vdX).

Зайдите на Compute Node где запущена виртуальная машина, выполните: 'virsh list', и 'virsh edit $vm_id' с указанием имени виртуальной машины.

Объекты <disk> указывают на используемые файлы, посмотрите на них через qemu-img:

~# qemu-img info /var/lib/nova/instances/479f7815-95fe-4bb2-bb61-f747af5eeaf2/disk
image: disk
file format: qcow2
virtual size: 4.9T (5368709120000 bytes)
disk size: 1.8M
cluster_size: 65536

Область размером 4.9T, но на самом деле столько не занимающая из-за Copy-on-write формата.


среда, 15 мая 2013 г., 12:05:37 UTC+4 пользователь Denis Loshakov написал:

Denis Loshakov

не прочитано,
15 мая 2013 г., 05:13:3815.05.2013
– openstac...@googlegroups.com
Добрый день, нет, при инсталяции просто некуда ставить ОС, т.е. дисков нет.

среда, 15 мая 2013 г., 11:08:43 UTC+3 пользователь Ilya Alekseyev написал:

Denis Loshakov

не прочитано,
15 мая 2013 г., 05:19:4315.05.2013
– openstac...@googlegroups.com
Так, теперь начинаю понимать.
Вот как выглядит у меня:
image: volume-c48273ab-a5d7-4969-8f2f-1499bf8975b1
file format: raw
virtual size: 5.0G (5368709120 bytes)
disk size: 901M

Странно что у меня он raw, при этом в явном виде через dashboard это не задается, буду экперементировать, спасибо.

среда, 15 мая 2013 г., 12:01:15 UTC+3 пользователь yashumitsu написал:

yashumitsu

не прочитано,
15 мая 2013 г., 06:41:3115.05.2013
– openstac...@googlegroups.com
1. Уточните пожалуйста, как у вас работает Cinder, через NFS?
2. Что вы имеете в виду под инсталляцией ОС? Грузитесь с некоего установочного диска?
3. Быть может используемая ОС не содержит драйверов virtio (паравиртуальные драйверы блочных и сетевых устройств)?


среда, 15 мая 2013 г., 13:19:43 UTC+4 пользователь Denis Loshakov написал:

Denis Loshakov

не прочитано,
15 мая 2013 г., 06:53:2815.05.2013
– openstac...@googlegroups.com
1 - да, сейчас на compute нодах /var/lib/nova/instances это nfs mount
cinder.conf:
volume_driver=cinder.volume.drivers.nfs.NfsDriver
nfs_shares_config=/etc/cinder/nfs_shares.conf
nfs_sparsed_volumes=true
И т.д. по докам с openstack.org (live migration работает)

2 - В glance импортирован iso диск centos_minimal (инсталляционный), с него и гружусь.
3.1 - Если использовать процесс - VolumeCreate, LaunchInstance, VolumeOpitions, BootFromVolume... то инсталляция видит диск и все ставиться и работает.
3.2 - Если использовать процесс - LaunchInstance и не давать никаких volume, то инсталляция не видит диск куда ставит.


среда, 15 мая 2013 г., 13:41:31 UTC+3 пользователь yashumitsu написал:

yashumitsu

не прочитано,
15 мая 2013 г., 08:20:4915.05.2013
– openstac...@googlegroups.com
В случае 3.2, Root Disk'ом выступает iso-образ, а Ephemeral служит диском под устанавливаемую ОС.

Попробуйте следующий вариант flavor:

Root Disk: 0
Ephemeral Disk: 10Gb

В приближенных к вашим условиях, у меня всё получилось, конфигурация libvirt:

    <disk type='file' device='cdrom'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/var/lib/nova/instances/5a4b0ab6-9578-4933-8190-a5bec50d7415/disk'/>
      <target dev='hda' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/var/lib/nova/instances/5a4b0ab6-9578-4933-8190-a5bec50d7415/disk.local'/>
      <target dev='vda' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </disk>

Второе устройство, /dev/vda, видится инсталлятором CentOS 6.4 minimal.


среда, 15 мая 2013 г., 14:53:28 UTC+4 пользователь Denis Loshakov написал:

Denis Loshakov

не прочитано,
15 мая 2013 г., 08:41:0915.05.2013
– openstac...@googlegroups.com
Сделал как вы советовали (правда я пробовал этот вариант и раньше, с локальным lvm), вот результат:
   <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/var/lib/nova/instances/4ec50676-caea-4452-b588-b349a16de346/disk.local'/>
      <target dev='vda' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/var/lib/nova/instances/4ec50676-caea-4452-b588-b349a16de346/disk.swap'/>
      <target dev='vdb' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </disk>

Ну и результат в screenshotе (и на всякий xml конфиг машины).


среда, 15 мая 2013 г., 15:20:49 UTC+3 пользователь yashumitsu написал:
cent_no_vda.PNG
inst.xml

Ilya Alekseyev

не прочитано,
15 мая 2013 г., 08:49:5715.05.2013
– openstac...@googlegroups.com
А что выдаст ls /dev/vd* ?


15 мая 2013 г., 16:41 пользователь Denis Loshakov <dlos...@gmail.com> написал:

--

Denis Loshakov

не прочитано,
15 мая 2013 г., 08:53:4015.05.2013
– openstac...@googlegroups.com
Так, а вот это уже интереснее:
В консоле ВМ:
ls /dev/vd* выдал:
/dev/vda /dev/vdb

И как сие понимать?

среда, 15 мая 2013 г., 15:49:57 UTC+3 пользователь Ilya Alekseyev написал:

Denis Loshakov

не прочитано,
15 мая 2013 г., 08:56:0215.05.2013
– openstac...@googlegroups.com
Мало того, я там fdisk-ом партиции создать, получается что инсталятор по какой-то причине не видит их, но при инсталляции на Volume Storage он находит диск и все ок.

среда, 15 мая 2013 г., 15:53:40 UTC+3 пользователь Denis Loshakov написал:

Ilya Alekseyev

не прочитано,
15 мая 2013 г., 08:56:1215.05.2013
– openstac...@googlegroups.com
Может быть проблема с centos_minimal? Для работы с дисками требуются virtio драйвера. Не уверен, что они есть.


15 мая 2013 г., 16:53 пользователь Denis Loshakov <dlos...@gmail.com> написал:

Denis Loshakov

не прочитано,
15 мая 2013 г., 09:04:4715.05.2013
– openstac...@googlegroups.com
Да, но странно что при Volume Storage тоже самое работает, сейчас попробую с полным distro.


2013/5/15 Ilya Alekseyev <ilyaal...@acm.org>

--
Вы получили это сообщение, так как подписаны на группу "Russian OpenStack Community".
Чтобы отказаться от подписки на эту тему, перейдите на страницу https://groups.google.com/d/topic/openstack-russia/GXfL4GKsy28/unsubscribe?hl=ru.
Чтобы отказаться от подписки на эту группу и все входящие в нее темы, отправьте электронное письмо на адрес openstack-russ...@googlegroups.com.

Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу openstac...@googlegroups.com.
Перейдите в группу по ссылке http://groups.google.com/group/openstack-russia?hl=ru.
Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out.
 
 



--
Denis Loshakov
dlos...@gmail.com

yashumitsu

не прочитано,
15 мая 2013 г., 09:09:3815.05.2013
– openstac...@googlegroups.com
О, добился аналогично результата при работе с текстовым инсталлятором. Попробуйте в графическом режиме, кажется он грузится если RAM больше 512 Mb.

On Wednesday, May 15, 2013 4:41:09 PM UTC+4, Denis Loshakov wrote:
Сделал как вы советовали (правда я пробовал этот вариант и раньше, с локальным lvm), вот результат:
 [..] 

Denis Loshakov

не прочитано,
15 мая 2013 г., 09:46:3615.05.2013
– openstac...@googlegroups.com
Да, так и есть, при 512 он в текстовом варианте, сейчас попробую дать больше RAM


2013/5/15 yashumitsu <yashu...@gmail.com>

--
Вы получили это сообщение, так как подписаны на группу "Russian OpenStack Community".
Чтобы отказаться от подписки на эту тему, перейдите на страницу https://groups.google.com/d/topic/openstack-russia/GXfL4GKsy28/unsubscribe?hl=ru.
Чтобы отказаться от подписки на эту группу и все входящие в нее темы, отправьте электронное письмо на адрес openstack-russ...@googlegroups.com.
Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу openstac...@googlegroups.com.
Перейдите в группу по ссылке http://groups.google.com/group/openstack-russia?hl=ru.
Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out.
 
 



--
Denis Loshakov
dlos...@gmail.com

Denis Loshakov

не прочитано,
15 мая 2013 г., 10:24:2215.05.2013
– openstac...@googlegroups.com
Нде, так и есть, в GUI режиме диски видны, ну и что это за грабли :(
Спасибо за помощь.

П.С. попробую поставить Ubuntu, посмотрим как там.


2013/5/15 yashumitsu <yashu...@gmail.com>

--
Вы получили это сообщение, так как подписаны на группу "Russian OpenStack Community".
Чтобы отказаться от подписки на эту тему, перейдите на страницу https://groups.google.com/d/topic/openstack-russia/GXfL4GKsy28/unsubscribe?hl=ru.
Чтобы отказаться от подписки на эту группу и все входящие в нее темы, отправьте электронное письмо на адрес openstack-russ...@googlegroups.com.
Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу openstac...@googlegroups.com.
Перейдите в группу по ссылке http://groups.google.com/group/openstack-russia?hl=ru.
Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out.
 
 



--
Denis Loshakov
dlos...@gmail.com

Denis Loshakov

не прочитано,
16 мая 2013 г., 01:46:4516.05.2013
– openstac...@googlegroups.com
Все установилось (как Centos, так и Ubuntu).
Вопрос не по теме, за не имением (пока) hw серверов для kvm+openstack, я все это делаю по esxi (nested hypervysors), понимаю что это "костыли", но надо с чего-то начать. Так вот, виртуалки, сделанные в openstack, ужасно тормозят (дисковые операции), я понимаю что это из-за вложенности виртуализации, но может есть какой-то рецепт как это убыстрить? Про  опцию в "Expose hardware-assisted virtualization to the guest operating system" я знаю, и она включена, может есть еще что.

Спасибо.

среда, 15 мая 2013 г., 17:24:22 UTC+3 пользователь Denis Loshakov написал:


2013/5/15 yashumitsu <yashu...@gmail.com>
Чтобы отказаться от подписки на эту группу и все входящие в нее темы, отправьте электронное письмо на адрес openstack-russia+unsubscribe@googlegroups.com.
Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу openstack-russia@googlegroups.com.

Перейдите в группу по ссылке http://groups.google.com/group/openstack-russia?hl=ru.
Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out.
 
 



--
Denis Loshakov
dlos...@gmail.com

Igor Laskovy

не прочитано,
16 мая 2013 г., 04:55:3916.05.2013
– openstac...@googlegroups.com
Какое у вас железо? И какая версия ESXi?


2013/5/16 Denis Loshakov <dlos...@gmail.com>
Вы получили это сообщение, поскольку подписаны на группу Russian OpenStack Community.
 
Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес openstack-russ...@googlegroups.com.
Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу openstac...@googlegroups.com.

Перейдите в группу по ссылке http://groups.google.com/group/openstack-russia?hl=ru.
Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out.
 
 

Denis Loshakov

не прочитано,
16 мая 2013 г., 06:13:0016.05.2013
– openstac...@googlegroups.com
Добрый день, железо: 1 блайд - 2xE5-2670,128gb, NFS storage
VMware - esxi 5.1 799733



2013/5/16 Igor Laskovy <igor.l...@gmail.com>
Чтобы отказаться от подписки на эту группу и все входящие в нее темы, отправьте электронное письмо на адрес openstack-russ...@googlegroups.com.

Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу openstac...@googlegroups.com.
Перейдите в группу по ссылке http://groups.google.com/group/openstack-russia?hl=ru.
Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out.
 
 



--
Denis Loshakov
dlos...@gmail.com

yashumitsu

не прочитано,
16 мая 2013 г., 06:49:2716.05.2013
– openstac...@googlegroups.com
В личных тестах оверхед на I/O в KVM при использовании virtio практически отсутствовал. С ним в lspci должны быть строки вида "SCSI storage controller: Red Hat, Inc Virtio block device".

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

Может попробуете замерить скорость хотя бы однопоточной записи, большая ли разница между ними?


2013/5/15 yashumitsu <yashu...@gmail.com>
Чтобы отказаться от подписки на эту группу и все входящие в нее темы, отправьте электронное письмо на адрес openstack-russ...@googlegroups.com.
Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу openstac...@googlegroups.com.

Перейдите в группу по ссылке http://groups.google.com/group/openstack-russia?hl=ru.
Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out.
 
 



--
Denis Loshakov
dlos...@gmail.com

Igor Laskovy

не прочитано,
16 мая 2013 г., 10:11:0716.05.2013
– openstac...@googlegroups.com
Достаточно современное железо. Думаю что разумного больше не сделать. 
Из "не разумного" в голову приходит - либо даунгрейд на 5.0, либо другие ядра Ubuntu и CentOS. Мне когда-то помогали такие комбинации, но тогда время было на такое.


2013/5/16 Denis Loshakov <dlos...@gmail.com>

Denis Loshakov

не прочитано,
16 мая 2013 г., 21:52:0816.05.2013
– openstac...@googlegroups.com
Причем пробовал на разном железе, как на серверном, так на десктопном варианте, результат одинаковый :(

четверг, 16 мая 2013 г., 17:11:07 UTC+3 пользователь Igor Laskovy написал:


2013/5/16 Denis Loshakov <dlos...@gmail.com>


2013/5/16 Igor Laskovy <igor.l...@gmail.com>


2013/5/16 Denis Loshakov <dlos...@gmail.com>


2013/5/15 yashumitsu <yashu...@gmail.com>



--
Denis Loshakov
dlos...@gmail.com



--
Denis Loshakov
dlos...@gmail.com

Denis Loshakov

не прочитано,
16 мая 2013 г., 21:54:1516.05.2013
– openstac...@googlegroups.com
Да, но меня смущает гипервизор в гипервизоре, видимо из-за этого так тормозит, пробовал такой вариант не только на серверном железе, но и на обычном, одинаково тормозит. Через неделю продолжу эксперементы.


четверг, 16 мая 2013 г., 13:49:27 UTC+3 пользователь yashumitsu написал:
Ответить всем
Отправить сообщение автору
Переслать
0 новых сообщений