Hi Daniel, any updates?
Hi @Abaas Mahroos
Yes, I managed to reproduce the issue. But couldn’t find a fix for now.
I’m using K8s cluster with 5 nodes, installed calico cni add-on and metallb load balancer.
After installing AI Bridge, I got the same behavior you are facing.
I installed Kubernetes 1.27 with calico 3.28.2 network add-on and metallb v0.14.8
Here you can see I deployed AI Bridge containers:
Here you can see the services created for each container (no external IPs assigned):
And cannot reach any of the containers for an external network.I’m still looking into the issue.
Next week, BCN office is on holiday Monday and Tuesday. Would you have access to the machine on Wednesday? So we can schedule a call and share our settings?
Apologies for the delay in answering you back,
Daniel
Hi @Abaas Mahroos
I found the fix finally.
I had to do the following:
Created a new file inside the `aibridge/templates` folder:
HealthEndpoint_ingress.yaml
apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}-ingress-aibridge-health
spec:
type: LoadBalancer
externalIPs:
- {{ .Values.general.externalIP }}
selector:
app: {{ .Release.Name }}-aibridge-aibridge-health
ports:
- port: 3500
targetPort: 3500
protocol: TCP
Add this mapping to my hosts file on the management client machine
And then start AI Bridge using this values:
vms:
url: "http://vms-mngnt.domain"
bridge:
id: "12355b21-5a25-4a1d-b6d2-f6e02c9b95b4"
name: "EGX Cluster"
description: "Kubernetes cluster running the EGX software stack"
webpage: ""
gateway:
id: "1b80eaa0-203d-4dc0-ae3b-9bf4b85ec992"
version: "1.0.0"
replicas:
health: 1
connector: 1
streaming: 1
broker: 1
proxy: 1
webservice: 1
general:
tag: v1.7.2
debug: true
externalIP: "10.3.68.101"
externalHostname: "esvm-ft17-25"
masterKey: "encryptionKeyExample"
ingress-nginx:
enabled: true
controller:
service:
externalIPs:
- "10.3.68.101"
annotations:
metallb.universe.tf/loadBalancerIPs: "10.3.68.101"
The setup is as follow:
`vms-mngnt.domain` is where my VMS is installed. I have it unsecured with not certificates nor encryption involved.
`esvm-ft17-25` is my Control Plane node with the external IP address 10.3.68.103
MetalLb is configured to grab IP address from 10.3.68.100 to 10.3.68.150 (see configuration below)
apiVersion: metallb.io/v1beta1
kind: IPAddressPool
metadata:
name: default-pool
namespace: metallb-system
spec:
addresses:
- 10.3.68.100-10.3.68.150
---
apiVersion: metallb.io/v1beta1
kind: L2Advertisement
metadata:
name: default
namespace: metallb-system
spec:
ipAddressPools:
- default-pool
interfaces:
- eth0
Here you can see the services running on my cluster
Here you can see the pods running on the cluster
Here you can see the nodes
And the VMS is connected:
I can access the GraphiQL from the load balancer external ip address:
Hope this information helps you solving the issue in your end.
If this was not fixed until Wednesday, please send me an email so we can schedule a call during Wednesday next week.
Have a nice weekend, I will pay attention to my email during the holiday so please let me know if it was not fixed so I can schedule the call.
Daniel
Thank you! As an initial test this looks like it was successful. I can now see “connected” in Management Client.
I will run our end-to-end tests soon, but I think it’s safe to say that this is now resolved.
Thanks again!
Hi @Abaas Mahroos ,
Thank you for confirming the result. Glad to hear that it worked. I have seen your message before but couldn’t reply earlier.
In the next release of AI Bridge this configuration will be available to activate based on your needs. And thank you for your patience.
Hi @Abaas Mahroos,
After reviewing the solution I provided you the other day, a colleague of mine proposed a better one.
You will need to do the following:
- Provide a fake hostname for the externalHostname variable
general:
tag: v1.7.2
debug: true
externalIP: "10.3.68.101"
externalHostname: "fakehostname"
masterKey: "encryptionKeyExample"
-
Then, you need to add this fake host to your Windows and Linux machines that you wish to connect and work with AI Bridge.
-
For a Windows machine, you need to do the following:
- Navigate to the directory: [C:\Windows\System32\drivers\etc](file:C:/Windows/System32/drivers/etc)
- Edit the file hosts, adding your fake hostname.
After applying these changes, deploy AI Bridge again (if it is already deployed in your cluster, make sure to delete it first).
Once you have completed these steps, please connect to the AI Bridge service only through the fake hostname. Any access using the IP address will be refused.
For example, to test the Health container:
curl "http://fakehostname:80/api/health/graphql" -X POST -H "content-type: application/json" --data "{ \"query\": \"{ operational }\" }"
Please, if you test this solution and it works for you, I would appreciate if you flag this answer so it appears at the beginning of the discussion.
Thank you
Daniel









