Access Services From Within the Cluster
2 minute read
All the services deployed in the cluster are visible to each other. That makes it easy to connect them together.
Before you begin
You need to have a UMH cluster. If you do not already have a cluster, you can create one by following the Getting Started guide.
You also need to access the system where the cluster is running, either by logging into it or by using a remote shell.
Connect to a service from another service
To connect to a service from another service, you can use the service name as the host name.
To get a list of available services and related ports you can run the following command from the instance:
sudo $(which kubectl) get svc -n united-manufacturing-hub --kubeconfig /etc/rancher/k3s/k3s.yaml
All of them are available from within the cluster. The ones of type LoadBalancer are also available from outside the cluster using the node IP and the port listed in the Ports column.
Use the port on the left side of the colon (:
) to connect to the service from
outside the cluster. For example, the database is available on port 5432
.
Example
The most common use case is to connect to the MQTT Broker from Node-RED.
To do that, when you create the MQTT node, you can use the service name united-manufacturing-hub-mqtt as the host name and one the ports listed in the Ports column.
The MQTT service name has changed since version 0.9.10. If you are using an older
version, use united-manufacturing-hub-vernemq
instead of
united-manufacturing-hub-mqtt
.
What’s next
- See Access the MQTT Broker Outside the Cluster
- See Access Factoryinsight Outside the Cluster
- See Access Kafka Outside the Cluster