main.yml 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. ---
  2. - name: EIP HA
  3. when:
  4. - vrrp_interface is defined
  5. - vrrp_vip is defined
  6. become: true
  7. block:
  8. - name: install sdnagent rpm
  9. package:
  10. name: yunion-sdnagent
  11. state: latest
  12. when:
  13. - is_centos_x86 is defined
  14. notify: restart eipgw
  15. - name: get vars
  16. shell: |
  17. /opt/yunion/bin/fetch-rcadmin.sh | sed \
  18. -e 's#export ##' \
  19. -e 's#OS_REGION_NAME#oc_region#' \
  20. -e 's#OS_AUTH_URL#oc_auth_url#' \
  21. -e 's#OS_USERNAME#oc_admin_user#' \
  22. -e 's#OS_PASSWORD#oc_admin_password#' \
  23. -e 's#OS_PROJECT_NAME#oc_admin_project#' \
  24. -e 's#=#: "#' \
  25. -e 's#$#"#' | \
  26. grep '^oc_'
  27. register: oc_vars
  28. delegate_to: "{{ k8s_controlplane_host }}"
  29. - name: write oc vars
  30. copy:
  31. content: "{{ oc_vars.stdout }}"
  32. dest: /tmp/oc_vars
  33. - name: get oc vars
  34. run_once: yes
  35. fetch:
  36. src: /tmp/oc_vars
  37. dest: /tmp/oc_vars
  38. flat: yes
  39. - name: load vars
  40. run_once: yes
  41. include_vars: /tmp/oc_vars
  42. - name: clean tmp files
  43. file:
  44. path: /tmp/oc_vars
  45. state: absent
  46. - name: enable ip forwarding
  47. sysctl:
  48. name: net.ipv4.ip_forward
  49. value: '1'
  50. sysctl_set: yes
  51. state: present
  52. reload: yes
  53. - name: make sdnagent.conf
  54. template:
  55. src: sdnagent.conf.j2
  56. dest: /etc/yunion/sdnagent.conf
  57. notify: restart eipgw
  58. - name: install keepalived
  59. package:
  60. name: keepalived
  61. state: present
  62. - name: mkdir /etc/keepalived
  63. file:
  64. name: /etc/keepalived
  65. state: directory
  66. owner: root
  67. group: root
  68. - name: make keepalived eipgw.conf
  69. template:
  70. src: keepalived-eipgw.conf.j2
  71. dest: /etc/keepalived/eipgw.conf
  72. vars:
  73. vrrp_notify_script: /etc/keepalived/eipgw-notify.sh
  74. notify: restart eipgw
  75. - name: copy keepalived notify script
  76. copy:
  77. src: keepalived-eipgw-notify.sh
  78. dest: /etc/keepalived/eipgw-notify.sh
  79. owner: root
  80. group: root
  81. mode: 0700
  82. - name: enable yunion-sdnagent-eipgw service
  83. service:
  84. name: yunion-sdnagent-eipgw
  85. state: started
  86. enabled: yes