diff options
| author | Scott Dodson <sdodson@redhat.com> | 2017-08-11 12:03:58 -0400 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-08-11 12:03:58 -0400 | 
| commit | 3409e6db205b6b24914e16c62972de50071f4051 (patch) | |
| tree | dbfacaf9d6640241ee5dd7a2446d330a4e12283e /roles/openshift_node/tasks | |
| parent | 57d7984bc7d7f64184c0defd3cc305cb3ef2708f (diff) | |
| parent | 7d50ffe98dfa17e3fb72627699c794843ed5295d (diff) | |
| download | openshift-3409e6db205b6b24914e16c62972de50071f4051.tar.gz openshift-3409e6db205b6b24914e16c62972de50071f4051.tar.bz2 openshift-3409e6db205b6b24914e16c62972de50071f4051.tar.xz openshift-3409e6db205b6b24914e16c62972de50071f4051.zip | |
Merge pull request #4797 from kwoodson/os_firewall_refactor
Refactor the firewall workflow.
Diffstat (limited to 'roles/openshift_node/tasks')
| -rw-r--r-- | roles/openshift_node/tasks/firewall.yml | 40 | ||||
| -rw-r--r-- | roles/openshift_node/tasks/main.yml | 32 | 
2 files changed, 72 insertions, 0 deletions
| diff --git a/roles/openshift_node/tasks/firewall.yml b/roles/openshift_node/tasks/firewall.yml new file mode 100644 index 000000000..255aa886a --- /dev/null +++ b/roles/openshift_node/tasks/firewall.yml @@ -0,0 +1,40 @@ +--- +- when: r_openshift_node_firewall_enabled | bool and not r_openshift_node_use_firewalld | bool +  block: +  - name: Add iptables allow rules +    os_firewall_manage_iptables: +      name: "{{ item.service }}" +      action: add +      protocol: "{{ item.port.split('/')[1] }}" +      port: "{{ item.port.split('/')[0] }}" +    when: item.cond | default(True) +    with_items: "{{ r_openshift_node_os_firewall_allow }}" + +  - name: Remove iptables rules +    os_firewall_manage_iptables: +      name: "{{ item.service }}" +      action: remove +      protocol: "{{ item.port.split('/')[1] }}" +      port: "{{ item.port.split('/')[0] }}" +    when: item.cond | default(True) +    with_items: "{{ r_openshift_node_os_firewall_deny }}" + +- when: r_openshift_node_firewall_enabled | bool and r_openshift_node_use_firewalld | bool +  block: +  - name: Add firewalld allow rules +    firewalld: +      port: "{{ item.port }}" +      permanent: true +      immediate: true +      state: enabled +    when: item.cond | default(True) +    with_items: "{{ r_openshift_node_os_firewall_allow }}" + +  - name: Remove firewalld allow rules +    firewalld: +      port: "{{ item.port }}" +      permanent: true +      immediate: true +      state: disabled +    when: item.cond | default(True) +    with_items: "{{ r_openshift_node_os_firewall_deny }}" diff --git a/roles/openshift_node/tasks/main.yml b/roles/openshift_node/tasks/main.yml index ca4fef360..3353a22e3 100644 --- a/roles/openshift_node/tasks/main.yml +++ b/roles/openshift_node/tasks/main.yml @@ -6,6 +6,38 @@      - (not ansible_selinux or ansible_selinux.status != 'enabled') and deployment_type in ['enterprise', 'online', 'atomic-enterprise', 'openshift-enterprise']      - not openshift_docker_use_crio | default(false) +- name: setup firewall +  include: firewall.yml +  static: yes + +- name: Set node facts +  openshift_facts: +    role: "{{ item.role }}" +    local_facts: "{{ item.local_facts }}" +  with_items: +    # Reset node labels to an empty dictionary. +    - role: node +      local_facts: +        labels: {} +    - role: node +      local_facts: +        annotations: "{{ openshift_node_annotations | default(none) }}" +        debug_level: "{{ openshift_node_debug_level | default(openshift.common.debug_level) }}" +        iptables_sync_period: "{{ openshift_node_iptables_sync_period | default(None) }}" +        kubelet_args: "{{ openshift_node_kubelet_args | default(None) }}" +        labels: "{{ lookup('oo_option', 'openshift_node_labels') | default( openshift_node_labels | default(none), true) }}" +        registry_url: "{{ oreg_url_node | default(oreg_url) | default(None) }}" +        schedulable: "{{ openshift_schedulable | default(openshift_scheduleable) | default(None) }}" +        sdn_mtu: "{{ openshift_node_sdn_mtu | default(None) }}" +        storage_plugin_deps: "{{ osn_storage_plugin_deps | default(None) }}" +        set_node_ip: "{{ openshift_set_node_ip | default(None) }}" +        node_image: "{{ osn_image | default(None) }}" +        ovs_image: "{{ osn_ovs_image | default(None) }}" +        proxy_mode: "{{ openshift_node_proxy_mode | default('iptables') }}" +        local_quota_per_fsgroup: "{{ openshift_node_local_quota_per_fsgroup | default(None) }}" +        dns_ip: "{{ openshift_dns_ip | default(none) | get_dns_ip(hostvars[inventory_hostname])}}" +        env_vars: "{{ openshift_node_env_vars | default(None) }}" +  # https://docs.openshift.com/container-platform/3.4/admin_guide/overcommit.html#disabling-swap-memory  - name: Check for swap usage    command: grep "^[^#].*swap" /etc/fstab | 
