浏览代码

Set custom hostnames for servers (#643)

* README, all.yml, stack_params.yml, heat_stack.yaml.j2: hostname customisation added

* hostnames customisation: default set in stack_params

* heat_stack: bug fix

* fixed commented defaults in group_vars/all.yml
Tlacenka 7 年之前
父节点
当前提交
d41308f238

+ 4 - 0
playbooks/provisioning/openstack/README.md

@@ -78,6 +78,10 @@ your servers will be under. With the default values, this will be
 That sudomain can be set as well by the `openshift_app_domain` variable in
 That sudomain can be set as well by the `openshift_app_domain` variable in
 the inventory.
 the inventory.
 
 
+The `openstack_<role name>_hostname` is a set of variables used for customising
+hostnames of servers with a given role. When such a variable stays commented,
+default hostname (usually the role name) is used.
+
 The `public_dns_nameservers` is a list of DNS servers accessible from all
 The `public_dns_nameservers` is a list of DNS servers accessible from all
 the created Nova servers. These will be serving as your DNS forwarders for
 the created Nova servers. These will be serving as your DNS forwarders for
 external FQDNs that do not belong to the cluster's DNS domain and its subdomains.
 external FQDNs that do not belong to the cluster's DNS domain and its subdomains.

+ 9 - 0
playbooks/provisioning/openstack/sample-inventory/group_vars/all.yml

@@ -3,6 +3,15 @@ env_id: "openshift"
 public_dns_domain: "example.com"
 public_dns_domain: "example.com"
 public_dns_nameservers: []
 public_dns_nameservers: []
 
 
+# # Used Hostnames
+# # - set custom hostnames for roles by uncommenting corresponding lines
+#openstack_master_hostname: "master"
+#openstack_infra_hostname: "infra-node"
+#openstack_node_hostname: "app-node"
+#openstack_lb_hostname: "lb"
+#openstack_etcd_hostname: "etcd"
+#openstack_dns_hostname: "dns"
+
 openstack_ssh_public_key: "openshift"
 openstack_ssh_public_key: "openshift"
 openstack_external_network_name: "public"
 openstack_external_network_name: "public"
 #openstack_private_network_name:  "openshift-ansible-{{ stack_name }}-net"
 #openstack_private_network_name:  "openshift-ansible-{{ stack_name }}-net"

+ 6 - 0
playbooks/provisioning/openstack/stack_params.yaml

@@ -3,6 +3,12 @@ stack_name: "{{ env_id }}.{{ public_dns_domain }}"
 dns_domain: "{{ public_dns_domain }}"
 dns_domain: "{{ public_dns_domain }}"
 dns_nameservers: "{{ public_dns_nameservers }}"
 dns_nameservers: "{{ public_dns_nameservers }}"
 subnet_prefix: "{{ openstack_subnet_prefix }}"
 subnet_prefix: "{{ openstack_subnet_prefix }}"
+master_hostname: "{{ openstack_master_hostname | default('master') }}"
+infra_hostname: "{{ openstack_infra_hostname | default('infra-node') }}"
+node_hostname: "{{ openstack_node_hostname | default('app-node') }}"
+lb_hostname: "{{ openstack_lb_hostname | default('lb') }}"
+etcd_hostname: "{{ openstack_etcd_hostname | default('etcd') }}"
+dns_hostname: "{{ openstack_dns_hostname | default('dns') }}"
 ssh_public_key: "{{ openstack_ssh_public_key }}"
 ssh_public_key: "{{ openstack_ssh_public_key }}"
 openstack_image: "{{ openstack_default_image_name }}"
 openstack_image: "{{ openstack_default_image_name }}"
 lb_flavor: "{{ openstack_lb_flavor | default(openstack_default_flavor) }}"
 lb_flavor: "{{ openstack_lb_flavor | default(openstack_default_flavor) }}"

+ 8 - 10
roles/openstack-stack/templates/heat_stack.yaml.j2

@@ -483,7 +483,7 @@ resources:
               template: k8s_type-%index%.cluster_id
               template: k8s_type-%index%.cluster_id
               params:
               params:
                 cluster_id: {{ stack_name }}
                 cluster_id: {{ stack_name }}
-                k8s_type: etcd
+                k8s_type: {{ etcd_hostname }}
           cluster_env: {{ public_dns_domain }}
           cluster_env: {{ public_dns_domain }}
           cluster_id:  {{ stack_name }}
           cluster_id:  {{ stack_name }}
           group:
           group:
@@ -526,7 +526,7 @@ resources:
               template: k8s_type-%index%.cluster_id
               template: k8s_type-%index%.cluster_id
               params:
               params:
                 cluster_id: {{ stack_name }}
                 cluster_id: {{ stack_name }}
-                k8s_type: lb
+                k8s_type: {{ lb_hostname }}
           cluster_env: {{ public_dns_domain }}
           cluster_env: {{ public_dns_domain }}
           cluster_id:  {{ stack_name }}
           cluster_id:  {{ stack_name }}
           group:
           group:
@@ -571,7 +571,7 @@ resources:
               template: k8s_type-%index%.cluster_id
               template: k8s_type-%index%.cluster_id
               params:
               params:
                 cluster_id: {{ stack_name }}
                 cluster_id: {{ stack_name }}
-                k8s_type: master
+                k8s_type: {{ master_hostname }}
           cluster_env: {{ public_dns_domain }}
           cluster_env: {{ public_dns_domain }}
           cluster_id:  {{ stack_name }}
           cluster_id:  {{ stack_name }}
           group:
           group:
@@ -624,11 +624,10 @@ resources:
         properties:
         properties:
           name:
           name:
             str_replace:
             str_replace:
-              template: subtype-k8s_type-%index%.cluster_id
+              template: sub_type_k8s_type-%index%.cluster_id
               params:
               params:
                 cluster_id: {{ stack_name }}
                 cluster_id: {{ stack_name }}
-                k8s_type: node
-                subtype: app
+                sub_type_k8s_type: {{ node_hostname }}
           cluster_env: {{ public_dns_domain }}
           cluster_env: {{ public_dns_domain }}
           cluster_id:  {{ stack_name }}
           cluster_id:  {{ stack_name }}
           group:
           group:
@@ -672,11 +671,10 @@ resources:
         properties:
         properties:
           name:
           name:
             str_replace:
             str_replace:
-              template: subtypek8s_type-%index%.cluster_id
+              template: sub_type_k8s_type-%index%.cluster_id
               params:
               params:
                 cluster_id: {{ stack_name }}
                 cluster_id: {{ stack_name }}
-                k8s_type: node
-                subtype: infra
+                sub_type_k8s_type: {{ infra_hostname }}
           cluster_env: {{ public_dns_domain }}
           cluster_env: {{ public_dns_domain }}
           cluster_id:  {{ stack_name }}
           cluster_id:  {{ stack_name }}
           group:
           group:
@@ -730,7 +728,7 @@ resources:
               template: k8s_type-%index%.cluster_id
               template: k8s_type-%index%.cluster_id
               params:
               params:
                 cluster_id: {{ stack_name }}
                 cluster_id: {{ stack_name }}
-                k8s_type: dns
+                k8s_type: {{ dns_hostname }}
           cluster_env: {{ public_dns_domain }}
           cluster_env: {{ public_dns_domain }}
           cluster_id:  {{ stack_name }}
           cluster_id:  {{ stack_name }}
           group:
           group: