brief-salesmen-62354
03/14/2025, 2:13 PMimport pulumi
import pulumi_kubernetes as k8s
from pulumi_kubernetes.helm.v3 import Chart, ChartOpts
from pulumi_kubernetes_ingress_nginx import IngressController
from pulumi_kubernetes_ingress_nginx import ControllerArgs, ControllerPublishServiceArgs,ControllerServiceArgs
from pulumi_kubernetes.core.v1 import Service
# Install NGINX Ingress Controller with Static IP
nginx_ingress = IngressController(
"nginx-ingress-controller",
fullname_override="nginx-ingress-controller",
name_override="nginx-ingress",
controller=ControllerArgs(
publish_service=ControllerPublishServiceArgs(enabled=True),
config={"proxy-body-size": "50m"}, # Custom config
service=ControllerServiceArgs(
type="LoadBalancer",
load_balancer_ip="34.125.27.78", # Your reserved static IP
),
),
opts=pulumi.ResourceOptions(provider=k8s_provider),
)
spec = pulumi.Output.all(frontend_service.metadata.name, api_service.metadata.name).apply(lambda names: {
"rules": [
{
"http": {
"host": "<http://temp.instel.ai|temp.instel.ai>",
"paths": [
{
"path": "/api",
"pathType": "Prefix",
"backend": {
"service": {
"name": names[1], # api-service name
"port": { "number": 9000 }
}
}
},
{
"path": "/",
"pathType": "Prefix",
"backend": {
"service": {
"name": names[0], # frontend name
"port": { "number": 3000 }
}
}
}
]
}
}
]
})
# Define the Ingress Resource
app_ingress = k8s.networking.v1.Ingress(
"app-ingress",
metadata={
"name": "app-ingress",
"annotations": {
"<http://kubernetes.io/ingress.class|kubernetes.io/ingress.class>": "nginx",
"<http://nginx.ingress.kubernetes.io/rewrite-target|nginx.ingress.kubernetes.io/rewrite-target>": "/", # Ensure correct path rewriting
},
},
spec=spec,
opts=pulumi.ResourceOptions(provider=k8s_provider, depends_on=[nginx_ingress]),
)
I am trying to provide a static ip to the load balancer but still its getting assigned to random temp ip address
any ideas how to solve this issueNo matter how you like to participate in developer communities, Pulumi wants to meet you there. If you want to meet other Pulumi users to share use-cases and best practices, contribute code or documentation, see us at an event, or just tell a story about something cool you did with Pulumi, you are part of our community.
Powered by