The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Настройка сервера приложений 1c 8.1 с использованием PostgreSQL и Debian GNU/Linux (1с debian linux)


<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>
Ключевые слова: , debian, linux,  (найти похожие документы)
From: Владимир Скубриев <v.skubriev@gmail.com.> Newsgroups: email Date: Mon, 7 Aug 2009 17:02:14 +0000 (UTC) Subject: Настройка сервера приложений 1c 8.1 с использованием PostgreSQL и Debian GNU/Linux 1. Вступление. Хочу поделиться со всеми пользователями моего любимого портала "opennet.ru" опытом пошаговой установки и настройки сервера приложений 1с на основе моего любимого дистрибутива Debian GNU/Linux. Буду признателен за ваши комментарии и критику! 2. Установка и настройка операционной системы. Рассчитывая на специалистов различной подготовки устанавливать, и настраивать желаемое решение будем внутри виртуальной машины. На мой взгляд, это упростит и унифицирует наши последовательные шаги. 2.1 Загрузка образа дистрибутива Debian GNU/Linux На момент написания статьи использовалась версия 5.0.2 Следуя моим рекомендациям лучше загружать версию netinst (~180Мб) архитектуры i386. Данная версия содержит все необходимое базовое программное обеспечение. На момент описания статьи последняя версия "netinst", архитектуры i386, была доступна и загружена для последующей установки по ссылке По этому адресу http://cdimage.debian.org/debian-cd/5.0.2/i386/iso-cd вы всегда можете выбрать последнюю версию. 2.2. Установка программы Virtual box. На момент написания статьи использовалась версия 3.0.2 Загрузить ее можно по адресу http://www.virtualbox.org/wiki/Downloads Устанавливаем все по умолчанию. Соглашаемся на установку не подписанных драйверов виртуальной сети обеспечивающих работу сетевого моста, т.е. реальной сетевой карты у виртуальной машины, смотрящей в нашу реальную сеть к которой принадлежит хост машина. Создаем виртуальную машину, выделяем памяти не меньше 512 Мб. Остальное можно оставить по умолчанию, если у вас на диске "С" есть свободное место. Если нет, то лучше, конечно создать жесткий диск виртуальной машины на другом диске, например "D". 2.3 Создание виртуальной машины. После того, как будет создана ВМ, заходим в её "Свойства" Настраиваем сеть. Выбираем вкладку первого адаптера. Ставим галочку "ВЫКЛЮЧИТЬ". Мы будем устанавливать систему в виртуальной машине без сетевых адаптеров. Настройку сети выполним после установки системы Подключаем CD-ROM, выбирая файл iso-образа диска с нашим Debian Lenny GNU/Linux. 2.4 Установка Debian GNU/Linux с netinst-cd Итак, теперь мы можем запустить нашу виртуальную машину. После загрузки с iso-образа выбираем Install, нажимаем [Enter]. Будет выполнена загрузка Debian installer. Выбираем язык установки: "Русский", страну "Российская федерация", нажимаем [Enter]. Выбираем раскладку клавиатуры "Русская", ждем installer В появившемся диалоге выберите "нет сетевых карт" Installer выдаст предупреждение: "Сетевые интерфейсы не обнаружены", выберите "Продолжить". Введите имя компьютера, например "d1c1" В диалоге "Настройки времени" выберите "Москва", ждем installer Выберите метод разметки "Авто использовать весь диск", далее выберите виртуальный HDD. Схема разметки. Рекомендую "Все файлы в одном разделе". Если у Вас нет другого мнения на этот счет. При установке на реальный сервер, рекомендую создать отдельный физический раздел для монтирования в него каталога /var. Именно в этом каталоге будет храниться база данных 1с. Это позволить проводить резервное копирование базы данных, её настроек и системы раздельно. Далее диалог "Разметка дисков" покажет схему, подготовленной им разметки для установки ОС. Выберите "Закончить разметку и записать изменения на диск". Далее выберите "Да", т.е. записать все изменения на жесткий диск и значит приступить к установке системы: разметке диска, созданию файловых систем на разделах, копированию базовой системы на HDD. Ждем installer В диалоге "Настройка учетных записей пользователей и паролей" введите пароль для суперпользователя. Затем, в следующем диалоге подтвердите пароль еще раз. Далее Installer попросит Вас создать обычного пользователя системы. Введите ваше ФИ например "Ivan Petrov". В следующем окне введите уже имя учетной записи, например "ivan". Ну и наконец, два раза пароль, т.е. один раз, потом еще раз в следующем окне для подтверждения. Далее в диалоге "настройка менеджера пакетов" перейдите на кнопку "Вернуться" и нажмите [Enter]. Installer Выдаст предупреждение! "Продолжить без зеркала архива из сети?" Выберите "Да". На вопрос "Выберите устанавливаемое программное обеспечение" выберите "Стандартная система" и нажмите продолжить. Другими слова просто перейдите на кнопку "Продолжить" и нажмите [Enter]. На вопрос: "Установить системный загрузчик?" ответьте "Да" или просто нажмите [Enter] Ждем installer Installer Выдаст предупреждение! "Установка завершена" нажмите "Продолжить" Будет произведена первая загрузка системы. Как только система загрузиться выполните следующее: из меню окна виртуальной машины выберите "Машина" -> "Выключить через ACPI". 2.5 Настройка сетевого адаптера. Итак, приступим к настройке сети, зеркала архивов, обновлению системы. Зайдите в "Свойства" вашей виртуальной машины, вкладка - слева "Сеть" Выберите вкладку "Адаптер 1". Ставим галочку "Включить сетевой адаптер". Тип адаптера "Intel PRO/1000 MT Desktop", работает 100%. С остальными могут быть проблемы с сетью. Тип подключения "Сетевой мост" Имя (сетевой адаптер): выбираем сетевой адаптер нашей хост машины (вашего обычного компьютера), смотрящей в реальную сеть. Также в свойствах виртуальной машины можно отключить cdrom, так как он более не понадобиться. Включите виртуальную машину. Выберите её и нажмите "Старт". После того как она загрузиться введите login: root и нажмите [Enter] и ваш пароль суперпользователя, затем нажмите [Enter]. Выполните команду ifconfig -a Убедитесь, что у вас стал доступен ваш сетевой интерфейс eth0. Другими словами он должен присутствовать в выводе команды. Если в выводе команды есть только интерфейс lo, то скорее всего вы не включили сетевой адаптер в свойствах виртуальной машины. Для настройки сети откройте и отредактируйте файл настроек сети: nano /etc/network/interfaces добавьте следующие строки # The primary network interface allow-hotplug eth0 iface eth0 inet static address 192.168.0.13 netmask 255.255.255.0 gateway 192.168.0.2 Измените ip адрес вашей виртуальной машины, сетевую маску, шлюз в соответствии с вашей сетью. Примечание: Если ваша маска сети 255.255.255.0 значит допустимые ip адреса для вашей сети будут в диапазоне X.X.X.1-254. Основным шлюзом скорее всего будут ваш модем, точнее его IP. Как правило это 192.168.1.1 или 192.168.0.1. Подробнее о принципах адресации в ip сетях советую почитать здесь Чтобы сохранить нажмите [Ctrl+O] Для выхода из редактора нажмите [Ctrl+X] Для настройки серверов имен и dns суффикса откройте и отредактируйте файл /etc/resolv.conf: nano /etc/resolv.conf добавьте следующие строки search myfirm.local nameserver 192.168.0.254 nameserver 192.168.0.252 Примечание: Адресом(ми) DNS если вы выходите в Интернет через модем, будет IP Адрес вашего модема, или ip адреса DNS серверов вашего провайдера. Если Вы находитесь внутри корпоративной сети, то уточните DNS у вашего системного администратора. Строку search <Имя домена> Нужно оставить, если компьютеры в вашей сети входят в домен, например в Active Directory, то введите полное имя домена, можно маленькими буквами. Например, myfirm.local. Чтобы сохранить нажмите [Ctrl+O] Для выхода из редактора нажмите [Ctrl+X] Внимание строку search myfirm.local следует добавлять, если ваша сеть использует сеть с доменами. Выполните команду reboot Проверить настройку и работу сети можно через команды ifconfig -a ping <ourdomaincontroller> ping yandex.ru Для дальнейшей настройки нам понадобиться доступ в Интернет. 2.6 Настройка менеджера пакетов. Выполните следующие команды, чтобы добавить репозитарии программ. echo "deb http://mirror.yandex.ru/debian/ lenny main" >> /etc/apt/sources.list echo "deb-src http://mirror.yandex.ru/debian/ lenny main" >> /etc/apt/sources.list Выполните следующую команду для загрузки списка доступных пакетов на зеркалах и обновления системы: aptitude update && aptitude safe-upgrade Менеджер пакетов загрузить все необходимое (~ 20 Мб.) Во время загрузки пакетов будет много нераспознаваемых символов, что мы совсем скоро исправим. Введите "Y" на заданный вопрос, чтобы обновить систему и установленные в ней пакеты. Выполните следующую команду для установки пакета русификации консоли. aptitude -R install console-cyrillic Примечание: если Вы устанавливаете систему, используя зеркало архивов из сети, то этот пакет будет установлен ею в процессе первоначальной инсталляции. В первом диалоге настройки пакета выберите Alt+Shift для переключения раскладки клавиатуры с русского языка на английский и наоборот. Потом нажмите "ОК" Теперь выберите последнюю строчку (с квадратиками), для того, чтобы не использовать временный переключатель раскладки. По умолчанию в системной консоле будет использоваться английская раскладка. Теперь можно перезагрузить наш виртуальный сервер. reboot 2.7 Для удобства управления нашим сервером настроем на нем ssh сервер. aptitude -R install openssh-server Как видите, после установки пакета console-cyrillic теперь русские буквы отображаются правильно. 3. Настройка консольного клиента putty. Для доступа к вашему серверу теперь можно использовать специальный клиент, например putty. Загрузить его можно по адресу: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html Запустив клиента, введите имя или ip вашего сервера в поле HostName В поле Connection type выберите SSH В поле Saved Sessions введите имя для вашего подключения, которые Вы потом будете использовать из списка ниже для быстрого соединения с сервером по уже сохраненным параметрам подключения. Слева в категориях Window - Translation выберите кодировку UTF-8, так как debian 5.0 использует именно её по умолчанию. Далее в категориях вернитесь в Session (в самом верху) и нажмите кнопку Save. Теперь двойным щелчком из списка ваших сохраненных сессий вы можете вызывать консоль вашего сервера. На этом все подготовительные процедуры можно считать выполненными и переходить к настройке необходимых нам служб для обслуживания клиентов платформы 1С. 4. Настройка сервера приложений 1с и СУБД PostgreSQL Нам Необходимо настроить: 1. Систему управления базами данных PostgreSQL с патчами от компании 1С, которую готовыми пакетами мы загрузим с сервера компании Etersoft. 2. Сервер приложений 1С для платформы GNU/Linux, который был мною получен из специального раздела сайта для партнеров 1С. 3. Консоль управления кластером серверов 1С под Windows 4. Платформу 1С для работы с базой предоставляемой сервером приложений 1С. 5. Конфигурацию "Управление торговлей" на сервере приложений 1С. Первым делом необходимо установить библиотеку ICU для поддержки utf-8, используемой нашей СУБД. aptitude -R install libicu38 СУБД PostgreSQL с наложенными патчами от 1С можно загрузить по адресу: [[ftp://updates.etersoft.ru/pub/Etersoft/Postgres@Etersoft/8.3.7/Debian/5.0/]] по этому адресу нам понадобятся пакеты ссылки на которые можно скопировать из команд с wget: Перейдем в каталог cd /root выполним загрузку данных пакетов в каталог пользователя root wget [[ftp://updates.etersoft.ru/pub/Etersoft/Postgres@Etersoft/8.3.7/Debian/5.0/postgresql-8.3eter-contrib_8.3.7-eter3.2debian_i386.deb]] wget [[ftp://updates.etersoft.ru/pub/Etersoft/Postgres@Etersoft/8.3.7/Debian/5.0/postgresql-8.3eter-server_8.3.7-eter3.2debian_i386.deb]] wget [[ftp://updates.etersoft.ru/pub/Etersoft/Postgres@Etersoft/8.3.7/Debian/5.0/postgresql-8.3eter_8.3.7-eter3.2debian_i386.deb]] Выполните команду и вы увидите файлы, которые мы загрузили ls теперь установим СУБД dpkg -i * Видим сообщение No such file: /etc/sysconfig/postgresql Эта ошибка из стартового скрипта /etc/init.d/postgresql Закомментируем в нем следующие строки nano /etc/init.d/postgresql #CONFIG=/etc/sysconfig/postgresql #[ -f "$CONFIG" ] && # . "$CONFIG" || # { # echo "No such file: $CONFIG"; # exit 1; # } Дело в том, что стартовый скрипт на самом деле написан для другого дистрибутива, т.е. пакеты, которые мы только что установили, сконвертированы из rpm в deb. Теперь при запуске postgresql т.е. при выполнении команды /etc/init.d/postgresql start Мы увидим следующее: Starting postgresql service: /usr/bin/pg_ctl: error while loading shared libraries: libxslt.so.1: cannot open shared object file: No such file or directory The current value of SHMMAX is too low for postgresql to run. Please edit /etc/sysctl.conf and set this value to at least 134217728: kernel.shmmax = 134217728 Для порядка установим необходимые для postgre библиотеки aptitude -R install libxslt1.1 libxml2 Далее мы видим, что параметр ядра linux SHMMAX (максимальное значение в байтах для одного сегмента shared memory (в inter process communication память, используемая между разными процессами)) слишком мал для работы СУБД. По умолчанию он равен 33554432 т.е. 32 Мб Для установки этого параметра, в 128 Мб выполним следующую команду: echo "kernel.shmmax = 134217728" >> /etc/sysctl.conf подробнее о настройке этого и других параметров можно узнать здесь в таблице 16-1 подробно описано как вычислить значения для параметров ядра системы. в таблице 16-2 подробно описано как вычислить параметр ядра SHMMAX в левом столбце указана, вычисляемая величина в правом столбце указана величина (байт на приращение) Сменим права на каталог данных нашей базы данных chown -R postgres:postgres /var/lib/pgsql Выполним перезапуск системы reboot В процессе загрузки linux была загружена и наша СУБД, узнать это можно следующей командой /etc/init.d/postgresql status pg_ctl: server is running (PID: 1724) /usr/bin/postgres "-p" "5432" "-D" "/var/lib/pgsql/data" В процессе установки СУБД пакетный менеджер выполняя сценарий post-install создал нового пользователя в системе postgres Давайте изменим этому системному пользователю пароль passwd postgres Введите новый пароль UNIX:<ВАШ СЕКРЕТНЫЙ ПАРОЛЬ> Повторите ввод нового пароля UNIX: <ВАШ СЕКРЕТНЫЙ ПАРОЛЬ> Теперь мы должны сменить пользователя su -l postgres и выполним команду psql, чтобы попасть в PostgreSQL interactive terminal psql Для того чтобы сменить пароль внутреннему пользователю базы данных postgres, выполним команду alter user postgres with password 'YOUR_PASSWORD'; \q В процессе первого запуска нашей СУБД скрипт выполнил команду inidb, которая создала все необходимое и в том числе конфигурационные файлы в папке /var/lib/pgsql Настроим /var/lib/pgsql/data/postgresql.conf Подробнее про настройку можно почитать здесь или здесь. # Для среднего 32 битного однопроцессорного сервера примерно 100-150 max_connections = 150 # Размер разделяемой памяти для процессов postgre shared_buffers = 75MB # 2/3 от физической памяти сервера, с учетом, того что на сервере установлена только postgresql. # В противном случае учитывайте потребление памяти другими приложениями. # нашей виртуальной машине выделено всего 512 Мб, но ведь у нас еще будет на ней работать и сервер приложений 1С # Другим словами = RAM - (SWAP+RAM_USED_BY_OTHER_PROC_ON_THIS_SERVER) effective_cache_size = 250MB # Включаем периодическое обслуживание базы данных - дефрагментацию данных. autovacuum = on autovacuum_naptime = 5min # Вкючение/отключении кэширования. fsync on Выключайте для высокой производительности и в случае использования RAID с аварийным питанием Включайте в случае если не используете RAID с аварийным питанием, это заставит СУБД сразу записывать данные на жесткий диск, что сокращает производительность, зато предостережет от возможности потери данных при отключении подачи электропитания (аварийного выключения в момент записи данных). Цитата с http://www.postgresql.org/docs/8.1/interactive/runtime-config-wal.html If this option is on, the PostgreSQL server will try to make sure that updates are physically written to disk, by issuing fsync() system calls or various equivalent methods (see wal_sync_method). This ensures that the database cluster can recover to a consistent state after an operating system or hardware crash. Далее открываем файл конфигурации доступа к СУБД nano /var/lib/pgsql/data/pg_hba.conf в конце файла стираем все строки после строки # TYPE DATABASE USER CIDR-ADDRESS METHOD И пишем то, что ниже: host all all 127.0.0.1/32 md5 host all all 192.168.0.0/24 md5 первая строка это доступ сервера приложений по логину и паролю пользователя СУБД к самой СУБД (локально!) вторая строка это доступ к СУБД из локальной сети (для работы 1С сервера приложений и платформы не является необходимым). в последней строке меняем "192.168.0.0/24" на вашу реальную сеть, например ваш ip 192.168.0.102 и маска подсети 255.255.255.0, значит ваша сеть 192.168.0.0/24 После редактирования конфигов делаем рестарт СУБД /etc/init.d/postgresql restart Установка СУБД успешно завершена. Установка сервера приложений 1С. Далее я полагаюсь на вашу изобретательность и смекалку. Следующее вам придется сделать самим в силу лицензионных ограничений. Проще всего использовать самый простой и легкий клиент ftp. Который можно установить командой aptitude -R install ftp С помощью него вы можете подключиться к настроенному заранее Ftp серверу, на который нужно будет выложить загруженные с сайта 1с необходимые нам пакеты. А именно: вам необходимо будет переместить в каталог /root следующие установочные пакеты: 1c-enterprise-common_8.1.14-72_i386.deb 1c-enterprise-common-nls_8.1.14-72_i386.deb 1c-enterprise-server_8.1.14-72_i386.deb 1c-enterprise-server-nls_8.1.14-72_i386.deb Перейдите в этот каталог и выполните dpkg -i 1c* Установим нужные для работы 1C права. chown -R usr1cv81:grp1cv81 /opt/1C Далее добавим скрипты запуска и остановки сервера приложений 1С, так как пакетный менеджер, выполняя сценарий post-install это не делает. update-rc.d srv1cv81 defaults Если почитать man init, то станет ясно, что команда выше сделала все правильно. Внимание! Перед тем как мы создадим базу данных через консоль управления серверами 1С, необходимо выполнить команду dpkg-reconfigure locales Далее при настройке пакета отметьте en_US.ISO-8859-1 Локаль по умолчанию (в следующем окне) выберите ru_RU.UTF-8 иначе при создании БД мы получим ошибку про "lc_messages". Перезапускаем наш сервер reboot Сервер готов к созданию на нем базы данных. Установите последнюю платформу 1С 8.1 на компьютер с ОС Windows. Вы можете создать пустую базу данных через консоль управления, и затем загрузить в неё конфигурацию. Запустите консоль управления серверами, её можно найти здесь: 1С: Пуск -> Все программы -> 1C Предприятие 8.1 Создайте новый сервер: Откройте вкладку "Центральные сервера " Нажмите правой кнопкой мыши по элементу "Центральные сервера " Выберите создать центральный сервер 1С 8.1 В появившемся окне введите имя компьютера на котором функционирует сервер приложений например d1c Порт оставьте по умолчанию. Нажмите "ОК" В списке "Центральные сервера " появиться ваш свежее установленный виртуальный сервер. Раскройте в нем вкладки "Кластеры", "1541", "Информационные базы" Нажмите правой кнопкой мыши по элементу "Информационные базы" выберите создать "информационная база". Введите имя базы 1С, псевдонима, например: Sklad1 Защищенное соединение: выключено Сервер баз данных: localhost Тип СУБД: Postgre База данных, в СУБД postgre: pg_Sklad1 Пользователь БД: postgres Пароль пользователя БД: YOUR_PASSWORD Язык: русский(Россия) Смещение дат: 0 Включите "Создать базу данных в случае ее отсутствия" Далее нажмите "ОК" Или выполнить создание базы данных из шаблона. Для этого вам потребуется установленная конфигурация 1С, например "Управление торговлей" Поэтому перед следующими шагами установите конфигурацию 1С Предприятие "Управление торговлей". Запустите платформу 1С Предприятие 8.1 Выберите "Добавить" Создание новой ИБ выберите нужный шаблон конфигурации, например Управление торговлей (демо)-10.3.8.7 Нажмите "Далее" Введите имя и ниже укажите "На сервере 1С:Предприятия", нажав "Далее" Имя кластера введите имя вашего виртуального сервера например d1c Имя информационной базы Sklad1 Защищенное соединение: выключено Тип СУБД: Postgre Сервер БД: localhost Имя БД: pg_Sklad1 Пользователь БД: postgre Пароль пользователя БД: YOUR_PASSWORD Смещение дат: 0 Включите "Создать базу данных в случае ее отсутствия".

<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, mistako (?), 14:57, 10/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Информативно. Спасибо!
     
     
  • 2.4, netc (ok), 15:20, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Информативно. Спасибо!

    ;) спасибо

    вообще жду от всех отзывов по поводу пошаговости и может где че и забыл ? - поправим

    пускай будет, на что положиться у всех, тех, кому это действительно может пригодиться

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

    поэтому вот и решился написать how-to.

     

  • 1.2, Аноним (2), 15:03, 10/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У меня сразу  2 вопроса.
    Зачем постоянно перегружать сервер и почему сохранять все надо в /root, а не в ,скажем, /usr/src ?
     
     
  • 2.3, netc (ok), 15:13, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Зачем постоянно перегружать сервер

    это как в том анекдоте про хирурга и моториста ;)
    я пока до хирурга не дорос ;)

    >почему сохранять все надо в /root, а не в ,скажем, /usr/src ?

    а почему бы и не в /root ?
    и с чего вы взяли что то, что я туда сохраняю это есть src ;) ?

     

  • 1.5, vales (?), 15:30, 10/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Тема ключа на сервер 1С не раскрыта. Без него линуксовый сервер 1С только 12 одновременных клиентов позволяет. И, надеюсь, установка всего этого добра на виртуалку - это исключительно в образовательных целях. Никому не придет в голову боевой sql сервер на виртуалке поднимать?
     
     
  • 2.9, netc (ok), 15:56, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Тема ключа на сервер 1С не раскрыта. Без него линуксовый сервер 1С
    >только 12 одновременных клиентов позволяет. И, надеюсь, установка всего этого добра
    >на виртуалку - это исключительно в образовательных целях. Никому не придет
    >в голову боевой sql сервер на виртуалке поднимать?

    согласен с тем, что 12 пользователей из платформы 1с 8.1 подключаться и будут работать без ключа. лично проверял именно в данной связке версий ПО.

    установка всего этого добра написана для того, чтобы можно было поднять все "с полпинка"
    естественно на продакшене лучше обойтись без виртуализации (перейти сразу к пункту 4), ибо она отнимает проценты производительности

    ИМХО виртуализацию можно и нужно использовать, во всяком случае, если при этом грамотно все спланировать, настроить и поддерживать. при этом использовать virtualbox на продакшене я бы не стал. скажу честно я еще от этого далек(от виртуализации в продакшене)

    хотя и планирую разобраться с xen + kemari + 1с(на дебиан)

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

     
     
  • 3.61, Алексей (??), 15:44, 19/11/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Продакшн на виртуалке не так уж и страшно. Лично у меня на одном сервере в продакшене крутятся три виртуалки с 1С (сервер БД,Приложений, Терминальный) и нет проблем.Предупрежу ваши возражения - само собой все зависит от количества пользователей и мощьности сервера. Но у вас всегда есть возможность постепенно мигрировать компоненты этой связки на отдельные сервера по мере роста количества пользователей. ПО поводу ключа на виртуалке - могу поделиться опытом решения этой проблемы.
     

  • 1.6, Nao (?), 15:31, 10/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Всё что до четвёртого пункта можно убрать. Зачем тут хауту по настройки дебиана?
     
     
  • 2.7, netc (ok), 15:43, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Всё что до четвёртого пункта можно убрать. Зачем тут хауту по настройки
    >дебиана?

    так было задумано!

     
     
  • 3.8, FractalizeR (??), 15:46, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Хорошее объяснение, нечего сказать...
     
     
  • 4.10, patsev anton (?), 16:06, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Специально, наверное, чтоб на рабочем сервере не тестили
     
     
  • 5.12, netc (ok), 16:09, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Специально, наверное, чтоб на рабочем сервере не тестили

    в чем конкретно у вас сомнения?

     
     
  • 6.13, patsev anton (?), 16:12, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>Специально, наверное, чтоб на рабочем сервере не тестили
    >
    >в чем конкретно у вас сомнения?

    У меня?

     
     
  • 7.14, netc (ok), 16:22, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>>Специально, наверное, чтоб на рабочем сервере не тестили
    >>
    >>в чем конкретно у вас сомнения?
    >
    >У меня?

    т.е. у вас сомнений нет по поводу тестироания описанной связки и её использования в продакшене?

    тогда я вас не понял. ;(

     
     
  • 8.16, patsev anton (?), 16:57, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Я лишь хотел сказать, что сначала надо тестить на виртуалках, специальных сервер... текст свёрнут, показать
     
  • 4.11, netc (ok), 16:07, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Хорошее объяснение, нечего сказать...

    если честно! я бы с удовольствием добавил бы к этой статье установку драйверов ключа.

    просто у меня нет нужного hasp девайса от 1с ;)

    буду очень благодарен тому, кто это задокументирует

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

     

  • 1.15, vales (?), 16:48, 10/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    USB ключ на линуксе цепляется стандартным HASP-драйвером от Aladdina с названием aksusbd. Есть и 32 и 64 битные версии. Но есть одна тонкость:
    перед запуском демона драйвера нужно смонтировать USB
    командой

    mount -t usbfs none /proc/bus/usb

    Эту команду удобно прописать в скрипт /etc/init.d/aksusbd в секции start,
    а в секции stop прописать

    umount /proc/bus/usb

    Хз что это значит и зачем нужно, но только после этого 1С нормально видит ключ. Без этого - никак. Причем догадаться видит 1С-сервер ключ или нет можно только экспериментально, т.е. попытавшись подключить более 12 клиентов одновременно. Нигде не пишется ничего типа "ключ найден" или наоборот "не найден". Причем еще количество клиентов сервер обнаруживает с некоторой задержкой. У меня получалось подцепить без ключа 20 клиентов. На 21 от заупрямился и не допускал новых, пока не отключили всех, кроме 10-ти первых. После этого стали возможны новые входы. Так что внимательнее с ним. Главное - не спешить с выводами, дать поработать.

     
     
  • 2.17, patsev anton (?), 16:58, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Это используя стандартный софт от Alladin?
    А если использовать hasp от etersoft?
     
  • 2.27, netc (ok), 09:26, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    спасибо большое будет полезно тем, кто собереться все это дело переносить в продакшен
    в том числе и мне ;)
     

  • 1.18, vales (?), 16:59, 10/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    И не нужно пытаться воткнуть серверный 1с-кий ключ в другой комп. Он не сетевой и должен стоять именно на том компе, где запущен сервер 1С. Т.е. вариант запустить линуксовый сервер 1С, а на соседней винде поднять эмулятор - не работает, проверено. В свете этого запуск сервера на виртуалке выглядит весьма сомнительной затеей, даже если не принимать в расчет потерю производительности.
     
     
  • 2.22, zerot (ok), 18:10, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    вообще то virtualBox позволяет пробросить USB устройство на установленную на виртуалке ось. Так что настраиваете проброс USB, устанавливаете драйвера HASP (есть на сайте Аладдина, например), подключаете ключ и имеете искомый результат
    .
    при разработке своих компонент аппаратной защиты как раз на Аладдиновских ключах (HASP) пользовался этой возможностью для тестирования
    .
    в зависимости от дистрибутива добавления пользователя, от которого запускается virtualBox  (в соответствии с документацией) может оказаться недостаточно, но при запуске virtualBox от пользователя root (если базовая ОС - Linux) всё должно работать
    .
    еще тонкость - для Debian Lenny нужно брать версию от производителя (на сайте продукта описана ссылка на репозитарий, который нужно подключить), т.к. с открытой версией от сообщества из основного репозитария Lenny как раз USB и не работало
     

  • 1.19, vales (?), 17:00, 10/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    С HASP-ом от Етерсофта к сожалению дела не имел.
     
     
  • 2.20, patsev anton (?), 17:05, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    А вот этот сервер 1C подойдет? Хотя бы в демо режиме.

    http://thepiratebay.org/torrent/4625804/1C_Enterprise_8.1.12.101

     
     
  • 3.28, netc (ok), 09:27, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >А вот этот сервер 1C подойдет? Хотя бы в демо режиме.
    >
    >http://thepiratebay.org/torrent/4625804/1C_Enterprise_8.1.12.101

    вам сюда, если уж вы любите торренты и варез
    регистрируетесь, заходите в варезник, далее думаю догадаетесь
    forum.ru-board.com

     

  • 1.21, vales (?), 17:19, 10/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У 1С всего один сервер под линукс, номера версии только меняются. У меня 8.1.12.101 работает как часы с честно купленным ключом. Сейчас есть более новый релиз. Где его взять, думаю, без разницы. Но проблема ключа портит всю малину. На винду есть эмулятор, на линукс - нет и не предвидится. А ключ стоит 36 тыщ (32бит) и 72 тыщи 64битный. И для контор, которые не гнушаются пользоваться эмуляторами в целях экономии, построение сервера на бесплатном линуксе обходится сильно дороже, чем то же самое на дорогой, но для некоторых бесплатной, винде. Вот такой парадокс.
     
     
  • 2.23, zerot (ok), 18:13, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    ну, ст. 46 УК РФ никто не отменял ... и администратор тут под ударом на первом месте
    использование Linux инфраструктуры не освобождает от приобретения платных продуктов, но помогает использовать качественные бесплатные решения в качестве базовой инфраструктуры
    .
    кстати 72 тыр - это уже крупный размер ущерба ...
     
     
  • 3.25, vales (?), 19:58, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Совершенно согласен. Винда бесплатная бывает только до определенного момента) и в этом плане решение на линуксе позволяет получить ощутимую экономическую выгоду при построении инфраструктуры.
     

  • 1.26, VecH (ok), 02:00, 11/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Есть два вопроса:
    1. повысится ли производиельность у клиента сидящего по WiFi на скорости 1 мегабит?
    (подозреваю что повысится в момент коннекта отваливание коннекта не будет нарушать целостность базы, но будет ли общая производительность повышена во время работы в самой базе?)

    2. Как перенести уже существующую базу Бухгалтерия на описываемую платформу? (если можно то опишите подробно)

     
     
  • 2.29, netc (ok), 09:31, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Есть два вопроса:
    >1. повысится ли производиельность у клиента сидящего по WiFi на скорости 1
    >мегабит?
    >(подозреваю что повысится в момент коннекта отваливание коннекта не будет нарушать целостность
    >базы, но будет ли общая производительность повышена во время работы в
    >самой базе?)
    >
    >2. Как перенести уже существующую базу Бухгалтерия на описываемую платформу? (если можно
    >то опишите подробно)

    по поводу 1
    помоему вопрос задан неправильно опишите в целом конечную цель

    по поводу 2
    выгружаете конфу в dt из конфигуратора
    нужно создать пустую базу на новом сервере
    открыть ее конфиг-ом
    и выполнить загрузку из dt

    в принципе все! и пройти должно все замечательно

     
     
  • 3.31, chemtech (?), 10:07, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >по поводу 1
    >помоему вопрос задан неправильно опишите в целом конечную цель
    >
    >по поводу 2
    >выгружаете конфу в dt из конфигуратора
    >нужно создать пустую базу на новом сервере
    >открыть ее конфиг-ом
    >и выполнить загрузку из dt
    >
    >в принципе все! и пройти должно все замечательно

    Причем здесь WiFi на скорости 1 мегабит, я понять не могу.

    Так бухгалтерии тоже разные бывают (версии). Из любой версии можно скопировать в последнюю версию 1C Бухгалтерия? Например, 7.7 в 8.1?

     
     
  • 4.32, chemtech (?), 10:10, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Про wifi вопрос VecH.
     
  • 3.34, VecH (ok), 15:30, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    За второй огромное спасибо, на днях попробую

    По первому вопросу:
    - сервер на базе линукс который расшаривает samba ресурс с файловой базой 1С 8.1
    - есть клиент висящий по WiFi на скорости 1-2 мбит/с

    Вот у этого клиента утром происходит долгая загрузка базы, дальше работает уже относительно нормально (торможений не замечено)
    - повысится ли быстродействие клиента если перевести базу с файловой на PostgreSQL ?
    - надеюсь правильно думаю что устойчивость базы к ошибкам повысится если использовать PostgreSQL в случае падения WiFi канала

     
     
  • 4.36, netc (ok), 16:22, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >[оверквотинг удален]
    >- сервер на базе линукс который расшаривает samba ресурс с файловой базой
    >1С 8.1
    >- есть клиент висящий по WiFi на скорости 1-2 мбит/с
    >
    >Вот у этого клиента утром происходит долгая загрузка базы, дальше работает уже
    >относительно нормально (торможений не замечено)
    >- повысится ли быстродействие клиента если перевести базу с файловой на PostgreSQL
    >?
    >- надеюсь правильно думаю что устойчивость базы к ошибкам повысится если использовать
    >PostgreSQL в случае падения WiFi канала

    долгая загрузка базы, опять же понятие относительное, скорее всего просто потому что загрузка базы действительно долгая процедура (опять же относительно) на медленных каналах

    на счет быстродействия - где то да, но не на много, в основном там где будут выполняться процедуры на сервере. а вообще надо тестить самому в твоих условиях

    устойчивость однозначно увеличиться

     
     
  • 5.37, FractalizeR (ok), 17:15, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >долгая загрузка базы, опять же понятие относительное, скорее всего просто потому что
    >загрузка базы действительно долгая процедура (опять же относительно) на медленных каналах

    При старте клиента с сервера передается полный набор метаданных. На медленном канале это занимает значительное количество времени из-за объема.

     
     
  • 6.38, VecH (ok), 17:16, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>долгая загрузка базы, опять же понятие относительное, скорее всего просто потому что
    >>загрузка базы действительно долгая процедура (опять же относительно) на медленных каналах
    >
    >При старте клиента с сервера передается полный набор метаданных. На медленном канале
    >это занимает значительное количество времени из-за объема.

    А при работе с PostgreSQL эта проблема должна вроде как отпасть
    правильно понимаю?

     
     
  • 7.41, FractalizeR (ok), 14:51, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>>долгая загрузка базы, опять же понятие относительное, скорее всего просто потому что
    >>>загрузка базы действительно долгая процедура (опять же относительно) на медленных каналах
    >>
    >>При старте клиента с сервера передается полный набор метаданных. На медленном канале
    >>это занимает значительное количество времени из-за объема.
    >
    >А при работе с PostgreSQL эта проблема должна вроде как отпасть
    >правильно понимаю?

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

     
     
  • 8.42, VecH (ok), 16:20, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален Устойчивость к падению канала повысится ... текст свёрнут, показать
     
     
  • 9.43, FractalizeR (ok), 16:59, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Почему она должна повыситься Движок есть движок При потере связи с сервером кл... текст свёрнут, показать
     
     
  • 10.44, VecH (ok), 17:18, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    То есть переводить с файловой базы на PostgreSQL это менять шило на мыло, ведь в... текст свёрнут, показать
     
     
  • 11.45, FractalizeR (ok), 18:01, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не совсем Все запросы действительно идут через сервер 1С, но причем тут файлова... текст свёрнут, показать
     
     
  • 12.47, VecH (ok), 18:16, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Устойчивость базы при падении канала будет выше ... текст свёрнут, показать
     
  • 12.48, VecH (ok), 18:20, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Имею ввиду устойчивость базы при падении канала до клиента ps меня на файловой... текст свёрнут, показать
     
     
  • 13.49, FractalizeR (ok), 18:39, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Устойчивость базы в серверном варианте с любым движком практически не зависит от... текст свёрнут, показать
     
     
  • 14.50, VecH (ok), 19:02, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Благодарю, на все свои вопросы получил ответы ... текст свёрнут, показать
     
     
  • 15.52, FractalizeR (ok), 10:27, 13/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Не за что Был рад помочь ... текст свёрнут, показать
     
     
  • 16.56, VecH (ok), 17:33, 19/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Поставил сервер на Ubuntu 8 04 с мелкими подводными камешками но все настроил Бы... текст свёрнут, показать
     
     
  • 17.57, FractalizeR (ok), 17:58, 19/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Нужно будет открыть диапазон портов 1560 8211 1591 Либо создать файл debugcf... текст свёрнут, показать
     
     
  • 18.58, VecH (ok), 17:16, 20/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Этим файлом задается диапазон портов на которых он работает Файл разместить в п... текст свёрнут, показать
     
     
  • 19.59, FractalizeR (ok), 17:41, 20/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Да, это допустимый диапазон используемых портов Думаю, и там и там ... текст свёрнут, показать
     

  • 1.30, Alex (??), 10:02, 11/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А как насчет проблемы с блокировками таблиц при большом количестве пользователей? Слышал что у PostgreSQL относительно MSSQL проблемы.
     
     
  • 2.33, netc (ok), 11:04, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >А как насчет проблемы с блокировками таблиц при большом количестве пользователей? Слышал
    >что у PostgreSQL относительно MSSQL проблемы.

    почитайте здесь

    http://www.gilev.ru/1c/81/postgresql/index.htm

     
     
  • 3.35, patsev anton (?), 16:21, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>А как насчет проблемы с блокировками таблиц при большом количестве пользователей? Слышал
    >>что у PostgreSQL относительно MSSQL проблемы.
    >
    >почитайте здесь
    >
    >http://www.gilev.ru/1c/81/postgresql/index.htm

    http://forum.astanainfo.kz/index.php?showtopic=4621&st=0&p=41121&#entry41121

    "
    Я бы сказал совсем неправильное утверждение. Блокировки - это проблема СУБД. И на самом деле от нее никуда не деться. Если уж совсем точно, проблема блокировок это совокупность СУБД+ОС+Железо+Прилождение. Например при переходе на 64 битные версии блокировки практически исчезают, причем на любой СУБД. Хотя и не искореняются полностью.
    "

     
     
  • 4.39, zerot (ok), 18:38, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    таки не совсем верно
    для конкретного движка СУБД блокировки - это обычно проблемы хреновой архитектуры приложения, и зависеть от разрядности платформы они, скорее всего не могут
    .
    это если говорить о блокировках данных. Более того - блокировки для СУБД есть один из штатных механизмов обеспечения многопользовательского доступа к данным базы. Другой вопрос, что в отдельных случаях и при грамотной архитектуре приложения блокировки могут быть (почти) незаметны для пользователя

     
     
  • 5.40, Alex (??), 03:41, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    я имел ввиду что 1с с постгресом блокирует целые таблицы, когда mssql более интелектуально может блокировать отдельные записи таблицы.
     
     
  • 6.46, patsev anton (?), 18:09, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >я имел ввиду что 1с с постгресом блокирует целые таблицы, когда mssql
    >более интелектуально может блокировать отдельные записи таблицы.

    Кстати, когда PostgreSQL научиться тоже это делать?

     
     
  • 7.51, Alex (??), 03:38, 13/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Кстати, когда PostgreSQL научиться тоже это делать?

    Он умеет, проблема в том, что 1с не умеет этим пользоваться =)

     
     
  • 8.54, patsev anton (?), 19:52, 13/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Может это будет в версии 8 2 ... текст свёрнут, показать
     
  • 4.53, FractalizeR (ok), 10:38, 13/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >проблема блокировок это совокупность СУБД+ОС+Железо+Прилождение. Например при переходе на 64 битные версии блокировки практически исчезают, причем на любой СУБД. Хотя и не искореняются полностью.

    Полная ерунда, извините. Причем тут разрядность к блокировкам? И с какой стати блокировки стали касаться железа? Я еще понимаю, приложения, если программист был настолько туп, что не стал использовать механизмы базы данных для блокировок. А железо-то тут причем?

     
     
  • 5.55, patsev anton (?), 19:53, 13/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >>проблема блокировок это совокупность СУБД+ОС+Железо+Прилождение. Например при переходе на 64 битные версии блокировки практически исчезают, причем на любой СУБД. Хотя и не искореняются полностью.
    >
    >Полная ерунда, извините. Причем тут разрядность к блокировкам? И с какой стати
    >блокировки стали касаться железа? Я еще понимаю, приложения, если программист был
    >настолько туп, что не стал использовать механизмы базы данных для блокировок.
    >А железо-то тут причем?

    Честное слово, не знаю.

     

  • 1.60, VecH (ok), 23:55, 20/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    При установке на Ubuntu 8.04 LTS
    перезагрузка сервера почему то не стартует PostgreSQL, пишет [error]

    Хотя ручной перезапуск демона postgresql проходит вполне нормально

     
  • 1.62, reanim (?), 20:39, 26/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Два раза ставил по это статье:
    в первом случае все хорошо,но вот незадача,серв делал в одном месте и там подсеть была 192.168.х.0,все настроил перенес в другой офис для работы где подсеть 192.168.у.0 и не захотело , хотя все поменял соответственно ip-адрес,resolv.conf,pg_nba.conf,благо там компов не много  не составило труда поменять подсеть)))
    во втором случае все то же вроде норм но вот база создалась только тогда когда в pg_hba.conf в строке для локалки изменил с md5 на trust
     
  • 1.63, Fantomas (??), 15:28, 27/10/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > fsync on
    > Выключайте для высокой производительности и в случае
    > использования RAID с аварийным питанием

    Глупость!!!

     
  • 1.64, reanim (?), 18:08, 11/01/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Где находятся логи транзакций при настройке по данной статье? И что находится в директории \var\lib\pgsql\data\base\(много цифр)
     

    игнорирование участников | лог модерирования

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру