:::(Внимание) (LTS12+ Изменения в сети OPCH) В LTS12 был изменен способ взаимодействия OPCH с Tulip Cloud. Эти изменения были необходимы для того, чтобы OPCH мог поддерживать массовое развертывание коннекторов и машин.
Благодаря этому изменению OPCH перешел от поддержания непрерывного соединения с облаком через веб-сокет к работе без статических данных. Это приведет к увеличению количества RESTful-вызовов между OPCH и Tulip Cloud. Во время обновления OPCH клиенты отвечают за то, чтобы прокси-серверы и брандмауэры могли поддерживать эту дополнительную нагрузку.
:::
Цель
Узнайте, как использовать хосты коннекторов On-Premise для своих интеграций.
Необходимые условия
Чтобы узнать о хостах коннекторов в Tulip, сначала ознакомьтесь с этой статьей
Обзор
Эта статья предназначена для ознакомления с хостами коннекторов On-Premise Connector Hosts (OPCH) в Tulip. Хост коннектора - это служба, используемая для облегчения подключения Tulip к внешним веб-службам, базам данных и серверам OPC UA. Все экземпляры Tulip по умолчанию имеют Cloud Connector Host.
Есть несколько соображений, которые необходимо учитывать при определении того, подходит ли локальный хост коннектора для данной архитектуры.
Ключевые соображения для локального узла коннектора
Соображения, касающиеся хоста On-Premise Connector Host, можно разделить на несколько категорий:
1. Сетевое взаимодействие2. Управление инфраструктурой3. Производительность
Сеть
Наиболее распространенным основанием для развертывания локального узла коннектора являются преимущества, которые он дает при подключении к системам, расположенным в локальной сети. При использовании локального предложения все соединения Tulip с внешними системами начинаются в вашей локальной сети. Все соединения из вашей сети отправляются в Tulip через безопасный WebSocket.
Это отличается от хостов облачных коннекторов, которые требуют входящего доступа к сервисам. Как правило, это решение ИТ-специалистов о разрешении входящих безопасных соединений WebSocket из облака Tulip к сервису, часто с использованием правил переадресации портов на маршрутизаторе/брандмауэре WAN.
Управление инфраструктурой
Для развертывания локального узла коннектора существует несколько компонентов инфраструктуры, за которые отвечает клиент. Ниже приведена матрица основных ролей и обязанностей:
| Tulip | Заказчик | |
|---|---|---|
| Предоставление технических ресурсов на OPCH | X | |
| Размещение и развертывание виртуальных машин | X | |
| Мониторинг и обновление виртуальных машин | X | |
| Генерация учетных данных OPCH | X | |
| Тестирование OPCH | X | |
| Развертывание OPCH | X | |
| Обновление OPCH | X | |
| Мониторинг OPCH | X | |
| Устранение неисправностей OPCH | X | X |
В идеале заказчик должен владеть технологиями, которые он использует для развертывания узла коннектора, а также использовать такие технологии, как Docker, для управления контейнерами.
Развертывание локального узла коннектора
Технические стандарты
The amount of resources needed to run OPCH will increase as its usage increases. If you consistently use it beyond 250Hz of throughput, we strongly advise allocating more resources to your virtual machines to ensure optimal performance.
Если принято решение о развертывании локального решения, Tulip рекомендует использовать маршрут самообслуживания с помощью распределенного образа Docker. Самым простым способом добиться этого будет использование виртуальной машины с дистрибутивом Linux (предпочтительнее Ubuntu).
Tulip также рекомендует размещать только один хост On-Premise Connector Host на одной виртуальной машине, чтобы избежать единой точки отказа для сайтов.
Требования к виртуальной машине:
- ОЗУ - 4 ГБ
- ПЗУ - диск объемом 8-16 ГБ
- Центральный процессор - 2 ядра
- Версия Docker - 20.10+
Что касается сетевых требований, то для хоста On-Premise Connector Host необходимо следующее:
- IP-адрес
- Разрешение DNS
- Исходящий доступ по порту 443 к Tulip (IP-адреса указаны здесь)
- Исходящий доступ к репозиторию Docker здесь
- Исходящий доступ ко всем соответствующим внешним системам с портами
Ознакомьтесь с полным списком сетевых требований здесь
Запрос учетных данных
Свяжитесь со службой поддержки Tulip(support@tulip.co), чтобы запросить учетные данные хоста On-Premise Connector Host, используя следующий шаблон, заполнив все детали, заключенные в скобки:
``Здравствуйте,
Это запрос на создание нового узла On-Premise Connector Host.
Экземпляр Tulip:
Tulip создаст и передаст учетные данные через безопасную ссылку с временным паролем. Данные должны быть переданы во внутреннее хранилище учетных данных и включать следующее:
- Фабрика
- UUID
- Секрет машины
On-Premise Connector Host credentials should not be used to create more than one Connector Host - this would result in connectivity problems for all hosts sharing credentials.
Доступные версии (теги) хоста локального коннектора
OPCH must be kept up-to-date with the Tulip product. More information.
Tulip использует теги образов Docker для версий образов Connector Host. Ниже приведен список активно поддерживаемых тегов On-Premise Connector Host, которые можно использовать в сочетании с командами Docker run и pull.
| Версия LTS | Двухнедельная версия | Самый последний тег OPCH |
|---|---|---|
| LTS11 | r262 - r274 | lts11.7 |
| LTS12 | r275-r287 | lts12.10 |
| LTS13 | r288-r307 | lts13.4 |
| LTS14 | r308+ | lts14 |
Развертывание
В следующем разделе описано, как развернуть хост On-Premise Connector Host в различных средах. AWS и Azure предлагают контейнерные службы, способные запускать образ Docker.
-
AWS:
- Используйте веб-интерфейс и этот набор инструкций: https://aws.amazon.com/getting-started/hands-on/deploy-docker-containers/.
Prior to LTS12, the environment variables CONNECTORS_HTTPS_PROXY and CONNECTORS_HTTP_PROXY must be replaced with HTTPS_PROXY and HTTP_PROXY, respectively
- Azure:
az container create \ -g <NAME OF THE RESOURCE GROUP IN AZURE> \ --name <NAME FOR THE CONTAINER> \ --cpu 2 \ --memory 3 \ --restart-policy Always \ --image bckca2dh98.execute-api.us-east-1.amazonaws.com/public/connector-host:<TAG> \ -e TULIP_UUID='<UUID>' \ TULIP_FACTORY='https://<Ваш САЙТ>.tulip.co' \ TULIP_MACHINE_SECRET='<SECRET>' \ TULIP_DEVICE_TYPE='onprem' \ CONNECTORS_HTTP_PROXY='' \ CONNECTORS_HTTPS_PROXY=''
- Linux VM: :::(Warning) (Pre-LTS12 OPCH)
Prior to LTS12, the environment variables CONNECTORS_HTTPS_PROXY and CONNECTORS_HTTP_PROXY must be replaced with HTTPS_PROXY and HTTP_PROXY, respectively
:::
docker run -d \
Обновление хоста локального коннектора
OPCH must be kept up-to-date with the Tulip product. More information.
Tulip recommends proactively confirming the upgrade by successfully running a test OPCH connection to the development environment and/or developement instance. Once this verification is complete, the production environment can be confidently upgraded. Details on how can be found below.
Tulip выпускает обновления для On-Premise Connector Host в соответствии с нашим графиком долгосрочной поддержки (LTS). Чтобы обновить сервис, следуйте приведенным ниже инструкциям:
Процесс обновления для OPCH приведет к простою, пока капсула будет остановлена и воссоздана.
- Получите последнюю версию образа Docker хоста On-Premise Connector Host.
docker pull bckca2dh98.execute-api.us-east-1.amazonaws.com/public/connector-host:<TAG>2. Выполните следующую команду, чтобы получить идентификатор контейнера Docker.
docker ps3. Если у вас есть доступ к TULIP_FACTORY, TULIP_UUID и TULIP_MACHINE_SECRET, перейдите к шагу 4. Если нет, выполните следующую команду и сохраните вывод этой команды в безопасном месте.
docker exec <container-id> env4. Остановите существующий контейнер Docker.
docker stop <container-id>5. Удалите существующий контейнер Docker.
docker rm <container-id>6. Запустите стандартную команду Docker run, используя сохраненный набор учетных данных.
Prior to LTS12, the environment variables CONNECTORS_HTTPS_PROXY and CONNECTORS_HTTP_PROXY must be replaced with HTTPS_PROXY and HTTP_PROXY, respectively
docker run -d \ --name tulip-connector-host \ -e TULIP_FACTORY='https://<FACTORY>.tulip.co' \ -e TULIP_UUID='<UUID>' \ -e TULIP_MACHINE_SECRET='<SECRET>' \ -e TULIP_DEVICE_TYPE='onprem' \ -e CONNECTORS_HTTP_PROXY='' \ -e CONNECTORS_HTTPS_PROXY='' \ -e EXIT_ON_DISCONNECT=true \ --restart=always \ --net=host \ --mount type=volume,source=tuliplog,target=/log \ bckca2dh98.execute-api.us-east-1.amazonaws.com/public/connector-host:<TAG>
- Убедитесь, что новый Docker-контейнер активен.
docker ps
Использование окружений коннектора для тестирования обновления
Каждый коннектор имеет три различных окружения (production, pre-production и development), и каждое из этих окружений может иметь свой собственный хост коннектора, причем они могут быть разных версий. В зависимости от состояния приложения (версия разработки, ожидающая утверждения, опубликованная) может использоваться разное окружение. Предполагаемый процесс проверки хоста коннектора должен быть следующим:1. Обновление хоста разработки OPCH2. Обновите хост коннектора для проверки (среда предварительного производства указывает на dev) 1. Протестируйте коннектор на странице коннекторов или в режиме разработки вашего приложения3. По завершении тестирования обновите хост коннектора для производства.
Дополнительные сведения см. в разделе "Как запустить функцию коннектора в нескольких средах".
В качестве альтернативы вы можете обновить OPCH на экземпляре разработки, а затем уверенно обновить производственную среду.
Дополнительные ссылки
Включение ротации журналов для Docker
Для существующих хостов On-Premise Connector Hosts, которые не используют ротацию журналов Docker, следуйте инструкциям, описанным здесь, чтобы обеспечить надлежащее обслуживание дискового пространства.
Вы нашли то, что искали?
Вы также можете зайти на community.tulip.co, чтобы задать свой вопрос или узнать, сталкивались ли другие с подобным вопросом!
