{"id":19871859,"url":"https://github.com/saltstack-formulas/zabbix-formula","last_synced_at":"2025-09-09T18:48:32.263Z","repository":{"id":16628534,"uuid":"19383624","full_name":"saltstack-formulas/zabbix-formula","owner":"saltstack-formulas","description":null,"archived":false,"fork":false,"pushed_at":"2025-01-06T23:11:55.000Z","size":2955,"stargazers_count":50,"open_issues_count":32,"forks_count":118,"subscribers_count":39,"default_branch":"master","last_synced_at":"2025-01-07T00:26:22.634Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html","language":"Jinja","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saltstack-formulas.png","metadata":{"files":{"readme":"docs/README.rst","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-05-02T17:58:55.000Z","updated_at":"2024-11-14T08:43:34.000Z","dependencies_parsed_at":"2023-02-10T17:45:33.075Z","dependency_job_id":"273b2113-1dd5-4358-b730-32bc3c923c53","html_url":"https://github.com/saltstack-formulas/zabbix-formula","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saltstack-formulas%2Fzabbix-formula","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saltstack-formulas%2Fzabbix-formula/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saltstack-formulas%2Fzabbix-formula/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saltstack-formulas%2Fzabbix-formula/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saltstack-formulas","download_url":"https://codeload.github.com/saltstack-formulas/zabbix-formula/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241296581,"owners_count":19940064,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-12T16:13:49.334Z","updated_at":"2025-03-01T00:50:10.487Z","avatar_url":"https://github.com/saltstack-formulas.png","language":"Jinja","funding_links":[],"categories":[],"sub_categories":[],"readme":".. _readme:\n\nzabbix-formula\n==============\n\n|img_travis| |img_sr|\n\n.. |img_travis| image:: https://travis-ci.com/saltstack-formulas/zabbix-formula.svg?branch=master\n   :alt: Travis CI Build Status\n   :scale: 100%\n   :target: https://travis-ci.com/saltstack-formulas/zabbix-formula\n.. |img_sr| image:: https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg\n   :alt: Semantic Release\n   :scale: 100%\n   :target: https://github.com/semantic-release/semantic-release\n\nA SaltStack formula to manage Zabbix.\n\n.. contents:: **Table of Contents**\n\nGeneral notes\n-------------\n\nSee the full `SaltStack Formulas installation and usage instructions\n\u003chttps://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html\u003e`_.\n\nIf you are interested in writing or contributing to formulas, please pay attention to the `Writing Formula Section\n\u003chttps://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html#writing-formulas\u003e`_.\n\nIf you want to use this formula, please pay attention to the ``FORMULA`` file and/or ``git tag``,\nwhich contains the currently released version. This formula is versioned according to `Semantic Versioning \u003chttp://semver.org/\u003e`_.\n\nSee `Formula Versioning Section \u003chttps://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html#versioning\u003e`_ for more details.\n\nContributing to this repo\n-------------------------\n\n**Commit message formatting is significant!!**\n\nPlease see `How to contribute \u003chttps://github.com/saltstack-formulas/.github/blob/master/CONTRIBUTING.rst\u003e`_ for more details.\n\nOverview\n--------\n\nThis formula has been developed distributing declarations in different files to\nmake it usable in most situations. It should be useful in scenarios ranging from\na simple install of the packages (without any special configuration) to a more\ncomplex set-up with different nodes for agent, server, database and frontend.\n\nCustomization\n^^^^^^^^^^^^^\n\nFirst, **see if providing pillar data is enough for your customization needs**.\nThat's the recommended way and should be enough for most cases. See that\nsometimes there's a key named ``extra_conf`` that's used to add arbitrary\nconfiguration lines in the templates provided.\n\nWhen providing pillar data is not enough for your needs, you can apply the\nTemplate Override and Files Switch (TOFS) pattern as described in the\ndocumentation file ``TOFS_pattern.md``.\n\nThe formula is designed to be independent from other formulas so you could use\nthis in a non-100% salted environment (i.e. it's not required –although\nrecommended– to use other formulas to provision other parts of a complete\nsystem).\n\nUsing RedHat EPEL repo Zabbix packages\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nIf you want to use the EPEL repo packages, as the naming conventions are\ndifferent, you need to tweak the default values of ``map.jinja`` to obtain the\ndesired results. In short:\n\n* Don't use the ``zabbix.agent.repo`` sls assuming that EPEL repos are already\n  configured\n\n* Override the ``map.jinja`` definitions using pillar values like this\n\n.. code:: yaml\n\n    zabbix:\n      lookup:\n        agent:\n          pkg: zabbix22-agent\n        server:\n          pkg: zabbix22-server-mysql\n\n\nNow you just have to use ``zabbix.agent.conf`` sls file and that's it.\n\nExample of usage\n^^^^^^^^^^^^^^^^\n\nJust as an example, this is a ``top.sls`` file to install a complete modular\nself-contained Zabbix system:\n\n.. code:: yaml\n\n  base:\n    '*':\n      - zabbix.agent.repo\n      - zabbix.agent.conf\n\n      - mysql.server.conf\n      - mysql.client.conf\n      - zabbix.mysql.conf\n      - zabbix.mysql.schema\n\n      - zabbix.server.repo\n      - zabbix.server.conf\n\n      - nginx.conf\n\n      - php.fpm.repo\n      - php.fpm.conf\n      - php.fpm.mysql\n      - php.fpm.bcmath\n      - php.fpm.mbstring\n      - php.fpm.gd\n      - php.fpm.xml\n      - php.fpm.opcache\n\n      - zabbix.frontend.repo\n      - zabbix.frontend.conf\n\nYou need the appropriate mysql, nginx and php formulas to complete the\ninstallation with this ``top.sls`` file.\n\nIf you are installing the zabbix agent for windows you will want to separate the\npillar for windows from other linux and unix agents\nThis is a pillar ``top.sls`` file example to separate windows and Ubuntu Zabbix agent\npillar files\n\n.. code:: yaml\n\n  base:\n    'os:Ubuntu':\n      - match: grain\n      - zabbix-agent-ubuntu\n      \n    'os:Windows':\n      - match: grain\n      - zabbix-agent-windows\n\n.. note::\n\n    See the full `Salt Formulas\n    \u003chttp://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html\u003e`_ doc.\n\nAvailable states\n----------------\n\n.. contents::\n    :local:\n\n``zabbix.agent``\n^^^^^^^^^^^^^^^^\n\nInstalls the zabbix-agent package and starts the associated zabbix-\nagent service.\n\n``zabbix.agent.conf``\n^^^^^^^^^^^^^^^^^^^^^\n\nConfigures the zabbix-agent package.\n\n``zabbix.agent.repo``\n^^^^^^^^^^^^^^^^^^^^^\n\nConfigures official Zabbix repo specifically for the agent. Actually it just\nincludes zabbix.repo and adds a requisite for the pkg state declaration\n\n``zabbix.frontend``\n^^^^^^^^^^^^^^^^^^^\n\nInstalls Zabbix frontend.\n\n``zabbix.frontend.conf``\n^^^^^^^^^^^^^^^^^^^^^^^^\n\nConfigures the zabbix-frontend package. Actually you need to use other formulas\nfor apache/nginx and php5-fpm to complete a working setup.\n\n``zabbix.frontend.repo``\n^^^^^^^^^^^^^^^^^^^^^^^^\n\nConfigures official Zabbix repo specifically for the frontend. Actually it just\nincludes zabbix.repo and adds a requisite for the pkg state declaration.\n\n``zabbix.mysql.conf``\n^^^^^^^^^^^^^^^^^^^^^\n\nCreates database and mysql user for Zabbix.\n\n``zabbix.mysql.schema``\n^^^^^^^^^^^^^^^^^^^^^^^\n\nCreates mysql schema for Zabbix.\n\n``zabbix.pgsql.pkgs``\n^^^^^^^^^^^^^^^^^^^^^^^\n\nInstall required psql packages.\n\n``zabbix.pgsql.conf``\n^^^^^^^^^^^^^^^^^^^^^\n\nCreates database and PostgreSQL user for Zabbix. Includes zabbix.pgsql.pkgs.\n\n``zabbix.pgsql.schema``\n^^^^^^^^^^^^^^^^^^^^^^^\n\nCreates PostgreSQL schema for Zabbix. Includes zabbix.pgsql.pkgs.\n\n``zabbix.proxy``\n^^^^^^^^^^^^^^^^\n\nInstalls the zabbix-proxy package and starts the associated zabbix-proxy service.\n\n``zabbix.proxy.conf``\n^^^^^^^^^^^^^^^^^^^^^\n\nConfigures the zabbix-proxy package.\n\n``zabbix.proxy.repo``\n^^^^^^^^^^^^^^^^^^^^^\n\nConfigures official Zabbix repo specifically for the proxy. Actually it just\nincludes zabbix.repo and adds a requisite for the pkg state declaration\n\n``zabbix.repo``\n^^^^^^^^^^^^^^^\n\nConfigures official Zabbix repo.\n\n``zabbix.server``\n^^^^^^^^^^^^^^^^^\n\nInstalls the zabbix-server package and starts the associated zabbix-\nserver service.\n\n``zabbix.server.conf``\n^^^^^^^^^^^^^^^^^^^^^^\n\nConfigures the zabbix-server package.\n\n``zabbix.server.repo``\n^^^^^^^^^^^^^^^^^^^^^^\n\nConfigures official Zabbix repo specifically for the server. Actually it just\nincludes zabbix.repo and adds a requisite for the pkg state declaration\n\n``zabbix.users``\n^^^^^^^^^^^^^^^^\n\nDeclares users and groups that could be needed in other formulas (e.g. in the\nusers formula to make an user pertain to the service group).\n\n\nTesting\n-------\n\nLinux testing is done with ``kitchen-salt``.\n\nRequirements\n^^^^^^^^^^^^\n\n* Ruby\n* Docker\n\n.. code-block:: bash\n\n   $ gem install bundler\n   $ bundle install\n   $ bin/kitchen test [platform]\n\nWhere ``[platform]`` is the platform name defined in ``kitchen.yml``,\ne.g. ``debian-9-2019-2-py3``.\n\n``bin/kitchen converge``\n^^^^^^^^^^^^^^^^^^^^^^^^\n\nCreates the docker instance and runs the ``template`` main state, ready for testing.\n\n``bin/kitchen verify``\n^^^^^^^^^^^^^^^^^^^^^^\n\nRuns the ``inspec`` tests on the actual instance.\n\n``bin/kitchen destroy``\n^^^^^^^^^^^^^^^^^^^^^^^\n\nRemoves the docker instance.\n\n``bin/kitchen test``\n^^^^^^^^^^^^^^^^^^^^\n\nRuns all of the stages above in one go: i.e. ``destroy`` + ``converge`` + ``verify`` + ``destroy``.\n\n``bin/kitchen login``\n^^^^^^^^^^^^^^^^^^^^^\n\nGives you SSH access to the instance for manual testing.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaltstack-formulas%2Fzabbix-formula","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaltstack-formulas%2Fzabbix-formula","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaltstack-formulas%2Fzabbix-formula/lists"}