main.yml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. ---
  2. - name: Install OpenShift Master package
  3. yum: pkg=openshift-master state=installed
  4. - name: Configure firewall for OpenShift Master
  5. include: "{{ role_path | dirname }}/openshift_common/tasks/firewall.yml"
  6. allow:
  7. - service: etcd embedded
  8. port: 4001/tcp
  9. - service: etcd peer
  10. port: 7001/tcp
  11. - service: OpenShift api https
  12. port: 8443/tcp
  13. - service: OpenShift web console https
  14. port: 8444/tcp
  15. deny:
  16. - service: OpenShift api http
  17. port: 8080/tcp
  18. - name: Configure OpenShift settings
  19. lineinfile:
  20. dest: /etc/sysconfig/openshift-master
  21. regexp: '^OPTIONS='
  22. line: "OPTIONS=\"--public-master={{ openshift_hostname }} --nodes={{ openshift_node_ips
  23. | join(',') }} --loglevel={{ openshift_master_debug_level }}\""
  24. notify:
  25. - restart openshift-master
  26. - name: Set default registry url
  27. lineinfile:
  28. dest: /etc/sysconfig/openshift-master
  29. regexp: '^IMAGES='
  30. line: "IMAGES={{ openshift_registry_url }}"
  31. when: openshift_registry_url is defined
  32. notify:
  33. - restart openshift-master
  34. - name: Set master OpenShift facts
  35. include: "{{ role_path | dirname }}/openshift_common/tasks/set_facts.yml"
  36. facts:
  37. - section: master
  38. option: debug_level
  39. value: "{{ openshift_master_debug_level }}"
  40. - section: master
  41. option: public_ip
  42. value: "{{ openshift_public_ip }}"
  43. - section: master
  44. option: externally_managed
  45. value: "{{ openshift_master_manage_service_externally }}"
  46. - name: Start and enable openshift-master
  47. service: name=openshift-master enabled=yes state=started
  48. when: not openshift_master_manage_service_externally
  49. register: result
  50. #TODO: remove this when origin PR #1204 has landed in OSE
  51. - name: need to pause here, otherwise we attempt to copy certificates generated by the master before they are generated
  52. pause: seconds=30
  53. when: result | changed
  54. - name: Disable openshift-master if openshift-master is managed externally
  55. service: name=openshift-master enabled=false
  56. when: openshift_master_manage_service_externally
  57. # TODO: create an os_vars role that has generic env related config and move
  58. # the root kubeconfig setting there, cannot use dependencies to force ordering
  59. # with openshift_node and openshift_master because the way conditional
  60. # dependencies work with current ansible would also exclude the
  61. # openshift_common dependency.
  62. - name: Create .kube directory
  63. file:
  64. path: /root/.kube
  65. state: directory
  66. mode: 700
  67. - name: Configure root user kubeconfig
  68. command: cp /var/lib/openshift/openshift.local.certificates/admin/.kubeconfig /root/.kube/.kubeconfig
  69. args:
  70. creates: /root/.kube/.kubeconfig