Skip to content

Change nginx service type to ClusterIP#781

Merged
theboringstuff merged 7 commits intomainfrom
fix/nginx-service-type-change
Nov 10, 2025
Merged

Change nginx service type to ClusterIP#781
theboringstuff merged 7 commits intomainfrom
fix/nginx-service-type-change

Conversation

@theboringstuff
Copy link
Collaborator

@theboringstuff theboringstuff commented Nov 7, 2025

Description

Default nginx-ingress manifests create k8s Service with "LoadBalancer" type. This causes problems if openstack-cloud-controller-manager is installed on the cluster, because it tries to actually expose the service. (and since daemon set is present on all nodes, controller creates a lot of openstack ports). We do not need that, since we rely on host ports.

Solution

  • During plugin patching, changed LoadBalancer type to ClusterIP type for nginx service
  • Also removed external traffic policy, since it is not allowed for ClusterIP type

How to apply

  • Run migrate_kubemarine with nginx_cluster_ip patch

Test Cases

TestCase 1

Steps:

  1. Install KubeMarine cluster

Results:

Before After
nginx service has LoadBalancer type nginx service has ClusterIP type

Checklist

  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • There is no breaking changes, or migration patch is provided
  • Integration CI passed
  • Unit tests. If Yes list of new/changed tests with brief description
  • There is no merge conflicts

@theboringstuff theboringstuff changed the title change service type to clusterip Change nginx service type to ClusterIP Nov 10, 2025
@theboringstuff theboringstuff marked this pull request as ready for review November 10, 2025 09:34
@theboringstuff theboringstuff merged commit d283f6e into main Nov 10, 2025
29 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Nov 10, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant