diff options
| -rw-r--r-- | inventory/byo/hosts.origin.example | 46 | ||||
| -rw-r--r-- | inventory/byo/hosts.ose.example | 44 | ||||
| -rw-r--r-- | roles/openshift_facts/tasks/main.yml | 9 | ||||
| -rw-r--r-- | roles/openshift_facts/vars/main.yml | 5 | 
4 files changed, 103 insertions, 1 deletions
diff --git a/inventory/byo/hosts.origin.example b/inventory/byo/hosts.origin.example index 7741730ad..0ddca6576 100644 --- a/inventory/byo/hosts.origin.example +++ b/inventory/byo/hosts.origin.example @@ -300,7 +300,51 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true',  #  # Disable management of the OpenShift Router  #openshift_hosted_manage_router=false - +# +# Router sharding support has been added and can be achieved by supplying the correct +# data to the inventory.  The variable to house the data is openshift_hosted_routers +# and is in the form of a list.  If no data is passed then a default router will be +# created.  There are multiple combinations of router sharding.  The one described +# below supports routers on separate nodes. +#openshift_hosted_routers: +#- name: router1 +#  stats_port: 1936 +#  ports: +#  - 80:80 +#  - 443:443 +#  replicas: 1 +#  namespace: default +#  serviceaccount: router +#  selector: type=router1 +#  images: "openshift3/ose-${component}:${version}" +#  edits: [] +#  certificates: +#    certfile: /path/to/certificate/abc.crt +#    keyfile: /path/to/certificate/abc.key +#    cafile: /path/to/certificate/ca.crt +#- name: router2 +#  stats_port: 1936 +#  ports: +#  - 80:80 +#  - 443:443 +#  replicas: 1 +#  namespace: default +#  serviceaccount: router +#  selector: type=router2 +#  images: "openshift3/ose-${component}:${version}" +#  certificates: +#    certfile: /path/to/certificate/xyz.crt +#    keyfile: /path/to/certificate/xyz.key +#    cafile: /path/to/certificate/ca.crt +#  edits: +#  # ROUTE_LABELS sets the router to listen for routes +#  # tagged with the provided values +#  - key: spec.template.spec.containers[0].env +#    value: +#      name: ROUTE_LABELS +#      value: "route=external" +#    action: append +#  # OpenShift Registry Console Options  # Override the console image prefix for enterprise deployments, not used in origin  # default is "registry.access.redhat.com/openshift3/" and the image appended is "registry-console" diff --git a/inventory/byo/hosts.ose.example b/inventory/byo/hosts.ose.example index 3da9be081..7f80a9639 100644 --- a/inventory/byo/hosts.ose.example +++ b/inventory/byo/hosts.ose.example @@ -300,6 +300,50 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true',  #  # Disable management of the OpenShift Router  #openshift_hosted_manage_router=false +# +# Router sharding support has been added and can be achieved by supplying the correct +# data to the inventory.  The variable to house the data is openshift_hosted_routers +# and is in the form of a list.  If no data is passed then a default router will be +# created.  There are multiple combinations of router sharding.  The one described +# below supports routers on separate nodes. +#openshift_hosted_routers: +#- name: router1 +#  stats_port: 1936 +#  ports: +#  - 80:80 +#  - 443:443 +#  replicas: 1 +#  namespace: default +#  serviceaccount: router +#  selector: type=router1 +#  images: "openshift3/ose-${component}:${version}" +#  edits: [] +#  certificates: +#    certfile: /path/to/certificate/abc.crt +#    keyfile: /path/to/certificate/abc.key +#    cafile: /path/to/certificate/ca.crt +#- name: router2 +#  stats_port: 1936 +#  ports: +#  - 80:80 +#  - 443:443 +#  replicas: 1 +#  namespace: default +#  serviceaccount: router +#  selector: type=router2 +#  images: "openshift3/ose-${component}:${version}" +#  certificates: +#    certfile: /path/to/certificate/xyz.crt +#    keyfile: /path/to/certificate/xyz.key +#    cafile: /path/to/certificate/ca.crt +#  edits: +#  # ROUTE_LABELS sets the router to listen for routes +#  # tagged with the provided values +#  - key: spec.template.spec.containers[0].env +#    value: +#      name: ROUTE_LABELS +#      value: "route=external" +#    action: append  # OpenShift Registry Console Options  # Override the console image prefix for enterprise deployments, not used in origin diff --git a/roles/openshift_facts/tasks/main.yml b/roles/openshift_facts/tasks/main.yml index c538ff7a1..73c668c72 100644 --- a/roles/openshift_facts/tasks/main.yml +++ b/roles/openshift_facts/tasks/main.yml @@ -13,6 +13,8 @@      l_is_node_system_container: "{{ (use_node_system_container | default(use_system_containers) | bool) }}"      l_is_master_system_container: "{{ (use_master_system_container | default(use_system_containers) | bool) }}"      l_is_etcd_system_container: "{{ (use_etcd_system_container | default(use_system_containers) | bool) }}" +- set_fact: +    l_any_system_container: "{{ l_is_etcd_system_container or l_is_openvswitch_system_container or l_is_node_system_container or l_is_master_system_container }}"  - name: Validate python version    fail: @@ -50,6 +52,13 @@    with_items: "{{ required_packages }}"    when: not l_is_atomic | bool +- name: Ensure various deps for running system containers are installed +  package: name={{ item }} state=present +  with_items: "{{ required_system_containers_packages }}" +  when: +  - not l_is_atomic | bool +  - l_any_system_container | bool +  - name: Gather Cluster facts and set is_containerized if needed    openshift_facts:      role: common diff --git a/roles/openshift_facts/vars/main.yml b/roles/openshift_facts/vars/main.yml index 9c3110ff6..07f5100ad 100644 --- a/roles/openshift_facts/vars/main.yml +++ b/roles/openshift_facts/vars/main.yml @@ -5,3 +5,8 @@ required_packages:    - python-six    - PyYAML    - yum-utils + +required_system_containers_packages: +  - atomic +  - ostree +  - runc  | 
