WordPress
- By Canonical IS DevOps
Channel | Revision | Published | Runs on |
---|---|---|---|
latest/stable | 87 | 07 Mar 2024 | |
latest/stable | 13 | 06 Mar 2023 | |
latest/edge | 113 | 22 Aug 2024 | |
latest/edge | 15 | 30 Mar 2023 |
juju deploy wordpress-k8s
Deploy Kubernetes operators easily with Juju, the Universal Operator Lifecycle Manager. Need a Kubernetes cluster? Install MicroK8s to create a full CNCF-certified Kubernetes system in under 60 seconds.
Platform:
Integrations
ingress
Interface: ingress
Supported charms: nginx-ingress-integrator
Ingress manages external http/https access to services in a kubernetes cluster.
Ingress relation through nginx-ingress-integrator
charm enables additional blog_hostname
and use_nginx_ingress_modesec
configurations. Note that the
kubernetes cluster must already have an nginx ingress controller already deployed. Documentation to
enable ingress in microk8s can be found here.
Example ingress relate command: juju relate wordpress-k8s nginx-ingress-integrator
metrics-endpoint
Interface: prometheus_scrape
Supported charms: prometheus-k8s
Metrics-endpoint relation allows scraping the /metrics
endpoint provided by apache-exporter sidecar
on port 9117, which provides apache metrics from apache’s /server-status
route. This internal
apache’s /server-status
route is not exposed and can only be accessed from within the same
Kubernetes pod. The metrics are exposed in the open metrics format and will only be scraped by Prometheus once the relation becomes active. For more
information about the metrics exposed, please refer to the apache-exporter documentation.
Metrics-endpoint relate command: juju relate wordpress-k8s prometheus-k8s
logging
Interface: loki_push_api
Supported charms: loki-k8s
Logging relation through the loki_push_api
interface installs and runs promtail which ships the
contents of local logs found at /var/log/apache2/access.log
and /var/log/apache2/error.log
to Loki.
This can then be queried through the loki api or easily visualized through Grafana.
Logging-endpoint relate command: juju relate wordpress-k8s loki-k8s
grafana-dashboard
Interface: grafana-dashboard
Supported charms: grafana-k8s
Grafana-dashboard relation enables quick dashboard access already tailored to fit the needs of
operators to monitor the charm. The template for the Grafana dashboard for wordpress-k8s charm can
be found at /src/grafana_dashboards/wordpress.json
. In Grafana UI, it can be found as “WordPress
Operator Overview” under the General section of the dashboard browser (/dashboards
). Modifications
to the dashboard can be made but will not be persisted upon restart/redeployment of the charm.
Grafana-Prometheus relate command: juju relate grafana-k8s:grafana-source prometheus-k8s:grafana-source
Grafana-dashboard relate command: juju relate wordpress-k8s grafana-dashboard
database:
Interface: mysql_client Supported charms: Charmed MySQL, Charmed MySQL-K8s
Database endpoint can be related to mysql based charms, providing long term storage for wordpress.
Database relation connect wordpress-k8s with charms that support the mysql_client
interface on port 3306
in the database side.
Example database relate command: juju relate wordpress-k8s:database mysql-k8s:database