| Шаг | Пункт документации | Результат | Примечание |
|---|
| 1. Проверка соответствия аппаратных требований к системе |
|
|
|
| 1.1 Установлены актуальные версии ПО внутренних устройств и контроллеров сервера (BIOS, RAID, iDRAC, iLO и т.д.) |
|
| См. документацию к используемому серверу |
| 1.2 Наличие в системе по меньшей мере 2-х ядерного CPU |
|
| Определяется проектом на систему |
| 1.3 Наличие в системе по меньшей мере 8 Гб RAM |
|
| Определяется проектом в зависимости от требуемой нагрузки. В тестовых целях допускается уменьшение до 4 Гб |
| 1.4 Имеется достаточно дискового пространства | Инсталляция операционной системы |
|
|
| 1.5 Произведена верная разметка разделов | Инсталляция операционной системы |
|
|
| 1.6 В системе НЕ используется файл подкачки SWAP | Инсталляция операционной системы |
|
|
| 2. Проверка соответствия программных требований к системе |
|
|
|
| 2.1 Установлена корректная версия и разрядность операционной системы |
|
| Ubuntu Server 18.04 x64 |
| 2.2 Выставлено корректное имя хоста hostname: ecss1 или ecss2 | Инсталляция операционной системы |
| При использовании резервирования |
| 2.3 В системе установлены актуальные обновления | Обновление ОС и инсталляция необходимого ПО |
|
|
| 2.4 В системе установлено рекомендуемое ПО | Обновление ОС и инсталляция необходимого ПО |
|
|
| 2.5 В системе добавлен репозиторий ECSS-10 и имеется доступ к нему | Обновление ОС и инсталляция необходимого ПО |
|
|
| 2.6 В системе корректно настроены сетевые интерфейсы | Настройка сетевых интерфейсов, bonding, VRRP |
|
|
| - адреса сетевых интерфейсов статичны, не изменяются динамически по DHCP |
|
|
|
| - сервис keepalived (VRRP) настроен и работает |
|
| При использовании резервирования |
| - как минимум на интерфейсах Lo включена поддержка IPv6 |
|
| Пример: ssw@ecss1:~$ ip -6 addr show lo
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN qlen 1
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever |
|
| 2.7 Ключ eToken/RuToken подключен к USB-порту сервера | Проверка работы Token |
|
|
| - Ключ eToken/RuToken определился в системе (lsusb) | Проверка работы Token |
|
|
| - Проверка ключа eToken/RuToken | Проверка работы Token |
|
|
| 2.8 Проверка сетевой доступности между хостами ecss1 и ecss2 |
|
| При использовании резервирования |
| - задержка ping между хостами не превышает 100 ms |
|
| Необходимо минимизировать задержки трафика между хостами на сколько это возможно |
| - отсутствуют потери пакетов при обмене данными между хостами |
|
| Запускается команда ping на несколько минут, после чего снимается статистика комбинацией клавиш Пример: ssw@ecss1:~$ ping -q -c 200 ecss2
PING ecss2 (192.168.1.22) 56(84) bytes of data.
177/177 packets, 0% loss, min/avg/ewma/max = 0.062/0.131/0.117/0.489 ms |
|
| - хосты доступны между собой по DNS имени (как прописано в /etc/hosts/ и в соответствии с лицензией) |
|
| Проверяется ping c ecss1 на ecss2 и наоборот |
| - между хостами настроена авторизация по ключам |
|
| Сгенерировать ssh-ключ и передать на другой сервер ssh-keygen
ssh-copy-id ssw@ecss2 |
Аналогично с ecss2 на ecss1
|
| 2.9 На сервере работает синхронизация времени c NTP сервером | Синхронизация времени на серверах |
| |
| - выставлен корректный часовой пояс |
|
| |
| - на хостах ecss1 и ecss2 настроена синхронизация времени в режиме orphan либо синхронизация с единого NTP | Синхронизация времени на серверах |
| При использовании резервирования |
| 2.10. Установлен glusterfs-server рекомендуемой версии |
|
| Не ниже версии ПО 3.10.11 |
| 3. Проверка корректности установки ECSS-10 |
|
|
|
| 3.1 Установка пакетов компонентов системы завершилась успешно без ошибок: | Установка пакетов ECSS |
| |
- ecss-node
|
|
|
|
- ecss-media-resources
|
|
|
|
- ecss-media-server
|
|
|
|
| - ecss-mysql |
|
|
|
- ecss-restfs
|
|
|
|
- ecss-cc-ui
|
|
| При использовании APM CC |
- ecss-user
|
|
|
|
- ecss-web-conf
|
|
|
|
- ecss-dns-env
|
|
|
|
| 4. Проверка работоспособности системы ECSS-10 |
|
|
|
| 4.1 Проверка установленной лицензии ECSS-10: | Запуск и активация системы |
|
|
| - сервис SACSrv находится в работе | Установка ПО и подключение Token |
|
ps aux | grep SACSrv | grep -v grep |
|
| - сервис pcscd находится в работе | Установка ПО и подключение Token |
|
ps aux | grep pcscd | grep -v grep |
|
| - в системе установлен корректный паспорт | Запуск и активация системы |
| CoCon команда /cluster/storage/ds1/licence/show-passport |
|
| - в системе установлена актуальная лицензия | Запуск и активация системы |
| CoCon команда /cluster/storage/ds1/licence/current-limits |
|
| 4.2 Сервис dnsmasq запущен и работает |
|
|
|
| - если система с резервом, в конфигурации dnsmasq прописаны корректные адреса primary.broker.ecss и secondary.broker.ecss | Особенности установки системы в кластере |
| Обратить внимание, что на обоих серверах содержимое одинаковое. address=/primary.broker.ecss/<Адрес ecss1>
address=/secondary.broker.ecss/<Адрес ecss2> |
|
| - адреса доступны по DNS-имени |
|
|
ping -c1 cocon.mysql.ecss
ping -c1 dialer.mysql.ecss
ping -c1 statistics.mysql.ecss
ping -c1 tc.mysql.ecss
ping -c1 tts.mysql.ecss
ping -c1 controlchannel.zmq.ecss
ping -c1 system.restfs.ecss |
|
| 4.3 На хостах ecss1 и ecss2 прописаны listen-интерфейсы для сервиса epmd | Настройка listen-интерфейса для сервиса epmd |
|
sudo systemctl cat epmd.service |
|
| 4.4 Сервер БД MySQL запущен и работает |
|
|
|
| - к MySQL серверу возможно подключиться по DNS ecss-cc-ui имени |
|
| |
| - при использовании резерва запущенна и корректно работает репликация БД | Схема развертывания MySQL master-master replication с использованием keepalive |
|
mysql -uroot -p -e 'show slave status \G;' |
На обоих серверах Slave_IO_Running: Yes
Slave_SQL_Running: Yes |
|
| - порт mysql должен слушать на 0.0.0.0. |
|
| |
| 4.5 В системе с резервом прописано имя кластера(не undefined) | Особенности установки системы в кластере |
|
cat /etc/ecss/ecss-mycelium/mycelium1.config | grep name |
|
| 4.6 Сервисы ecss запущенны и работают (находятся в состоянии running): | Проверка статуса сервисов |
|
systemctl list-units --type service --all | grep ecss |
Состояние должно показывать "active" Или по каждому сервису отдельно: systemctl status <service name> |
|
| - ecss-mycelium |
|
|
|
| - ecss-ds |
|
|
|
| - ecss-core |
|
|
|
| - ecss-pa-sip |
|
|
|
| - ecss-pa-megaco |
|
|
|
| - ecss-mediator |
|
|
|
| - ecss-media-server |
|
|
|
| - ecss-web-conf |
|
|
|
| - ecss-restfs |
|
|
|
| - ecss-subscriber-portal |
|
|
|
| - ecss-cc-ui |
|
|
|
| - Команда cocon "system-status" выдает пустой Alarms list |
|
|
|
| 4.7 Медиасервер MSR настроен и подключен к ECSS-10: | Настройка программного медиасервера |
|
|
| - конфигурация MSR настроена на подключение к ECSS-10 | Настройка конфигурационного файла MSR | Из shell серверов: cat /etc/ecss/ecss-media-server/config.xml |
|
| - MSR задекларирован в системных медиаресурсах | Команды управления медиаресурсами |
| Cocon: /system/media/resource/list
/system/media/registrar/info |
Если система с резервированием, проверить, что подключен к обоим ядрах Обратить внимание на правильные адреса ядер (не 0.0.0.0) |
| - На хосте ecss2 аналогичным образом сконфигурирован MSR |
|
| При использовании резервирования |
| 4.8 Restfs настроен и доступен с сервера ECSS-10: |
|
|
|
| - restfs доступен для записи и скачивания медиафайлов |
|
| Из shell серверов: wget http://ecss1:9990/system/sounds/ai_you.wav
wget http://ecss2:9990/system/sounds/ai_you.wav |
|
| 4.9 Сервис TTS (преобразование текста в голосовое сообщение) настроен и работает: |
|
|
|
| - Сервис возвращает голосовой файл после преобразования из текста |
|
| Из shell серверов: wget http://ecss1:9990/generate?key=<Key>&text=<Text>&format=wav&lang=ru-RU&speaker=alyss&emotion=good&quality=hi
wget http://ecss2:9990/generate?key=<Key>&text=<Text>&format=wav&lang=ru-RU&speaker=alyss&emotion=good&quality=hi |
где: key=<Key> — ключ для доступа к серверу tts text=<Text> — текстовое сообщение для преобразования в голосовое сообщение |
| 5. Проверка корректности настройки домена в ECSS-10 |
|
|
|
| 5.1 В домене настроен SIP-транспорт (ip-set) | Работа SIP-адаптера с сетью |
|
|
| - Адреса(node_ip) и порты(listen_port) выставлены в соответствии с проектом |
|
|
/cluster/adapter/sip1/sip/network/info |
|
| - Адреса node_ip назначены на обеих нодах SIP-адаптера ecss1 и ecss2 |
|
| При использовании резервирования |
| - Адреса node_ip совпадают с адресами резервируемых интерфейсов, настроенных в keepalived |
|
| При использовании резервирования |
| - На домене выставлен ipset |
|
|
/domain/<DOMAIN>/sip/network/info |
|
| 5.2 В домен добавлены необходимые услуги | Инсталляция и управление услугами |
|
|
| - произведена установка в систему услуг | Инсталляция и управление услугами |
cluster/storage/ds1/ss/install ds1@ecss1 * |
|
| - домен добавлен в access-list к услугам | Инсталляция и управление услугами |
| Просмотреть установленные в доменах услуги: /cluster/storage/ds1/ss/access-list show |
Для добавления услуг на домене: /cluster/storage/ds1/ss/access-list add <DOMAIN> <SS> |
|
| 5.3 Произведена настройка контекста маршрутизации | Виртуальная АТС. Маршрутизация телефонных вызовов |
|
/domain/<DOMAIN>/routing/list
/domain/<DOMAIN>/routing/show <CTX> |
|
| - настроены нужные транки | Команды управления SIP-транками |
| При необходимости. /domain/<DOMAIN>/trunk/sip/info
/domain/<DOMAIN>/trunk/info |
|
| - настроены нужные бриджи | Команды управления bridge-интерфейсами |
| |
| - маршруты отрабатываются как в режиме набора enblock, так и overlap | Команды управления маршрутизацией |
|
/domain/<DOMAIN>/routing/trace |
|
| 5.4 Произведены корректные настройки SIP-абонента(-ов) | Виртуальная АТС. Подключение и настройка SIP-абонентов |
|
|
| - абоненты созданы | Создание SIP-абонента |
|
domain/<DOMAIN>/sip/user/list |
|
| - установлены надежные логин/пароль SIP-авторизации |
|
|
domain/<DOMAIN>/sip/user/info * * |
или отфильтровать (из shell) ssh admin@ecss1 -p8023 '/domain/<DOMAIN>/sip/user/info * *' | grep '(ds)' |
|
| - установлен trusted ip | Аутентификация абонентов |
| в случае необходимости SIP-регистрации без авторизации domain/<DOMAIN>/sip/user/info |
|
| - у абонента установлен корректный контекст маршрутизации | Добавление абонента |
|
domain/<DOMAIN>/sip/user/info |
или cluster/storage/ds1/iface/list <DOMAIN> * <GROUP> routing_context ~ ctx_from_local |
(подставить нужный) |
| - выставлен корректный тип терминала (basic/smart) | Настройка параметров абонента |
|
/cluster/storage/ds1/iface/list <DOMAIN> * <GROUP> terminal_type ~ smart |
(или basic) |
| - у абонента активированы необходимые услуги | Инсталляция и управление услугами |
| |
| 5.5 Установка контекстов маршрутизации для системных интерфейсов | Команды управления системными интерфейсами |
/domain/<DOMAIN>/iface/user-set .system .system system:ivr routing.context |
|
|
| - настроен system:ivr | Команды управления системными интерфейсами |
| При необходимости использования сервиса IVR. В большинстве случаев прописывается только контекст маршрутизации /domain/<DOMAIN>/iface/info .system .system system:ivr |
|
| - настроен system:teleconference | Команды управления системными интерфейсами |
| При необходимости использования сервиса teleconference. В большинстве случаев прописывается только контекст маршрутизации /domain/<DOMAIN>/iface/info .system .system system:teleconference |
|