mirror of
https://github.com/zabbix/zabbix-docker.git
synced 2025-08-15 19:17:49 +02:00
Updated documentation and prepared documentation for RHEL
This commit is contained in:
@ -17,7 +17,7 @@
|
||||
<h1 id="how-to-use-this-image">How to use this image</h1>
|
||||
<h2 id="start-zabbix-proxy-mysql-">Start <code>zabbix-proxy-mysql</code></h2>
|
||||
<p>Start a Zabbix proxy container as follows:</p>
|
||||
<pre><code>podman <span class="hljs-keyword">run</span><span class="bash"> --name some-zabbix-proxy-mysql <span class="hljs-_">-e</span> DB_SERVER_HOST=<span class="hljs-string">"some-mysql-server"</span> <span class="hljs-_">-e</span> MYSQL_USER=<span class="hljs-string">"some-user"</span> <span class="hljs-_">-e</span> MYSQL_PASSWORD=<span class="hljs-string">"some-password"</span> <span class="hljs-_">-e</span> ZBX_HOSTNAME=some-hostname <span class="hljs-_">-e</span> ZBX_SERVER_HOST=some-zabbix-server --init <span class="hljs-_">-d</span> zabbix/zabbix-proxy-mysql:tag</span>
|
||||
<pre><code>podman <span class="hljs-keyword">run</span><span class="bash"> --name some-zabbix-proxy-mysql <span class="hljs-_">-e</span> DB_SERVER_HOST=<span class="hljs-string">"some-mysql-server"</span> <span class="hljs-_">-e</span> MYSQL_USER=<span class="hljs-string">"some-user"</span> <span class="hljs-_">-e</span> MYSQL_PASSWORD=<span class="hljs-string">"some-password"</span> <span class="hljs-_">-e</span> ZBX_HOSTNAME=some-hostname <span class="hljs-_">-e</span> ZBX_SERVER_HOST=some-zabbix-server <span class="hljs-_">-d</span> zabbix/zabbix-proxy-mysql:tag</span>
|
||||
</code></pre><p>Where <code>some-zabbix-proxy-mysql</code> is the name you want to assign to your container, <code>some-mysql-server</code> is IP or DNS name of MySQL server, <code>some-user</code> is user to connect to Zabbix database on MySQL server, <code>some-password</code> is the password to connect to MySQL server, <code>some-hostname</code> is the hostname, it is Hostname parameter in Zabbix proxy configuration file, <code>some-zabbix-server</code> is IP or DNS name of Zabbix server and <code>tag</code> is the tag specifying the version you want.</p>
|
||||
<blockquote>
|
||||
<p>[!NOTE]
|
||||
@ -32,11 +32,11 @@ where 1995 is <code>zabbix</code> GID.</p>
|
||||
</blockquote>
|
||||
<h2 id="connects-from-zabbix-server-passive-proxy-">Connects from Zabbix server (Passive proxy)</h2>
|
||||
<p>This image exposes the standard Zabbix proxy port (10051) and can operate as Passive proxy in case <code>ZBX_PROXYMODE</code> = <code>1</code>. Start Zabbix server container like this in order to link it to the Zabbix proxy container:</p>
|
||||
<pre><code class="lang-console"><span class="hljs-comment">$</span> <span class="hljs-comment">podman</span> <span class="hljs-comment">run</span> <span class="hljs-literal">-</span><span class="hljs-literal">-</span><span class="hljs-comment">name</span> <span class="hljs-comment">some</span><span class="hljs-literal">-</span><span class="hljs-comment">zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">server</span> <span class="hljs-literal">-</span><span class="hljs-literal">-</span><span class="hljs-comment">link</span> <span class="hljs-comment">some</span><span class="hljs-literal">-</span><span class="hljs-comment">zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">proxy</span><span class="hljs-literal">-</span><span class="hljs-comment">mysql:zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">proxy</span><span class="hljs-literal">-</span><span class="hljs-comment">mysql</span> <span class="hljs-literal">-</span><span class="hljs-literal">-</span><span class="hljs-comment">init</span> <span class="hljs-literal">-</span><span class="hljs-comment">d</span> <span class="hljs-comment">zabbix/zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">server:latest</span>
|
||||
<pre><code class="lang-console"><span class="hljs-comment">$</span> <span class="hljs-comment">podman</span> <span class="hljs-comment">run</span> <span class="hljs-literal">-</span><span class="hljs-literal">-</span><span class="hljs-comment">name</span> <span class="hljs-comment">some</span><span class="hljs-literal">-</span><span class="hljs-comment">zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">server</span> <span class="hljs-literal">-</span><span class="hljs-literal">-</span><span class="hljs-comment">link</span> <span class="hljs-comment">some</span><span class="hljs-literal">-</span><span class="hljs-comment">zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">proxy</span><span class="hljs-literal">-</span><span class="hljs-comment">mysql:zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">proxy</span><span class="hljs-literal">-</span><span class="hljs-comment">mysql</span> <span class="hljs-literal">-</span><span class="hljs-comment">d</span> <span class="hljs-comment">zabbix/zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">server:latest</span>
|
||||
</code></pre>
|
||||
<h2 id="connect-to-zabbix-server-active-proxy-">Connect to Zabbix server (Active proxy)</h2>
|
||||
<p>This image can operate as Active proxy (<code>default</code> mode). Start your application container like this in order to link Zabbix proxy to Zabbix server containters:</p>
|
||||
<pre><code class="lang-console"><span class="hljs-comment">$</span> <span class="hljs-comment">podman</span> <span class="hljs-comment">run</span> <span class="hljs-literal">-</span><span class="hljs-literal">-</span><span class="hljs-comment">name</span> <span class="hljs-comment">some</span><span class="hljs-literal">-</span><span class="hljs-comment">zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">proxy</span><span class="hljs-literal">-</span><span class="hljs-comment">mysql</span> <span class="hljs-literal">-</span><span class="hljs-literal">-</span><span class="hljs-comment">link</span> <span class="hljs-comment">some</span><span class="hljs-literal">-</span><span class="hljs-comment">zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">server:zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">server</span> <span class="hljs-literal">-</span><span class="hljs-literal">-</span><span class="hljs-comment">init</span> <span class="hljs-literal">-</span><span class="hljs-comment">d</span> <span class="hljs-comment">zabbix/zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">proxy</span><span class="hljs-literal">-</span><span class="hljs-comment">mysql:latest</span>
|
||||
<pre><code class="lang-console"><span class="hljs-comment">$</span> <span class="hljs-comment">podman</span> <span class="hljs-comment">run</span> <span class="hljs-literal">-</span><span class="hljs-literal">-</span><span class="hljs-comment">name</span> <span class="hljs-comment">some</span><span class="hljs-literal">-</span><span class="hljs-comment">zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">proxy</span><span class="hljs-literal">-</span><span class="hljs-comment">mysql</span> <span class="hljs-literal">-</span><span class="hljs-literal">-</span><span class="hljs-comment">link</span> <span class="hljs-comment">some</span><span class="hljs-literal">-</span><span class="hljs-comment">zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">server:zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">server</span> <span class="hljs-literal">-</span><span class="hljs-comment">d</span> <span class="hljs-comment">zabbix/zabbix</span><span class="hljs-literal">-</span><span class="hljs-comment">proxy</span><span class="hljs-literal">-</span><span class="hljs-comment">mysql:latest</span>
|
||||
</code></pre>
|
||||
<h2 id="container-shell-access-and-viewing-zabbix-proxy-logs">Container shell access and viewing Zabbix proxy logs</h2>
|
||||
<p>The <code>podman exec</code> command allows you to run commands inside a Podman container. The following command line will give you a bash shell inside your <code>zabbix-proxy-mysql</code> container:</p>
|
||||
@ -62,12 +62,12 @@ where 1995 is <code>zabbix</code> GID.</p>
|
||||
<p>This variable is port of MySQL server. By default, value is '3306'.</p>
|
||||
<h3 id="-mysql_user-mysql_password-mysql_user_file-mysql_password_file-"><code>MYSQL_USER</code>, <code>MYSQL_PASSWORD</code>, <code>MYSQL_USER_FILE</code>, <code>MYSQL_PASSWORD_FILE</code></h3>
|
||||
<p>These variables are used by Zabbix proxy to connect to Zabbix database. With the <code>_FILE</code> variables you can instead provide the path to a file which contains the user / the password instead. Without Docker Swarm or Kubernetes you also have to map the files. Those are exclusive so you can just provide one type - either <code>MYSQL_USER</code> or <code>MYSQL_USER_FILE</code>!</p>
|
||||
<pre><code class="lang-console">podman run --name some-zabbix-proxy-mysql -e DB_SERVER_HOST=<span class="hljs-string">"some-mysql-server"</span> -v .<span class="hljs-regexp">/.MYSQL_USER:/</span>run<span class="hljs-regexp">/secrets/</span>MYSQL_USER -e MYSQL_USER_FILE=<span class="hljs-regexp">/run/</span>secrets<span class="hljs-regexp">/MYSQL_USER -v ./</span>.<span class="hljs-string">MYSQL_PASSWORD:</span><span class="hljs-regexp">/run/</span>secrets<span class="hljs-regexp">/MYSQL_PASSWORD -e MYSQL_PASSWORD_FILE=/</span>var<span class="hljs-regexp">/run/</span>secrets<span class="hljs-regexp">/MYSQL_PASSWORD -e ZBX_HOSTNAME=some-hostname -e ZBX_SERVER_HOST=some-zabbix-server --init -d zabbix/</span>zabbix-proxy-<span class="hljs-string">mysql:</span>tag
|
||||
<pre><code class="lang-console">podman run --name some-zabbix-proxy-mysql -e DB_SERVER_HOST=<span class="hljs-string">"some-mysql-server"</span> -v .<span class="hljs-regexp">/.MYSQL_USER:/</span>run<span class="hljs-regexp">/secrets/</span>MYSQL_USER -e MYSQL_USER_FILE=<span class="hljs-regexp">/run/</span>secrets<span class="hljs-regexp">/MYSQL_USER -v ./</span>.<span class="hljs-string">MYSQL_PASSWORD:</span><span class="hljs-regexp">/run/</span>secrets<span class="hljs-regexp">/MYSQL_PASSWORD -e MYSQL_PASSWORD_FILE=/</span>var<span class="hljs-regexp">/run/</span>secrets<span class="hljs-regexp">/MYSQL_PASSWORD -e ZBX_HOSTNAME=some-hostname -e ZBX_SERVER_HOST=some-zabbix-server -d zabbix/</span>zabbix-proxy-<span class="hljs-string">mysql:</span>tag
|
||||
</code></pre>
|
||||
<p>With Docker Swarm or Kubernetes this works with secrets. That way it is replicated in your cluster!</p>
|
||||
<pre><code class="lang-console"><span class="hljs-built_in">printf</span> <span class="hljs-string">"zabbix"</span> | podman secret create MYSQL_USER -
|
||||
<span class="hljs-built_in">printf</span> <span class="hljs-string">"zabbix"</span> | podman secret create MYSQL_PASSWORD -
|
||||
podman run --name some-zabbix-proxy-mysql <span class="hljs-_">-e</span> DB_SERVER_HOST=<span class="hljs-string">"some-mysql-server"</span> <span class="hljs-_">-e</span> MYSQL_USER_FILE=/run/secrets/MYSQL_USER <span class="hljs-_">-e</span> MYSQL_PASSWORD_FILE=/run/secrets/MYSQL_PASSWORD <span class="hljs-_">-e</span> ZBX_SERVER_HOST=<span class="hljs-string">"some-zabbix-server"</span> <span class="hljs-_">-e</span> ZBX_HOSTNAME=some-hostname <span class="hljs-_">-e</span> ZBX_SERVER_HOST=some-zabbix-server --init <span class="hljs-_">-d</span> zabbix/zabbix-proxy-mysql:tag
|
||||
podman run --name some-zabbix-proxy-mysql <span class="hljs-_">-e</span> DB_SERVER_HOST=<span class="hljs-string">"some-mysql-server"</span> <span class="hljs-_">-e</span> MYSQL_USER_FILE=/run/secrets/MYSQL_USER <span class="hljs-_">-e</span> MYSQL_PASSWORD_FILE=/run/secrets/MYSQL_PASSWORD <span class="hljs-_">-e</span> ZBX_SERVER_HOST=<span class="hljs-string">"some-zabbix-server"</span> <span class="hljs-_">-e</span> ZBX_HOSTNAME=some-hostname <span class="hljs-_">-e</span> ZBX_SERVER_HOST=some-zabbix-server <span class="hljs-_">-d</span> zabbix/zabbix-proxy-mysql:tag
|
||||
</code></pre>
|
||||
<p>This method is also applicable for <code>MYSQL_ROOT_PASSWORD</code> with <code>MYSQL_ROOT_PASSWORD_FILE</code>.</p>
|
||||
<p>By default, values for <code>MYSQL_USER</code> and <code>MYSQL_PASSWORD</code> are <code>zabbix</code>, <code>zabbix</code>.</p>
|
||||
@ -185,7 +185,7 @@ SNMP traps processing feature could be enabled using shared volume and switched
|
||||
<p>The volume allows to add new MIB files. It does not support subdirectories, all MIBs must be placed to <code>/var/lib/zabbix/mibs</code>.</p>
|
||||
<h1 id="user-feedback">User Feedback</h1>
|
||||
<h2 id="documentation">Documentation</h2>
|
||||
<p>Documentation for this image is stored in the <a href="https://github.com/zabbix/zabbix-docker/tree/Dockerfiles/trunk/proxy-mysql"><code>proxy-mysql/</code> directory</a> of the <a href="https://github.com/zabbix/zabbix-docker/"><code>zabbix/zabbix-docker</code> GitHub repo</a>. Be sure to familiarize yourself with the <a href="https://github.com/zabbix/zabbix-docker/blob/trunk/README.md">repository's <code>README.md</code> file</a> before attempting a pull request.</p>
|
||||
<p>Documentation for this image is stored in the <a href="https://github.com/zabbix/zabbix-docker/tree/Dockerfiles/6.4/proxy-mysql"><code>proxy-mysql/</code> directory</a> of the <a href="https://github.com/zabbix/zabbix-docker/"><code>zabbix/zabbix-docker</code> GitHub repo</a>. Be sure to familiarize yourself with the <a href="https://github.com/zabbix/zabbix-docker/blob/6.4/README.md">repository's <code>README.md</code> file</a> before attempting a pull request.</p>
|
||||
<h2 id="issues">Issues</h2>
|
||||
<p>If you have any problems with or questions about this image, please contact us through a <a href="https://github.com/zabbix/zabbix-docker/issues">GitHub issue</a>.</p>
|
||||
<h3 id="known-issues">Known issues</h3>
|
||||
|
Reference in New Issue
Block a user