企业内部连接器主机概述

Prev Next

:::(警告)(LTS12+ OPCH 网络变更)随着 LTS12 的推出,OPCH 与郁金香云的通信方式发生了变更。为了确保 OPCH 能够支持连接器和机器的大规模部署,这些更改是必要的。

通过这一变更,OPCH 从与云保持持续的 websocket 连接转变为无状态连接。这将导致 OPCH 和郁金香云之间的 RESTful 调用增加。在 OPCH 升级期间,客户有责任确保代理和防火墙能够支持增加的负载。
:::

目的

了解如何利用内部部署连接器主机进行集成。

前提条件

要了解 Tulip 中的连接器主机,请先阅读本文

概述

本文旨在作为 Tulip 中预置连接器主机 (OPCH) 的参考点。连接器主机是一种服务,用于促进 Tulip 与外部网络服务、数据库和 OPC UA 服务器的连接。所有 Tulip 实例默认都有一个云连接器主机。

在确定内部部署连接器主机是否适合正确的架构时,需要考虑以下几个因素。

内部部署连接器主机的主要考虑因素

内部部署连接器主机的注意事项可分为几类:

1.网络2.基础设施管理3.性能

联网

部署内部部署连接器主机最常见的理由是,它在连接本地网络中托管的系统时具有优势。使用内部部署产品,Tulip 与外部系统的所有连接都从本地网络开始。所有来自您网络的连接都是通过安全的 WebSocket 向外连接到 Tulip。

这与云连接器主机形成鲜明对比,后者需要对服务进行入站访问。这通常是由 IT 决定是否允许从Tulip 云到服务的入站安全 WebSocket 连接,通常使用广域网路由器/防火墙上的端口转发规则。

基础设施管理

要部署内部部署连接器主机,客户需要负责几个基础设施组件。以下是基本角色和责任矩阵:

郁金香 客户
提供 OPCH 的技术资源 X
虚拟机托管和部署 X
虚拟机监控和更新 X
生成 OPCH 凭证 X
测试 OPCH X
部署 OPCH X
更新 OPCH X
监控 OPCH X
排除 OPCH 故障 X X

客户最好能熟练掌握用于部署 Connector Host 的技术,以及用于容器管理的 Docker 等技术。

部署内部连接器主机

技术标准

OPCH Performance

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 还建议每个虚拟机只托管一个内部部署连接器主机,以避免网站出现单点故障。

虚拟机要求

  • 内存 - 4GB
  • ROM - 8-16GB 磁盘大小
  • CPU - 2 核
  • Docker 版本 - 20.10+

对于网络要求,内部部署连接器主机具备以下条件:

  • 一个 IP 地址
  • DNS 解析到
  • 通过 443 端口向外访问 Tulip(IP 在列出)
  • 此处Docker 存储库的出站访问
  • 通过端口向外访问所有相关的外部系统

在此查看网络要求的完整列表

申请证书

联系郁金香支持中心(support@tulip.co) 申请内部部署连接器主机凭据,请使用以下模板,填写括号中的任何详细信息:



请求创建新的内部部署连接器主机。 


郁金香实例:  



Tulip 将通过安全的临时密码链接创建和共享凭证。详细信息应传输到内部管理的凭证存储中,并包括以下内容:


* 工厂
* UUID
* 机器秘密


:::(Info) (Reusing Credentials)
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.
:::  



### 可用的内部部署连接器主机版本(标签)


:::(Info) (Version Compatibility)
OPCH must be kept up-to-date with the Tulip product. More [information](/r230/docs/on-prem-connector-host-version-support).
:::  



Tulip 使用 Docker 映像标签来对 Connector Host 映像进行版本控制。以下是当前支持的内部部署连接器主机标签列表,可与 Docker`运行`和`拉动`命令结合使用。 




| LTS 版本 | 双周版本 | 最新 OPCH 标签 |
| --- | --- | --- |
| LTS11 | r262 - r274 | lts11.7 |
| LTS12 | r275-r287 | LTS12.10 |
| LTS13 | r288-r307 | lts13.4 |
| LTS14 | r308+ | lts14 |


### 部署


下文概述了如何在各种环境中部署内部部署连接器主机。AWS 和 Azure 都提供能够运行 Docker 映像的容器服务。 


* AWS:


	+ 使用 Web UI 和此指令集[:https://aws.amazon.com/getting-started/hands-on/deploy-docker-containers/](https://aws.amazon.com/getting-started/hands-on/deploy-docker-containers/)


:::(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
:::  



* Azure

`az container create \ -g <AZURE中资源组的名称> \ --name <容器的名称> \ --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://<YOUR SITE>.tulip.co' \ TULIP_MACHINE_SECRET='<SECRET>' \ TULIP_DEVICE_TYPE='onprem' \ CONNECTORS_HTTP_PROXY=''\ CONNECTORS_HTTP_PROXY=''`
* Linux 虚拟机: :::(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 \


## 升级内部部署连接器主机


:::(Info) (Version Compatibility)
OPCH must be kept up-to-date with the Tulip product. More [information](/r230/docs/on-prem-connector-host-version-support).
:::  
:::(Info) (Recommended Upgrade Procedure for OPCH)
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 根据我们的长期支持 (LTS) 发布计划发布内部部署连接器主机的更新。要升级服务,请按照以下说明操作:


OPCH 的升级过程将导致停机,同时 pod 将停止并重新创建。


1. 获取最新版本的内部部署连接器主机 Docker 映像。

`docker pull bckca2dh98.execute-api.us-east-1.amazonaws.com/public/connector-host:<TAG>2`. 运行下面的命令获取 Docker 容器 ID。

`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`命令。


:::(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 \ --name tulip-connector-host \ -e TULIP_FACTORY='https://.tulip.\ -e TULIP_UUID='' \ -e TULIP_MACHINE_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:


1. 确认新的 Docker 容器处于活动状态。

`docker ps`


### 使用连接器环境测试升级


每个连接器都有三个不同的环境(生产环境、预生产环境和开发环境),每个环境都可以有自己的连接器主机,它们可以是不同的版本。根据应用程序的状态(开发版本、待批准版本、已发布版本),可以使用不同的环境。升级验证连接器主机(预生产环境此处指向开发环境) 1.在连接器页面或应用程序的开发模式下测试连接器3.验证测试完成后,升级生产连接器主机


更多信息,请参阅[如何在多个环境中运行连接器功能](/r230/docs/how-to-run-a-connector-function-in-multiple-environments)。


或者,您也可以在开发实例中升级 OPCH,然后放心地升级生产环境。


## 其他参考资料


### 为 Docker 启用日志旋转功能


对于未使用 Docker 日志旋转的现有内部部署连接器主机,请按照[此处](https://support.tulip.co/docs/enabling-log-rotations-for-existing-on-premise-connector-host-container)记录的说明操作,以确保磁盘空间得到妥善维护。




---

找到您想要的了吗?


你也可以前往[community.tulip.co](https://community.tulip.co/?utm_source=intercom&utm_medium=article-link&utm_campaign=all)发布你的问题,或者看看其他人是否也遇到过类似的问题!