master.yaml.v1.j2 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. apiLevels:
  2. {% if not openshift.common.version_greater_than_3_1_or_1_1 | bool %}
  3. - v1beta3
  4. {% endif %}
  5. - v1
  6. apiVersion: v1
  7. assetConfig:
  8. logoutURL: ""
  9. masterPublicURL: {{ openshift.master.public_api_url }}
  10. publicURL: {{ openshift.master.public_console_url }}/
  11. servingInfo:
  12. bindAddress: {{ openshift.master.bind_addr }}:{{ openshift.master.console_port }}
  13. bindNetwork: tcp4
  14. certFile: master.server.crt
  15. clientCA: ""
  16. keyFile: master.server.key
  17. maxRequestsInFlight: 0
  18. requestTimeoutSeconds: 0
  19. {% if openshift_master_ha | bool %}
  20. controllerLeaseTTL: {{ openshift.master.controller_lease_ttl | default('30') }}
  21. {% endif %}
  22. controllers: '*'
  23. corsAllowedOrigins:
  24. {% for origin in ['127.0.0.1', 'localhost', openshift.common.ip, openshift.common.public_ip] | union(openshift.common.all_hostnames) | unique %}
  25. - {{ origin }}
  26. {% endfor %}
  27. {% for custom_origin in openshift.master.custom_cors_origins | default("") %}
  28. - {{ custom_origin }}
  29. {% endfor %}
  30. {% for name in (named_certificates | map(attribute='names')) | list | oo_flatten %}
  31. - {{ name }}
  32. {% endfor %}
  33. {% if 'disabled_features' in openshift.master %}
  34. disabledFeatures: {{ openshift.master.disabled_features | to_json }}
  35. {% endif %}
  36. {% if openshift.master.embedded_dns | bool %}
  37. dnsConfig:
  38. bindAddress: {{ openshift.master.bind_addr }}:{{ openshift.master.dns_port }}
  39. bindNetwork: tcp4
  40. {% endif %}
  41. etcdClientInfo:
  42. ca: {{ "ca.crt" if (openshift.master.embedded_etcd | bool) else "master.etcd-ca.crt" }}
  43. certFile: master.etcd-client.crt
  44. keyFile: master.etcd-client.key
  45. urls:
  46. {% for etcd_url in openshift.master.etcd_urls %}
  47. - {{ etcd_url }}
  48. {% endfor %}
  49. {% if openshift.master.embedded_etcd | bool %}
  50. etcdConfig:
  51. address: {{ openshift.common.hostname }}:{{ openshift.master.etcd_port }}
  52. peerAddress: {{ openshift.common.hostname }}:7001
  53. peerServingInfo:
  54. bindAddress: {{ openshift.master.bind_addr }}:7001
  55. certFile: etcd.server.crt
  56. clientCA: ca.crt
  57. keyFile: etcd.server.key
  58. servingInfo:
  59. bindAddress: {{ openshift.master.bind_addr }}:{{ openshift.master.etcd_port }}
  60. certFile: etcd.server.crt
  61. clientCA: ca.crt
  62. keyFile: etcd.server.key
  63. storageDirectory: {{ openshift.common.data_dir }}/openshift.local.etcd
  64. {% endif %}
  65. etcdStorageConfig:
  66. kubernetesStoragePrefix: kubernetes.io
  67. kubernetesStorageVersion: v1
  68. openShiftStoragePrefix: openshift.io
  69. openShiftStorageVersion: v1
  70. imageConfig:
  71. format: {{ openshift.master.registry_url }}
  72. latest: false
  73. kind: MasterConfig
  74. kubeletClientInfo:
  75. {# TODO: allow user specified kubelet port #}
  76. ca: ca.crt
  77. certFile: master.kubelet-client.crt
  78. keyFile: master.kubelet-client.key
  79. port: 10250
  80. {% if openshift.master.embedded_kube | bool %}
  81. kubernetesMasterConfig:
  82. {% if not openshift.common.version_greater_than_3_1_or_1_1 | bool %}
  83. apiLevels:
  84. - v1beta3
  85. - v1
  86. {% endif %}
  87. apiServerArguments: {{ api_server_args if api_server_args is defined else 'null' }}
  88. controllerArguments: {{ controller_args if controller_args is defined else 'null' }}
  89. masterCount: {{ openshift.master.master_count }}
  90. masterIP: {{ openshift.common.ip }}
  91. podEvictionTimeout: ""
  92. proxyClientInfo:
  93. certFile: master.proxy-client.crt
  94. keyFile: master.proxy-client.key
  95. schedulerConfigFile: {{ openshift_master_scheduler_conf }}
  96. servicesNodePortRange: ""
  97. servicesSubnet: {{ openshift.master.portal_net }}
  98. staticNodeNames: {{ openshift_node_ips | default([], true) }}
  99. {% endif %}
  100. masterClients:
  101. {# TODO: allow user to set externalKubernetesKubeConfig #}
  102. externalKubernetesKubeConfig: ""
  103. openshiftLoopbackKubeConfig: openshift-master.kubeconfig
  104. masterPublicURL: {{ openshift.master.public_api_url }}
  105. networkConfig:
  106. clusterNetworkCIDR: {{ openshift.master.sdn_cluster_network_cidr }}
  107. hostSubnetLength: {{ openshift.master.sdn_host_subnet_length }}
  108. {% if openshift.common.use_openshift_sdn %}
  109. networkPluginName: {{ openshift.common.sdn_network_plugin_name }}
  110. {% endif %}
  111. # serviceNetworkCIDR must match kubernetesMasterConfig.servicesSubnet
  112. serviceNetworkCIDR: {{ openshift.master.portal_net }}
  113. {% include 'v1_partials/oauthConfig.j2' %}
  114. pauseControllers: false
  115. policyConfig:
  116. bootstrapPolicyFile: {{ openshift_master_policy }}
  117. openshiftInfrastructureNamespace: openshift-infra
  118. openshiftSharedResourcesNamespace: openshift
  119. projectConfig:
  120. defaultNodeSelector: "{{ openshift.master.default_node_selector }}"
  121. projectRequestMessage: "{{ openshift.master.project_request_message }}"
  122. projectRequestTemplate: "{{ openshift.master.project_request_template }}"
  123. securityAllocator:
  124. mcsAllocatorRange: "{{ openshift.master.mcs_allocator_range }}"
  125. mcsLabelsPerProject: {{ openshift.master.mcs_labels_per_project }}
  126. uidAllocatorRange: "{{ openshift.master.uid_allocator_range }}"
  127. routingConfig:
  128. subdomain: "{{ openshift.master.default_subdomain | default("") }}"
  129. serviceAccountConfig:
  130. limitSecretReferences: false
  131. managedNames:
  132. - default
  133. - builder
  134. - deployer
  135. masterCA: ca.crt
  136. privateKeyFile: serviceaccounts.private.key
  137. publicKeyFiles:
  138. - serviceaccounts.public.key
  139. servingInfo:
  140. bindAddress: {{ openshift.master.bind_addr }}:{{ openshift.master.api_port }}
  141. bindNetwork: tcp4
  142. certFile: master.server.crt
  143. clientCA: ca.crt
  144. keyFile: master.server.key
  145. maxRequestsInFlight: 500
  146. requestTimeoutSeconds: 3600
  147. {% if named_certificates %}
  148. namedCertificates:
  149. {% for named_certificate in named_certificates %}
  150. - certFile: {{ named_certificate['certfile'] }}
  151. keyFile: {{ named_certificate['keyfile'] }}
  152. names:
  153. {% for name in named_certificate['names'] %}
  154. - "{{ name }}"
  155. {% endfor %}
  156. {% endfor %}
  157. {% endif %}