diff options
author | Samuel Munilla <smunilla@redhat.com> | 2016-10-24 13:26:56 -0400 |
---|---|---|
committer | Samuel Munilla <smunilla@redhat.com> | 2016-11-03 16:19:11 -0400 |
commit | b50b4ea0b03feb9431abd7294fe4fb6b549ddfc0 (patch) | |
tree | 3e191cc9e3d09c368f75fe01bf0a3ac1f51ce949 | |
parent | 17c3d6236adea676c3d9248c3d2f7afb0d582750 (diff) | |
download | openshift-b50b4ea0b03feb9431abd7294fe4fb6b549ddfc0.tar.gz openshift-b50b4ea0b03feb9431abd7294fe4fb6b549ddfc0.tar.bz2 openshift-b50b4ea0b03feb9431abd7294fe4fb6b549ddfc0.tar.xz openshift-b50b4ea0b03feb9431abd7294fe4fb6b549ddfc0.zip |
Update defaults for clusterNetworkCIDR & hostSubnetLength
Per https://github.com/openshift/openshift-docs/issues/1700:
The default values for pod networking have changed:
- clusterNetworkCIDR now defaults to 10.128.0.0/14 (10.128.0.0 - 10.131.255.255)
rather than 10.1.0.0/16.
- hostSubnetLength now defaults to 9 rather than 8
(meaning each node will be assigned a /23 subnet rather than a /24)
Fixes Bug 1320952
-rw-r--r-- | inventory/byo/hosts.origin.example | 8 | ||||
-rw-r--r-- | inventory/byo/hosts.ose.example | 8 | ||||
-rwxr-xr-x | roles/openshift_facts/library/openshift_facts.py | 24 |
3 files changed, 27 insertions, 13 deletions
diff --git a/inventory/byo/hosts.origin.example b/inventory/byo/hosts.origin.example index 13f4c214c..e769537f9 100644 --- a/inventory/byo/hosts.origin.example +++ b/inventory/byo/hosts.origin.example @@ -472,7 +472,7 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', # network blocks should be private and should not conflict with network blocks # in your infrastructure that pods may require access to. Can not be changed # after deployment. -#osm_cluster_network_cidr=10.1.0.0/16 +#osm_cluster_network_cidr=10.128.0.0/14 #openshift_portal_net=172.30.0.0/16 @@ -492,9 +492,9 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', # the CIDRs reserved for external IPs, nodes, pods, or services. #openshift_master_ingress_ip_network_cidr=172.46.0.0/16 -# Configure number of bits to allocate to each host’s subnet e.g. 8 -# would mean a /24 network on the host. -#osm_host_subnet_length=8 +# Configure number of bits to allocate to each host’s subnet e.g. 9 +# would mean a /23 network on the host. +#osm_host_subnet_length=9 # Configure master API and console ports. #openshift_master_api_port=8443 diff --git a/inventory/byo/hosts.ose.example b/inventory/byo/hosts.ose.example index 2d54dfceb..be919c105 100644 --- a/inventory/byo/hosts.ose.example +++ b/inventory/byo/hosts.ose.example @@ -472,7 +472,7 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', # network blocks should be private and should not conflict with network blocks # in your infrastructure that pods may require access to. Can not be changed # after deployment. -#osm_cluster_network_cidr=10.1.0.0/16 +#osm_cluster_network_cidr=10.128.0.0/14 #openshift_portal_net=172.30.0.0/16 @@ -492,9 +492,9 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', # the CIDRs reserved for external IPs, nodes, pods, or services. #openshift_master_ingress_ip_network_cidr=172.46.0.0/16 -# Configure number of bits to allocate to each host’s subnet e.g. 8 -# would mean a /24 network on the host. -#osm_host_subnet_length=8 +# Configure number of bits to allocate to each host’s subnet e.g. 9 +# would mean a /23 network on the host. +#osm_host_subnet_length=9 # Configure master API and console ports. #openshift_master_api_port=8443 diff --git a/roles/openshift_facts/library/openshift_facts.py b/roles/openshift_facts/library/openshift_facts.py index 6c045e7ab..21104039a 100755 --- a/roles/openshift_facts/library/openshift_facts.py +++ b/roles/openshift_facts/library/openshift_facts.py @@ -901,10 +901,24 @@ def set_sdn_facts_if_unset(facts, system_facts): facts['common']['sdn_network_plugin_name'] = plugin if 'master' in facts: - if 'sdn_cluster_network_cidr' not in facts['master']: - facts['master']['sdn_cluster_network_cidr'] = '10.1.0.0/16' - if 'sdn_host_subnet_length' not in facts['master']: - facts['master']['sdn_host_subnet_length'] = '8' + # set defaults for sdn_cluster_network_cidr and sdn_host_subnet_length + # these might be overridden if they exist in the master config file + facts['master']['sdn_cluster_network_cidr'] = '10.128.0.0/14' + facts['master']['sdn_host_subnet_length'] = '9' + + master_cfg_path = os.path.join(facts['common']['config_base'], + 'master/master-config.yaml') + if os.path.isfile(master_cfg_path): + with open(master_cfg_path, 'r') as master_cfg_f: + config = yaml.safe_load(master_cfg_f.read()) + + if 'networkConfig' in config: + if 'clusterNetworkCIDR' in config['networkConfig']: + facts['master']['sdn_cluster_network_cidr'] = \ + config['networkConfig']['clusterNetworkCIDR'] + if 'hostSubnetLength' in config['networkConfig']: + facts['master']['sdn_host_subnet_length'] = \ + config['networkConfig']['hostSubnetLength'] if 'node' in facts and 'sdn_mtu' not in facts['node']: node_ip = facts['common']['ip'] @@ -1771,8 +1785,8 @@ class OpenShiftFacts(object): facts = set_node_schedulability(facts) facts = set_selectors(facts) facts = set_identity_providers_if_unset(facts) - facts = set_sdn_facts_if_unset(facts, self.system_facts) facts = set_deployment_facts_if_unset(facts) + facts = set_sdn_facts_if_unset(facts, self.system_facts) facts = set_container_facts_if_unset(facts) facts = build_kubelet_args(facts) facts = build_controller_args(facts) |