@DudaNogueira I do not understand this:
If I add in weaviate/values.yaml : externalIPs: ["xx.xx.xxx.xxx"] :
service:
name: weaviate
ports:
- name: http
protocol: TCP
port: 8080
# Target port is going to be the same for every port
type: LoadBalancer
externalIPs: ["xx.xx.xxx.xxx"]
loadBalancerSourceRanges: []
# optionally set cluster IP if you want to set a static IP
clusterIP:
#externalIPs: "51.68.117.154"
annotations: {}
# The service controls how weaviate gRPC endpoint is exposed to the outside world.
# If you don't want a public load balancer, you can also choose 'ClusterIP' or `NodePort`
# to make weaviate gRPC port be only accessible within your cluster.
# This service is by default enabled but if you don't want it to be deployed in your
# environment then it can be disabled by setting enabled: false option.
grpcService:
enabled: true
name: weaviate-grpc
ports:
- name: grpc
protocol: TCP
port: 50051
# Target port is going to be the same for every port
type: LoadBalancer
externalIPs: ["xx.xx.xxx.xxx"]
loadBalancerSourceRanges: []
# optionally set cluster IP if you want to set a static IP
clusterIP:
I do not get the External-IP for the LoadBalancer Services :
raphy@raohy:~/.talos/weaviate$ kubectl -n weaviate get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
weaviate LoadBalancer yy.yyy.yy.yyy <pending> 8080:31822/TCP 2m40s
weaviate-grpc LoadBalancer yy.yyy.yy.yyy <pending> 50051:31085/TCP 2m40s
weaviate-headless ClusterIP None <none> 80/TCP 2m40s
raphy@raohy:~/.talos/weaviate$
But if I do not insert externalIPs: [“xx.xx.xxx.xxx”] into LoadBalancer Services in weaviate/values.yaml :
service:
name: weaviate
ports:
- name: http
protocol: TCP
port: 8080
# Target port is going to be the same for every port
type: LoadBalancer
loadBalancerSourceRanges: []
# optionally set cluster IP if you want to set a static IP
clusterIP:
#externalIPs: "51.68.117.154"
annotations: {}
# The service controls how weaviate gRPC endpoint is exposed to the outside world.
# If you don't want a public load balancer, you can also choose 'ClusterIP' or `NodePort`
# to make weaviate gRPC port be only accessible within your cluster.
# This service is by default enabled but if you don't want it to be deployed in your
# environment then it can be disabled by setting enabled: false option.
grpcService:
enabled: true
name: weaviate-grpc
ports:
- name: grpc
protocol: TCP
port: 50051
# Target port is going to be the same for every port
type: LoadBalancer
loadBalancerSourceRanges: []
# optionally set cluster IP if you want to set a static IP
clusterIP:
annotations: {}
install the plain weaviate/values.yaml :
raphy@raohy:~/.talos/weaviate$ kubectl apply -f weaviate-storage.yaml
persistentvolume/weaviate-volume created
raphy@raohy:~/.talos/weaviate$
raphy@raohy:~/.talos/weaviate$ helm -n weaviate upgrade --install "weaviate" weaviate/weaviate --values weaviate/values.yaml
Release "weaviate" does not exist. Installing it now.
raphy@raohy:~/.talos/weaviate$ kubectl -n weaviate get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
weaviate LoadBalancer aa.aaa.aa.aaa <pending> 8080:30481/TCP 80s
weaviate-grpc LoadBalancer bb.bbb.bbb.bb <pending> 50051:32275/TCP 80s
weaviate-headless ClusterIP None <none> 80/TCP 80s
And, then, apply, a patch to the services, setting the externalIPs:
raphy@raohy:~/.talos/weaviate$ kubectl -n weaviate patch svc weaviate -p '{"spec":{"externalIPs":["xx.xx.xxx.xxx"]}}'
service/weaviate patched
raphy@raohy:~/.talos/weaviate$ kubectl -n weaviate patch svc weaviate-grpc -p '{"spec":{"externalIPs":["xx.xx.xxx.xxx"]}}'
service/weaviate-grpc patched
Then the LoadBalancer services have their External-IP set:
raphy@raohy:\~/.talos/weaviate$ kubectl -n weaviate get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
weaviate LoadBalancer aa.aaa.aa.aaa xx.xx.xxx.xxx 8080:30481/TCP 4m18s
weaviate-grpc LoadBalancer bb.bbb.bbb.bb xx.xx.xxx.xxx 50051:32275/TCP 4m18s
weaviate-headless ClusterIP None 80/TCP 4m18s
Why?