Инструменты пользователя

Инструменты сайта


software:nas:osm_synology_vmm_ds_2422

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
software:nas:osm_synology_vmm_ds_2422 [2024/08/05 09:56] – [Введение] vladpolskiysoftware:nas:osm_synology_vmm_ds_2422 [2025/02/01 09:49] (текущий) – внешнее изменение 127.0.0.1
Строка 1: Строка 1:
 ======OSM Tile Server XPE NAS DS 2422+ SSD VMM====== ======OSM Tile Server XPE NAS DS 2422+ SSD VMM======
 +
 =====Введение===== =====Введение=====
-  Установка производиться на устройство +Оборудование 
   * **[[hardware:motherboard_supermicro_h11ssl-i|Материнская плата Supermicro MBD-H11SSL-I]]**   * **[[hardware:motherboard_supermicro_h11ssl-i|Материнская плата Supermicro MBD-H11SSL-I]]**
   * **[[hardware:cpu_amd_epyc_7551p_oem|Процессор AMD EPYC™ 7551P OEM]]**    * **[[hardware:cpu_amd_epyc_7551p_oem|Процессор AMD EPYC™ 7551P OEM]]** 
   * **[[hardware:m2_ssd_samsung_970_evo_plus|Raid5 массив 1tb SSD M.2 Samsung 970 EVO Plus]]**   * **[[hardware:m2_ssd_samsung_970_evo_plus|Raid5 массив 1tb SSD M.2 Samsung 970 EVO Plus]]**
   * **[[hardware:ddr4_ecc_reg_64gb|256GB DDR4 3200MHz DIMM ECC Reg Micron]]**   * **[[hardware:ddr4_ecc_reg_64gb|256GB DDR4 3200MHz DIMM ECC Reg Micron]]**
-  * **[[software:linux_server:ubuntu_server|ОС Ubuntu Server 24.04 LTS]]** +  * **[[software:linux_server:ubuntu_server|ОС Ubuntu Server 20.04 LTS]]** 
-  * <color #7092be>Предполагается, что у вас устройство **Synology NAS DS220+/DS420+/DS720+/DS920+** c дополнительно установленным модулем оперативной памяти **не менее 8gb** с настроенной  Synology VMM и установленной на виртуальной машине ОС Ubuntu Server 20.04 LTS.</color>  + 
-  * Если это не так, то выполните следующие руководства+  * <fc #7092be>Основное ПО сервера **XPEnology NAS DS2422+** c установленным 32 ядерным серверным процессором и 4 модулями оперативной памяти **DIMM ECC** по 64GB с настроенной  Synology VMM и установленной на виртуальной машине ОС Ubuntu Server 20.04 LTS. Так же установлено 3 диска SSD M.2 в Raid5 массив.</fc> 
-  * [[software:nas:upgrades_ram|-Увеличение оперативной памяти Synology DS420+]]+
   * [[software:nas:synology_vmm|-Установка и настройка Synology Virtual Machine Manager (VMM) Synology DS420+]].   * [[software:nas:synology_vmm|-Установка и настройка Synology Virtual Machine Manager (VMM) Synology DS420+]].
   * [[software:linux_server:ubuntu_server|-Установка Ubuntu 20.04 LTS Server на виртуальную машину (VMM) Synology DS420+]].   * [[software:linux_server:ubuntu_server|-Установка Ubuntu 20.04 LTS Server на виртуальную машину (VMM) Synology DS420+]].
-  * <color #ed1c24>**Установка OpenStreetMap Tile Server  на Synology DS (ram < 8gb ddr4) приведет к зависанию устройства и невозможности подключения к нему для восстановления без переустановки системы.**</color> +  * В целом, для среднего города понадобится 10-20gb памяти на жестком диске, 4gb ram и процессор не менее двух ядер. Если же нужна вся планета, необходимо предоставить более 1tb на ssd диске36gb ram и 8core процессор
-  * Идеальная конфигурация Synology DS720+ (ram 16gb ddr4 / 2*1tb ssd), но и на ram 10gb (2gb+8gb) и 2*2tb wd red hdd - это работает. И первый рендер тайлов происходит без раздражения, впоследствии торможения нет.  Установка Tile Server на Synology DS720+ (Intel Celeron J4125 4*2,70 GHz / 2gb ddr4 + 8gb ddr4 / 2*2tb hdd shr 1том) показала загрузку процессора в среднем 10-20% при выделенной виртуальной памяти в 8gb, которая занята соответственно на 90% от общего объема в 10gb.  +  * Предполагается, что при выделенных под VMM ресурсах (AMD EPYC™ 7551P 16*2,00 GHz / 2*64gb ddr4 3200MHz DIMM ECC Reg 3*1tb hdd raid5 1том) процессор будет загружаться при рендере на 40-50%, при учете того, что будет выделено 128gb  виртуальной памяти и теоретическом задействовании всего 10% от этого объема
-  * Делаю вывод, что Synology DS420+ (Intel Celeron J4025 2*2,90 GHz / 2gb ddr4 + 8gb ddr4 / 4*3tb hdd shr 1том) процессор будет загружаться при рендере на 40-50%, при учете того, что будет выделено 6gb  виртуальной памяти. +  * Все ниже написанное относиться к Ubuntu Linux 20.04 LTS (Focal Fossa) и запущенно в работу в августе 2024 года
-  * <color #7092be>**Не ставьте автозагрузку виртуальной машины - это позволит вам попасть в DSM при зависании устройства при переполнении памяти.**</color> +=====Подготовка оборудавания===== 
-  * Все ниже написанное относиться к Ubuntu Linux 20.04 LTS (Focal Fossa) и протестированы в августе 2022 года.+  * 3*1000 ГБ SSD M.2 накопитель [[hardware:m2_ssd_samsung_970_evo_plus|Samsung 970 EVO Plus [MZ-V7S1T0BW]]] установлены в [[hardware:adapter_c300_m2_pci-e_nvme|переходники PCI-E x 4 - M.2 NVMe SSD C300E]] с алюминиевыми SSD M2[[hardware:radiator_ssd_m2|радиаторами охлаждения]] в RAID5 для картографического сервера.  
 +  * 3*2tb hdd [[https://www.dns-shop.ru/product/fe308d6209da1b80/2-tb-zestkij-disk-wd-red-intellipower-wd20efax/|WD Red IntelliPower [WD20EFAX]]] и 3*1tb hdd [[https://www.dns-shop.ru/product/5bbf61a4f3238499/1-tb-zestkij-disk-wd-red-intellipower-wd10efrx/?utm_medium=organic&utm_source=google&utm_referrer=https%3A%2F%2Fwww.google.com%2F|WD Red IntelliPower [WD10EFRX]]] собраны в RAID SHR и предназначены для зеркалирования необходимых репозиториев, установлены в [[hardware:rack_hdd_8|вертикальную полку]]. 
 +  * 2*8tb hdd[[hardware:hdd_8tb_seagate_ironwolf_pro_st8000ne001|Seagate Ironwolf Pro]] в RAID1 для основного "backup" хранилища. 
 +После физического монтажа всех комплектующих переходим к настройке сервера. 
 +====nvme ssd в качестве тома хранилища==== 
 +Проверяем диски в DSM 
 +{{:software:nas:raid_5_m2_nvme_1.png?|}} 
 +В DSM разрешаем подключение по ssh и подключаемся через программу [[software:nas:putty|Putty]] к серверу. Форматируем наши диски и создаем из них массив.  
 +<code> 
 +mdadm --create /dev/md5 --level=5 --raid-devices=3 --force /dev/nvme0n1p3 /dev/nvme1n1p3 /dev/nvme2n1p3 
 +</code> 
 +{{:software:nas:raid_5_m2_nvme_2.png?|}} 
 + [[software:nas:nas_ds720_nvme_ssd_as_storage_volume|См. подробную статью о nvme ssd в качестве тома хранилища на  Synology NAS]] 
 +\\   
 +{{:software:nas:raid_5_m2_nvme_3.png?|}} 
 +{{:software:nas:raid_5_m2_nvme_4.png?|}} 
 +{{:software:nas:raid_5_m2_nvme_5.png?|}} 
  
 =====Общая теория=====  =====Общая теория===== 
Строка 405: Строка 422:
 \\   \\  
 Командные опции: Командные опции:
-  * <color #22b14c>-d gis</color>+  * <fc #22b14c>-d gis</fc>
   * База данных, с которой нужно работать (раньше gis была по умолчанию, теперь нужно указать).   * База данных, с которой нужно работать (раньше gis была по умолчанию, теперь нужно указать).
-  * <color #22b14c>--create</color>+  * <fc #22b14c>--create</fc>
   * Загружает данные в пустую базу данных, а не пытается добавить их в существующую (иначе --append).   * Загружает данные в пустую базу данных, а не пытается добавить их в существующую (иначе --append).
-  * <color #22b14c>--slim</color>+  * <fc #22b14c>--slim</fc>
   * osm2pgsql может использовать разные макеты таблиц; «тонкие» таблицы работают для рендеринга.   * osm2pgsql может использовать разные макеты таблиц; «тонкие» таблицы работают для рендеринга.
-  * <color #22b14c>-G</color>+  * <fc #22b14c>-G</fc>
   * Определяет, как обрабатываются мультиполигоны.   * Определяет, как обрабатываются мультиполигоны.
-  * <color #22b14c>--hstore</color>+  * <fc #22b14c>--hstore</fc>
   * Позволяет тегам, для которых нет явных столбцов базы данных, использоваться для рендеринга.   * Позволяет тегам, для которых нет явных столбцов базы данных, использоваться для рендеринга.
-  * <color #22b14c>--tag-transform-script</color>+  * <fc #22b14c>--tag-transform-script</fc>
   * Определяет сценарий lua, используемый для обработки тегов. Это простой способ обработки тегов OSM до того, как их обработает сам стиль, что значительно упрощает логику стиля.   * Определяет сценарий lua, используемый для обработки тегов. Это простой способ обработки тегов OSM до того, как их обработает сам стиль, что значительно упрощает логику стиля.
-  * <color #22b14c>-C 4000</color>+  * <fc #22b14c>-C 4000</fc>
   * Выделено 4,0 Гб памяти osm2pgsql для процесса импорта. Если у вас меньше памяти, вы можете попробовать меньшее число, а если процесс импорта завершится из-за нехватки памяти, вам нужно будет попробовать меньшее число или меньший размер карты OSM.   * Выделено 4,0 Гб памяти osm2pgsql для процесса импорта. Если у вас меньше памяти, вы можете попробовать меньшее число, а если процесс импорта завершится из-за нехватки памяти, вам нужно будет попробовать меньшее число или меньший размер карты OSM.
-  * <color #22b14c>--number-processes 2</color>+  * <fc #22b14c>--number-processes 2</fc>
   * Используйте 2 ЦП. Если у вас есть больше доступных ядер, вы можете использовать больше.   * Используйте 2 ЦП. Если у вас есть больше доступных ядер, вы можете использовать больше.
-  * <color #22b14c>-S</color>+  * <fc #22b14c>-S</fc>
   * Создайте столбцы базы данных в этом файле (на самом деле они не изменились по сравнению с «openstreetmap-carto»)   * Создайте столбцы базы данных в этом файле (на самом деле они не изменились по сравнению с «openstreetmap-carto»)
-  * <color #22b14c>~/src/openstreetmap-carto/openstreetmap-carto.style ~/data/russia-latest.osm.pbf</color>+  * <fc #22b14c>~/src/openstreetmap-carto/openstreetmap-carto.style ~/data/russia-latest.osm.pbf</fc>
   * Место сохранения и файл данных для загрузки.   * Место сохранения и файл данных для загрузки.
 смотрим монитор ресурсов Synology NAS смотрим монитор ресурсов Synology NAS
Строка 507: Строка 524:
 sudo vi /usr/local/etc/renderd.conf sudo vi /usr/local/etc/renderd.conf
 </code> </code>
-  * нажимаем **<color #22b14c>i</color>** и редактируем строку **<color #22b14c>XML=/home/renderaccount/src/openstreetmap-carto/mapnik.xml</color>** меняя **<color #7092be>renderaccount</color>** на имя своего пользователя (в нашем случае это - **<color #7092be>alisa</color>**) +  * нажимаем **<fc #22b14c>i</fc>** и редактируем строку **<fc #22b14c>XML=/home/renderaccount/src/openstreetmap-carto/mapnik.xml</fc>** меняя **<fc #7092be>renderaccount</fc>** на имя своего пользователя (в нашем случае это - **<fc #7092be>alisa</fc>**) 
-  * нажимаем последовательно **<color #22b14c>esc</color>** , **<color #22b14c>shift + :</color>** , **<color #22b14c>w</color>** ,  **<color #22b14c>q</color>** , **<color #22b14c>!</color>** для сохранения и выхода из редактора  +  * нажимаем последовательно **<fc #22b14c>esc</fc>** , **<fc #22b14c>shift + :</fc>** , **<fc #22b14c>w</fc>** ,  **<fc #22b14c>q</fc>** , **<fc #22b14c>!</fc>** для сохранения и выхода из редактора  
 {{:software:nas:osm_420_62.png|}} {{:software:nas:osm_420_62.png|}}
-  * нажимаем **<color #22b14c>enter</color>**+  * нажимаем **<fc #22b14c>enter</fc>**
  
  
Строка 551: Строка 568:
  
  
-  * нажимаем **<color #22b14c>i</color>** и вставляем строку **<color #22b14c>LoadModule tile_module /usr/lib/apache2/modules/mod_tile.so</color>** в тело файла (в нашем случае это пустой файл) +  * нажимаем **<fc #22b14c>i</fc>** и вставляем строку **<fc #22b14c>LoadModule tile_module /usr/lib/apache2/modules/mod_tile.so</fc>** в тело файла (в нашем случае это пустой файл) 
-  * нажимаем последовательно **<color #22b14c>esc</color>** , **<color #22b14c>shift + :</color>** , **<color #22b14c>w</color>** ,  **<color #22b14c>q</color>** , **<color #22b14c>!</color>** для сохранения и выхода из редактора  +  * нажимаем последовательно **<fc #22b14c>esc</fc>** , **<fc #22b14c>shift + :</fc>** , **<fc #22b14c>w</fc>** ,  **<fc #22b14c>q</fc>** , **<fc #22b14c>!</fc>** для сохранения и выхода из редактора  
 {{:software:nas:osm_420_68.png|}} {{:software:nas:osm_420_68.png|}}
-  * нажимаем **<color #22b14c>enter</color>**+  * нажимаем **<fc #22b14c>enter</fc>**
  
 выполняем команду выполняем команду
Строка 570: Строка 587:
 </code> </code>
 {{:software:nas:osm_420_71.png|}} {{:software:nas:osm_420_71.png|}}
-  * вставляем следующие строки между строками <color #00a2e8>«ServerAdmin»</color> и <color #00a2e8>«DocumentRoot»</color+  * вставляем следующие строки между строками <fc #00a2e8>«ServerAdmin»</fc> и <fc #00a2e8>«DocumentRoot»</fc
  
 <code> <code>
Строка 581: Строка 598:
 </code> </code>
  
-  * нажимаем **<color #22b14c>i</color>** и вставляем строки в тело файла между строками <color #00a2e8>«ServerAdmin»</color> и <color #00a2e8>«DocumentRoot»</color>  +  * нажимаем **<fc #22b14c>i</fc>** и вставляем строки в тело файла между строками <fc #00a2e8>«ServerAdmin»</fc> и <fc #00a2e8>«DocumentRoot»</fc>  
-  * нажимаем последовательно **<color #22b14c>esc</color>** , **<color #22b14c>shift + :</color>** , **<color #22b14c>w</color>** ,  **<color #22b14c>q</color>** , **<color #22b14c>!</color>** для сохранения и выхода из редактора  +  * нажимаем последовательно **<fc #22b14c>esc</fc>** , **<fc #22b14c>shift + :</fc>** , **<fc #22b14c>w</fc>** ,  **<fc #22b14c>q</fc>** , **<fc #22b14c>!</fc>** для сохранения и выхода из редактора  
 {{:software:nas:osm_420_72.png|}} {{:software:nas:osm_420_72.png|}}
-  * нажимаем **<color #22b14c>enter</color>**+  * нажимаем **<fc #22b14c>enter</fc>**
   * дважды перезагрузите apache:   * дважды перезагрузите apache:
 <code> <code>
Строка 593: Строка 610:
   * проверим наш Apache набрав в браузере адрес нашего виртуального сервера (в нашем случае: http://192.168.1.31/)   * проверим наш Apache набрав в браузере адрес нашего виртуального сервера (в нашем случае: http://192.168.1.31/)
 {{:software:nas:osm_420_74.png?650|}} {{:software:nas:osm_420_74.png?650|}}
-  * <color #ed1c24>Дальше не продолжаем если не дождались загрузки данных в базу и Создание индексов</color>+  * <fc #ed1c24>Дальше не продолжаем если не дождались загрузки данных в базу и Создание индексов</fc>
 =====Запуск рендера в первый раз===== =====Запуск рендера в первый раз=====
 запустим renderd, чтобы попытаться отрендерить некоторые плитки. Сначала мы запустим его на переднем плане, чтобы видеть любые ошибки по мере их возникновения: запустим renderd, чтобы попытаться отрендерить некоторые плитки. Сначала мы запустим его на переднем плане, чтобы видеть любые ошибки по мере их возникновения:
Строка 603: Строка 620:
 {{:software:nas:osm_420_87.png?650|}} {{:software:nas:osm_420_87.png?650|}}
  
-  * Если все это работает, нажмите <color #00a2e8>control-c</color>, чтобы завершить процесс рендеринга переднего плана. +  * Если все это работает, нажмите <fc #00a2e8>control-c</fc>, чтобы завершить процесс рендеринга переднего плана. 
-  * <color #ed1c24>при возникновении необходимости остановить renderd</color>+  * <fc #ed1c24>при возникновении необходимости остановить renderd</fc>
 <code> <code>
 systemctl stop renderd systemctl stop renderd
Строка 615: Строка 632:
   * на Synology DS720+ такого шока нет и все происходит быстрее в 3-4 раза   * на Synology DS720+ такого шока нет и все происходит быстрее в 3-4 раза
 {{:software:nas:osm_420_86.png?650|}} {{:software:nas:osm_420_86.png?650|}}
-  * <color #00a2e8>Не знаю почему, но при наличии папки renderd и прав на неё, система ругается на её отсутствие (проверено при 3х установках на Synology Nas. Повторно выполним эти команды...</color>+  * <fc #00a2e8>Не знаю почему, но при наличии папки renderd и прав на неё, система ругается на её отсутствие (проверено при 3х установках на Synology Nas. Повторно выполним эти команды...</fc>
   * создаем папку renderd   * создаем папку renderd
 <code> <code>
Строка 641: Строка 658:
  
  
-  * нажимаем **<color #22b14c>i</color>** и меняем в строке RUNASUSER **<color #22b14c>renderaccount</color>** на ваше имя пользователя  (в нашем случае это alisa) +  * нажимаем **<fc #22b14c>i</fc>** и меняем в строке RUNASUSER **<fc #22b14c>renderaccount</fc>** на ваше имя пользователя  (в нашем случае это alisa) 
-  * нажимаем последовательно **<color #22b14c>esc</color>** , **<color #22b14c>shift + :</color>** , **<color #22b14c>w</color>** ,  **<color #22b14c>q</color>** , **<color #22b14c>!</color>** для сохранения и выхода из редактора  +  * нажимаем последовательно **<fc #22b14c>esc</fc>** , **<fc #22b14c>shift + :</fc>** , **<fc #22b14c>w</fc>** ,  **<fc #22b14c>q</fc>** , **<fc #22b14c>!</fc>** для сохранения и выхода из редактора  
 {{:software:nas:osm_420_91.png|}} {{:software:nas:osm_420_91.png|}}
-  * нажимаем **<color #22b14c>enter</color>**+  * нажимаем **<fc #22b14c>enter</fc>**
   * скопируем это в системный каталог   * скопируем это в системный каталог
 <code> <code>
software/nas/osm_synology_vmm_ds_2422.1722840978.txt.gz · Последнее изменение: vladpolskiy