配置代理

如果您的实例在没有 Internet 连接的专用网络中运行,则必须为区块链服务配置代理。

完成以下任务来为区块链实例设置代理。

创建服务条目

使用以下配置在实例名称空间中创建 Istio ServiceEntry 对象作为外部代理。您必须创建一个 TCP(而非 HTTP)ServiceEntry 对象,才能启用对外部代理的 Istio 控制流量。有关详细信息,请参阅 Istio 文档中的 Configure traffic to external HTTPS proxy

apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
  name: obpee-ext-proxy
  namespace: <INSTANCE_NAMESPACE>
spec:
  hosts:
  - <PROXY-HOST-FQDN>
  addresses:
  - <PROXY-IP-ADDRESS>
  exportTo:
  - "."
  location: MESH_EXTERNAL
  ports:
  - number: <PROXY-PORT-NUMBER>
    name: tcp
    protocol: TCP

配置代理环境

Oracle Blockchain Platform Enterprise Edition 分发包包含 setProxy.sh 脚本,您可以使用该脚本为区块链实例的所有服务配置代理环境。从命令行运行以下命令。当 setProxy.sh 脚本运行时,它将重新启动 Kubernetes 集群中所需的区块链服务。

# Configure environment variables before running the script
export mspId="<INSTANCE_NAME>"
export httpProxy="<HTTP_PROXY>"
export httpsProxy="<HTTPS_PROXY>"
export noProxy="<NO_PROXY>"
 
# Go to the distribution package dir
cd <distribution-package-dir>
 
# Run the setProxy.sh script
./setProxy.sh