From 388896445eb0f3225758559ca4a316aa9dd4e1c4 Mon Sep 17 00:00:00 2001 From: Ricardo Noriega Date: Thu, 7 Apr 2022 12:47:54 +0200 Subject: [PATCH] Expose service node port range as MicroShift config Signed-off-by: Ricardo Noriega --- pkg/config/config.go | 20 +++++++++++--------- pkg/config/config_test.go | 25 +++++++++++++++---------- pkg/controllers/kube-apiserver.go | 1 + 3 files changed, 27 insertions(+), 19 deletions(-) diff --git a/pkg/config/config.go b/pkg/config/config.go index 14b6a616e0..60540e36ee 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -32,10 +32,11 @@ var ( type ClusterConfig struct { URL string `yaml:"url"` - ClusterCIDR string `yaml:"clusterCIDR"` - ServiceCIDR string `yaml:"serviceCIDR"` - DNS string `yaml:"dns"` - Domain string `yaml:"domain"` + ClusterCIDR string `yaml:"clusterCIDR"` + ServiceCIDR string `yaml:"serviceCIDR"` + ServiceNodePortRange string `yaml:"serviceNodePortRange"` + DNS string `yaml:"dns"` + Domain string `yaml:"domain"` } type ControlPlaneConfig struct { @@ -82,11 +83,12 @@ func NewMicroshiftConfig() *MicroshiftConfig { NodeName: nodeName, NodeIP: nodeIP, Cluster: ClusterConfig{ - URL: "https://127.0.0.1:6443", - ClusterCIDR: "10.42.0.0/16", - ServiceCIDR: "10.43.0.0/16", - DNS: "10.43.0.10", - Domain: "cluster.local", + URL: "https://127.0.0.1:6443", + ClusterCIDR: "10.42.0.0/16", + ServiceCIDR: "10.43.0.0/16", + ServiceNodePortRange: "30000-32767", + DNS: "10.43.0.10", + Domain: "cluster.local", }, ControlPlane: ControlPlaneConfig{}, Node: NodeConfig{}, diff --git a/pkg/config/config_test.go b/pkg/config/config_test.go index b408265bc2..4c39fc17cc 100644 --- a/pkg/config/config_test.go +++ b/pkg/config/config_test.go @@ -46,11 +46,12 @@ func TestCommandLineConfig(t *testing.T) { NodeName: "node1", NodeIP: "1.2.3.4", Cluster: ClusterConfig{ - URL: "https://1.2.3.4:6443", - ClusterCIDR: "10.20.30.40/16", - ServiceCIDR: "40.30.20.10/16", - DNS: "cluster.dns", - Domain: "cluster.local", + URL: "https://1.2.3.4:6443", + ClusterCIDR: "10.20.30.40/16", + ServiceCIDR: "40.30.20.10/16", + ServiceNodePortRange: "1024-32767", + DNS: "cluster.dns", + Domain: "cluster.local", }, }, err: nil, @@ -70,6 +71,7 @@ func TestCommandLineConfig(t *testing.T) { flags.StringVar(&config.Cluster.URL, "cluster-url", "", "") flags.StringVar(&config.Cluster.ClusterCIDR, "cluster-cidr", "", "") flags.StringVar(&config.Cluster.ServiceCIDR, "service-cidr", "", "") + flags.StringVar(&config.Cluster.ServiceNodePortRange, "service-node-port-range", "", "") flags.StringVar(&config.Cluster.DNS, "cluster-dns", "", "") flags.StringVar(&config.Cluster.Domain, "cluster-domain", "", "") @@ -84,6 +86,7 @@ func TestCommandLineConfig(t *testing.T) { "--cluster-url=" + tt.config.Cluster.URL, "--cluster-cidr=" + tt.config.Cluster.ClusterCIDR, "--service-cidr=" + tt.config.Cluster.ServiceCIDR, + "--service-node-port-range=" + tt.config.Cluster.ServiceNodePortRange, "--cluster-dns=" + tt.config.Cluster.DNS, "--cluster-domain=" + tt.config.Cluster.Domain, }) @@ -120,11 +123,12 @@ func TestEnvironmentVariableConfig(t *testing.T) { NodeName: "node1", NodeIP: "1.2.3.4", Cluster: ClusterConfig{ - URL: "https://cluster.com:4343/endpoint", - ClusterCIDR: "10.20.30.40/16", - ServiceCIDR: "40.30.20.10/16", - DNS: "10.43.0.10", - Domain: "cluster.local", + URL: "https://cluster.com:4343/endpoint", + ClusterCIDR: "10.20.30.40/16", + ServiceCIDR: "40.30.20.10/16", + ServiceNodePortRange: "1024-32767", + DNS: "10.43.0.10", + Domain: "cluster.local", }, }, err: nil, @@ -142,6 +146,7 @@ func TestEnvironmentVariableConfig(t *testing.T) { {"MICROSHIFT_CLUSTER_URL", "https://cluster.com:4343/endpoint"}, {"MICROSHIFT_CLUSTER_CLUSTERCIDR", "10.20.30.40/16"}, {"MICROSHIFT_CLUSTER_SERVICECIDR", "40.30.20.10/16"}, + {"MICROSHIFT_CLUSTER_SERVICENODEPORTRANGE", "1024-32767"}, {"MICROSHIFT_CLUSTER_DNS", "10.43.0.10"}, {"MICROSHIFT_CLUSTER_DOMAIN", "cluster.local"}, }, diff --git a/pkg/controllers/kube-apiserver.go b/pkg/controllers/kube-apiserver.go index 6fe70a17e1..44cb36cda6 100644 --- a/pkg/controllers/kube-apiserver.go +++ b/pkg/controllers/kube-apiserver.go @@ -110,6 +110,7 @@ func (s *KubeAPIServer) configure(cfg *config.MicroshiftConfig) { "--service-account-key-file=" + cfg.DataDir + "/resources/kube-apiserver/secrets/service-account-key/service-account.crt", "--service-account-signing-key-file=" + cfg.DataDir + "/resources/kube-apiserver/secrets/service-account-key/service-account.key", "--service-cluster-ip-range=" + cfg.Cluster.ServiceCIDR, + "--service-node-port-range=" + cfg.Cluster.ServiceNodePortRange, "--storage-backend=etcd3", "--tls-cert-file=" + cfg.DataDir + "/certs/kube-apiserver/secrets/service-network-serving-certkey/tls.crt", "--tls-private-key-file=" + cfg.DataDir + "/certs/kube-apiserver/secrets/service-network-serving-certkey/tls.key",