very quick and dirty
...

example vars:

mysqld:
  pwd:
    zabbix: bla

example usage:

- hosts: zabbix-server
  vars_files:
    - vars/zabbixserver.yml

  pre_tasks:

    - command: rpm -import http://repo.zabbix.com/RPM-GPG-KEY-ZABBIX
      # workaround an ansible proxy bug
      # ansible/ansible#18979
      #
      environment:
        http_proxy: "{{ proxy_protocol }}://{{ proxy_host }}:{{ proxy_port }}"
      
    - name: install zabbix repo
      yum:
        name: http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
        state: present

      # workaround an ansible proxy bug
      # ansible/ansible#18979
      #
      environment:
        http_proxy: "{{ proxy_protocol }}://{{ proxy_host }}:{{ proxy_port }}"

    - debug: var=zabbix

  roles:
    - role: zabbix/server

  tasks:
    - name: install mysql clients
      package:
        name: mariadb
        state: installed

    - name: import initial schema and data
      debug: msg="not implemented, its a manual step"

    - name: set php timezone
      lineinfile:
        path: /etc/php.ini
        line: date.timezone = Europe/Vienna
        state: present
        regexp: '^date.timezone'
        insertafter: '^\[Date\]'

    - name: apache is started
      service:
        name: httpd
        state: started
        enabled: true

    - name: firewall for apache
      firewalld:
        immediate: true
        permanent: true
        service: "{{ item }}"
        state: enabled
      with_items:
        - http
        - https