diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index fdd153d7f8..f0a34505cc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,4 +1,4 @@ -name: Build PMM Docs (2.x) +name: Build PMM Docs 2.x on: push: @@ -14,14 +14,15 @@ jobs: steps: - name: Check out code - uses: percona-platform/checkout@v2 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup Python - uses: percona-platform/setup-python@v2 + uses: actions/setup-python@v4 with: - python-version: "3.x" + python-version: '3.x' + cache: 'pip' - name: Setup MkDocs run: | diff --git a/.github/workflows/helm-tests.yml b/.github/workflows/helm-tests.yml index 3831ec6890..66c7e4388f 100644 --- a/.github/workflows/helm-tests.yml +++ b/.github/workflows/helm-tests.yml @@ -6,7 +6,7 @@ on: - main pull_request: paths: - - "docs/setting-up/server/helm.md" + - 'docs/setting-up/server/helm.md' workflow_dispatch: @@ -16,12 +16,12 @@ jobs: steps: - name: Check out code - uses: percona-platform/checkout@v2 + uses: actions/checkout@v4 with: fetch-depth: 1 - name: Install pandoc - run: | + run: | wget https://github.com/jgm/pandoc/releases/download/2.18/pandoc-2.18-1-amd64.deb sudo apt-get install -y ./pandoc-2.18-1-amd64.deb @@ -35,7 +35,7 @@ jobs: run: minikube start - name: Setup storage driver for snapshots - run: | + run: | minikube addons disable storage-provisioner kubectl delete storageclass standard minikube addons enable csi-hostpath-driver @@ -47,7 +47,7 @@ jobs: - name: Get debug if: ${{ failure() }} - run: | + run: | cat ./docs_test_helm.sh pandoc --version helm version diff --git a/.github/workflows/podman-tests.yml b/.github/workflows/podman-tests.yml index 8db93a8bb1..2150e04736 100644 --- a/.github/workflows/podman-tests.yml +++ b/.github/workflows/podman-tests.yml @@ -6,7 +6,7 @@ on: - main pull_request: paths: - - "docs/setting-up/server/podman.md" + - 'docs/setting-up/server/podman.md' workflow_dispatch: @@ -16,12 +16,12 @@ jobs: steps: - name: Check out code - uses: percona-platform/checkout@v2 + uses: actions/checkout@v4 with: fetch-depth: 1 - name: Install pandoc - run: | + run: | wget https://github.com/jgm/pandoc/releases/download/2.18/pandoc-2.18-1-amd64.deb sudo apt-get install -y ./pandoc-2.18-1-amd64.deb @@ -36,7 +36,7 @@ jobs: - name: Get debug if: ${{ failure() }} - run: | + run: | cat ./docs_test_podman.sh pandoc --version podman version diff --git a/docs/_images/Backup_Failed_Template.png b/docs/_images/Backup_Failed_Template.png new file mode 100644 index 0000000000..ea9eb40c86 Binary files /dev/null and b/docs/_images/Backup_Failed_Template.png differ diff --git a/docs/_images/Inventory.png b/docs/_images/Inventory.png index 3c1767b884..c439517485 100644 Binary files a/docs/_images/Inventory.png and b/docs/_images/Inventory.png differ diff --git a/docs/_images/K8s_overview_dashboard_for_operators.png b/docs/_images/K8s_overview_dashboard_for_operators.png new file mode 100644 index 0000000000..e4c8fb995b Binary files /dev/null and b/docs/_images/K8s_overview_dashboard_for_operators.png differ diff --git a/docs/_images/K8s_summary_dashboard_for_operators.png b/docs/_images/K8s_summary_dashboard_for_operators.png new file mode 100644 index 0000000000..9f0d1d1d25 Binary files /dev/null and b/docs/_images/K8s_summary_dashboard_for_operators.png differ diff --git a/docs/_images/PMM_DB_clusters_managed_percona_kubernetes_operators.png b/docs/_images/PMM_DB_clusters_managed_percona_kubernetes_operators.png new file mode 100644 index 0000000000..501ffb4b0c Binary files /dev/null and b/docs/_images/PMM_DB_clusters_managed_percona_kubernetes_operators.png differ diff --git a/docs/_images/PMM_Inventory_Item_Selection.png b/docs/_images/PMM_Inventory_Item_Selection.png index b62c2b863e..d62e516ef2 100644 Binary files a/docs/_images/PMM_Inventory_Item_Selection.png and b/docs/_images/PMM_Inventory_Item_Selection.png differ diff --git a/docs/_images/PMM_Inventory_Node_Agent_Properties..png b/docs/_images/PMM_Inventory_Node_Agent_Properties..png new file mode 100644 index 0000000000..612620d414 Binary files /dev/null and b/docs/_images/PMM_Inventory_Node_Agent_Properties..png differ diff --git a/docs/_images/PMM_Inventory_Node_Selection.png b/docs/_images/PMM_Inventory_Node_Selection.png index cec479a6b4..e442b8ac86 100644 Binary files a/docs/_images/PMM_Inventory_Node_Selection.png and b/docs/_images/PMM_Inventory_Node_Selection.png differ diff --git a/docs/_images/PMM_Inventory_cluster_view.png b/docs/_images/PMM_Inventory_cluster_view.png new file mode 100644 index 0000000000..4bd3b6bdcd Binary files /dev/null and b/docs/_images/PMM_Inventory_cluster_view.png differ diff --git a/docs/_images/PMM_Inventory_cluster_view_details.png b/docs/_images/PMM_Inventory_cluster_view_details.png new file mode 100644 index 0000000000..386dcb757c Binary files /dev/null and b/docs/_images/PMM_Inventory_cluster_view_details.png differ diff --git a/docs/_images/PMM_Inventory_node_service_relation.png b/docs/_images/PMM_Inventory_node_service_relation.png new file mode 100644 index 0000000000..4349d6b25b Binary files /dev/null and b/docs/_images/PMM_Inventory_node_service_relation.png differ diff --git a/docs/_images/PMM_Inventory_service_node_relation.png b/docs/_images/PMM_Inventory_service_node_relation.png new file mode 100644 index 0000000000..c5ceba693c Binary files /dev/null and b/docs/_images/PMM_Inventory_service_node_relation.png differ diff --git a/docs/_images/PMM_access_control_add_labels_services.png b/docs/_images/PMM_access_control_add_labels_services.png index 42a6c3498e..cd5ca028be 100644 Binary files a/docs/_images/PMM_access_control_add_labels_services.png and b/docs/_images/PMM_access_control_add_labels_services.png differ diff --git a/docs/_images/PMM_access_control_add_labels_to_add.png b/docs/_images/PMM_access_control_add_labels_to_add.png new file mode 100644 index 0000000000..f41df0646f Binary files /dev/null and b/docs/_images/PMM_access_control_add_labels_to_add.png differ diff --git a/docs/_images/PMM_access_control_add_main_details.png b/docs/_images/PMM_access_control_add_main_details.png new file mode 100644 index 0000000000..ef01a4f161 Binary files /dev/null and b/docs/_images/PMM_access_control_add_main_details.png differ diff --git a/docs/_images/PMM_access_control_add_services.png b/docs/_images/PMM_access_control_add_services.png new file mode 100644 index 0000000000..27751f3c79 Binary files /dev/null and b/docs/_images/PMM_access_control_add_services.png differ diff --git a/docs/_images/PMM_access_control_labels_types.png b/docs/_images/PMM_access_control_labels_types.png new file mode 100644 index 0000000000..1d7828b758 Binary files /dev/null and b/docs/_images/PMM_access_control_labels_types.png differ diff --git a/docs/_images/PMM_access_edit_labels.png b/docs/_images/PMM_access_edit_labels.png new file mode 100644 index 0000000000..9028c8491d Binary files /dev/null and b/docs/_images/PMM_access_edit_labels.png differ diff --git a/docs/details/dashboards/dashboard-inventory.md b/docs/details/dashboards/dashboard-inventory.md index 430ff8bfa9..d7f99b6236 100644 --- a/docs/details/dashboards/dashboard-inventory.md +++ b/docs/details/dashboards/dashboard-inventory.md @@ -8,11 +8,20 @@ To check your inventory list, go to **Configuration* Inventory objects form a hierarchy with Node at the top, then Service and Agents assigned to a Node. This information is detailed in the two tabs available on this page. -### **Services** tab +### Services tab -Shows individual services, the nodes on which they run, and the Agents that help collect the service metrics. -The **Status** column shows the status of your databases based on metrics coming directly from the database. -The **Monitoring** column summarizes the status of all the Agents assigned to the service. +The **Services** tab displays the individual services, the nodes on which they run, and the Agents that help collect the service metrics along with the following information: + + +**Service name** - The name or identifier associated with the service being monitored. + +**Node Name** - Name or identifier associated with a specific node. + +**Monitoring status** - The **Monitoring** column summarizes the status of all the Agents assigned to the service. + +**Address** - The IP address or DNS where the service is currently running. + +**Port** - The port number on which the service is running. You can check Query Analytics information and the Service Overview Dashboard for each service by clicking on the icon in the **Options** column. @@ -29,10 +38,73 @@ Each binary (exporter, agent) running on a client will get an `agent_type` value - `mysqld_exporter` and `qan-mysql-perfschema-agent` are assigned to agents that extract metrics from mysql and its performance schema respectively. To view the agents running on a service and their health status, click **OK** or **Failed** under the **Monitoring** column. Furthermore, you can also check the properties of a particular agent by clicking the icon under the **Options** column. + ![!image](../../_images/PMM_Inventory_Service_Agent_Properties.png) +#### Node-service relationship + +Starting with PMM 2.40.0, you can click on the link in the **Node Name** column to view the node on which a specific service is running and analyze how node-level resource utilization impacts the performance of those services. + +Understanding the relationship between nodes and services is key to gaining insights into the distribution and performance of individual services across nodes. + +- **Deployment**: Services within PMM are deployed on nodes and rely on them for resources, such as CPU, memory, and storage, to execute tasks. + +- **Resource allocation**: It is essential to know which nodes host which services to allocate resources appropriately to avoid underuse or overload. + +- **Performance optimization**: By analyzing node and service-level metrics, you can pinpoint and resolve issues that impede service performance, such as resource limitations and performance bottlenecks. + +- **Incident response**: When an issue or incident occurs, understanding the node-service relationship helps in troubleshooting. You can quickly identify which nodes and services are affected and focus your efforts on resolving the problem. + +### Editing labels for a service + +You can edit the labels as follows: + +1. From the **Main** menu, navigate to **Configuration → Inventory**. + +2. Click on the three dots next to the service you want to edit labels for. + +3. Click **Edit**. The **Edit Service** page opens. + +4. Edit the labels as per your requirement and click **Save Changes**. The editing service dialogue box opens. + + ![!](../../_images/PMM_access_edit_labels.png) -### **Nodes** tab + +5. Click **Confirm and save changes**. You will be taken back to the **Inventory/Services** page. + +#### Effect of editing labels for a service + +Editing existing labels can impact the following PMM functions: + +- **Alerting** + + Editing labels without updating alerting rules can lead to missed alerts. If an alert rule is based on specific labels that are changed or no longer apply, the alert may not trigger when it should. + + Update the alert rules promptly after editing the labels for a smooth alerting experience. + +- **Scheduled backup**s: Editing the cluster label will remove all scheduled backups for the imapcted service or cluster. + + To prevent any issues, make sure to recreate your backups once you've configured the cluster. + +- **Dashboard data**: Edited labels do not affect the existing time-series(metrics). It will only affect the new time-series(metrics). + + +#### Cluster view + +!!! caution alert alert-warning "Disclaimer" + This feature is still [technical preview](../details/glossary.md#technical-preview) and is subject to change. We recommend that early adopters use this feature for testing purposes only. + + +Starting with PMM 2.40.0, you can choose to view a group of services as a single cluster with the **Organize by Clusters** toggle. PMM uses the `cluster` label to display services under the same cluster. + +![!image](../../_images/PMM_Inventory_cluster_view.png) + +Click the downward arrow to view cluster details, including the services running on that cluster, agents, and labels. + +![!image](../../_images/PMM_Inventory_cluster_view_details.png) + + +### Nodes tab Shows where the service and agents run. @@ -42,6 +114,8 @@ By expanding the entry from the options column, you can check the node labels an Starting with PMM 2.38.0, you can see the number of agents running on any particular node. When you click on any node, the UI navigates to the view of agents, which is filtered to display only agents related to that specific node. +Furthermore, starting with PMM 2.40.0, you can see the service running on that specific node when you click on the link in the **Services** column. + To see the details of the agents running, do the following: 1. On the **Nodes** tab, under the **Monitoring** column, click **OK** or **Failed** depending on the status of the node that you have selected. A page that provides the user with crucial information regarding the total number of agents deployed on that node is displayed. diff --git a/docs/details/dashboards/kubernetes_monitor_db_clusters_managed.md b/docs/details/dashboards/kubernetes_monitor_db_clusters_managed.md new file mode 100644 index 0000000000..9e95336da2 --- /dev/null +++ b/docs/details/dashboards/kubernetes_monitor_db_clusters_managed.md @@ -0,0 +1,12 @@ +# DB clusters managed with Percona Kubernetes Operators + + +!!! caution alert alert-warning "Important" + This feature is still in [Technical Preview](https://docs.percona.com/percona-monitoring-and-management/details/glossary.html#technical-preview) and is subject to change. We recommend that early adopters use this feature for testing purposes only. + + +This dashboard displays the primary parameters of database clusters created by Percona Operators for various databases and helps identify the performance issues. + +![!image](../../_images/PMM_DB_clusters_managed_percona_kubernetes_operators.png) + + diff --git a/docs/details/dashboards/kubernetes_monitor_operators.md b/docs/details/dashboards/kubernetes_monitor_operators.md new file mode 100644 index 0000000000..6f39ca4c71 --- /dev/null +++ b/docs/details/dashboards/kubernetes_monitor_operators.md @@ -0,0 +1,21 @@ +# Kubernetes monitoring for Percona Operators + +!!! caution alert alert-warning "Important" + This feature is still in [Technical Preview](https://docs.percona.com/percona-monitoring-and-management/details/glossary.html#technical-preview) and is subject to change. We recommend that early adopters use this feature for testing purposes only. + +Monitoring the state of the database is crucial to timely identify and react to performance issues. Percona Monitoring and Management (PMM) solution enables you to do just that. + +However, the database state also depends on the state of the Kubernetes cluster itself. Hence it’s important to have metrics that can depict the state of the Kubernetes cluster. + +For inforamtion on setting up monitoring for the Kubernetes cluster health, see [documentation](https://docs.percona.com/percona-operator-for-mysql/pxc/monitor-kubernetes.html). + +This setup has been tested with the PMM server as the centralized data storage and the Victoria Metrics Kubernetes monitoring stack as the metrics collector. These steps may also apply if you use another Prometheus-compatible storage. + + +## Kubernetes overview + +The Kubernetes Cluster overview dashboard gives you an overview of Kubernetes health and its objects, including Percona custom resources. + +![!image](../../_images/K8s_overview_dashboard_for_operators.png) + + diff --git a/docs/details/pmm_components_and_versions.md b/docs/details/pmm_components_and_versions.md index 4a73bac961..dd59920342 100644 --- a/docs/details/pmm_components_and_versions.md +++ b/docs/details/pmm_components_and_versions.md @@ -2,11 +2,10 @@ The following table lists all the PMM client/server components and their versions: - -| Component| Version| Documentation | Repository | -|----------|--------|---------------------------------------------- |-------------------------------------------------------------------------------------------------------------| +| PMM client/server component |Version | Documentation |Location on GitHub| +|-----------------------------|--------|---------------|------------------| | Grafana | 9.2.20* | [Grafana Documentation](https://grafana.com/docs/grafana/latest/)|[Github Grafana](https://github.com/percona-platform/grafana)| -| VictoriaMetrics| 1.82.1 | [VictoriaMetrics Documentation](https://docs.victoriametrics.com/)|[Github VictoriaMetrics](https://github.com/VictoriaMetrics/VictoriaMetrics) | +| VictoriaMetrics| 1.93.4 | [VictoriaMetrics Documentation](https://docs.victoriametrics.com/)|[Github VictoriaMetrics](https://github.com/VictoriaMetrics/VictoriaMetrics) | | Nginx | 1.20.1 | [Nginx Documentation](http://nginx.org/en/docs/)|[Github Nginx](https://github.com/nginx/nginx-releases) | | Percona Distribution for PostgreSQL | 14.5 | [Percona Distribution for PostgreSQL 14 Documentation](https://www.percona.com/doc/postgresql/LATEST/index.html)| | | Clickhouse| 21.3.20.1 |[ClickHouse Documentation Documentation](https://clickhouse.com/docs/en/)|[Github ClickHouse](https://github.com/ClickHouse/ClickHouse)| diff --git a/docs/details/victoria-metrics.md b/docs/details/victoria-metrics.md index 026fea17c4..002b74c558 100644 --- a/docs/details/victoria-metrics.md +++ b/docs/details/victoria-metrics.md @@ -52,7 +52,34 @@ To set downsampling, use the `downsampling.period` parameter as follows: This instructs VictoriaMetrics to [deduplicate](https://docs.victoriametrics.com/#deduplication) samples older than 20 days with 10 minute intervals and samples older than 120 days with two hour intervals. +## Using VictoriaMetrics external database instance +!!! caution alert alert-warning "Important/Caution" + This feature is still in [Technical Preview](https://docs.percona.com/percona-monitoring-and-management/details/glossary.html#technical-preview) and is subject to change. We recommend that early adopters use this feature for evaluation purposes only. + + +Starting with PMM 2.40.0, you can now use an external VictoriaMetrics database for monitoring in PMM. + +The environment variable `PMM_VM_URL` has been added, which should point to the external VictoriaMetrics database and should have the following format: + +```sh +http(s)://hostname:port/path. +``` + +If the external VictoriaMetrics database requires basic authentication, the following environment variables should be used: + +```sh +VMAGENT_remoteWrite_basicAuth_username={username} +VMAGENT_remoteWrite_basicAuth_password={password} +``` +If other authentication methods are used on the VictoriaMetrics side, users can use any of the `vmagent` environment variables by prepending `VMAGENT_ prefix`. + +When external VictoriaMetrics is configured, internal VictoriaMetrics stops. In this case, VM Agent on PMM Server pulls metrics from agents configured in the `pull metrics mode` and from remote nodes. Data is then pushed to external VictoriaMetrics. + +!!! note alert alert-primary "Note" + VM Agents run by PMM Clients push data directly to external VictoriaMetrics. + + Ensure that they can connect to external VictoriaMetrics. ## Troubleshooting diff --git a/docs/get-started/backup/create_PITR_mongo.md b/docs/get-started/backup/create_PITR_mongo.md index c8862cf638..4ff35d94be 100644 --- a/docs/get-started/backup/create_PITR_mongo.md +++ b/docs/get-started/backup/create_PITR_mongo.md @@ -46,11 +46,16 @@ Before creating a backup, make sure to check the [MongoDB backup prerequisites]( query-source=profiler --cluster=mycluster !!! caution alert alert-warning "Important" Unless you are using verified custom workflows, make sure to keep the default **Folder** value coming from the cluster name. Editing this field will impact PMM-PBM integration workflows. + 11. Click **Schedule** to start creating the backup artifact. 12. Go to the **All Backups** tab, and check the **Status** column. An animated ellipsis indicator {{icon.bouncingellipsis}} shows that a backup is currently being created. ![!](../../_images/PMM_Backup_Management-MongoDB-PITR-Enable.jpg) +## Failed backup alerts + +If you want to be notified of any MongoDB backups that fail, you can create an alert based on the Backup Failed alert template. For information on working with alert templates, see the [Percona Alerting](../get-started/alerting.md) topic. + ## PITR artifacts The PITR oplog is available a few minutes (10 by default) after your PITR job has run for the first time. To see the corresponding PITR artifact, check out the list under **Backup > All Backups**. diff --git a/docs/get-started/roles-and-permissions/lbac.md b/docs/get-started/roles-and-permissions/lbac.md index c1305ca259..d0c2c0fc07 100644 --- a/docs/get-started/roles-and-permissions/lbac.md +++ b/docs/get-started/roles-and-permissions/lbac.md @@ -22,20 +22,51 @@ PMM supports standard as well as custom labels. PMM automatically assigns standa ## Adding labels -You can add custom or standard labels in PMM while adding a service for monitoring in PMM. +In PMM, labels enable you to identify, categorize, and organize your monitored services and resources. Labels also simplify filtering, grouping, and analyzing data. + +While adding a service for monitoring in PMM, you can add custom or standard labels. **Using PMM UI** -You can set the labels using User interface as follows: +You can set the labels using the User interface as follows: -1. From the *Main* menu, navigate to *Configuration → Add Service*. +1. From the **Main** menu, navigate to **Configuration → Add Service**. 2. Select the service you want to add to PMM for monitoring. The page to add the service opens. -3. Enter the details such as *Hostname, Service name, Port, Username, Password,* etc., along with Label or Custom labels. + ![!](../../_images/PMM_access_control_add_services.png) + +3. Enter the details such as **Hostname, Service name, Port, Username, Password, Max query length**. + + ![!](../../_images/PMM_access_control_add_main_details.png) + +4. (Optional) Enter the **Labels** for the service being monitored. + + ![!](../../_images/PMM_access_control_add_labels_to_add.png) + + + +5. (Optional) Check the **Additional Options** that you want to include, such as: + + - **Skip connection check**: Do not check the connection to the database. + + - **Use TLS for database connections**: Enabling TLS (Transport Layer Security) for database connections is an important security measure to protect the confidentiality and integrity of data transmitted between the PMM Server and the monitored database instances. + + - **Skip TLS certificate and hostname validation**: For certain purposes, like debugging and testing, it may be necessary to bypass TLS certificate and hostname validation. + + - **Table statistics limit**: Do not collect table statistics if the number of tables in a database exceeds this limit (defaults to 1000). + + - **Disable comments parsing**: Filter out comments in log files or data streams to isolate valid data. + + - **Use performance schema**: Use Performance Schema instead of Slow Query Log (default) for monitoring and diagnosing performance issues in your database. + +You can also edit the labels for a service with the PMM user interface. For details on editing labels for a service, see [Editing labels for a service](../../details/dashboards/dashboard-inventory.md) + +**Using pmm-admin** + + You can also assign labels using [pmm-admin](../../details/commands/pmm-admin.md). + + - ![!](../../_images/PMM_access_control_add_labels_services.png) - **Using pmm-admin** - You can also assign labels using [pmm-admin](../../details/commands/pmm-admin.md). \ No newline at end of file diff --git a/docs/how-to/troubleshoot.md b/docs/how-to/troubleshoot.md index 62cc6159ff..9a17ad9130 100644 --- a/docs/how-to/troubleshoot.md +++ b/docs/how-to/troubleshoot.md @@ -72,9 +72,6 @@ A bug in PMM Server ansible scripts caused PMM to upgrade Nginx's dependencies w !!! caution alert alert-warning "Important" This issue has been resolved for PMM version 2.33.0. However, the issue persists on all the versions prior to 2.33.0. - - - **Solution** While PMM is being upgraded, log in to the PMM server and run the following command: @@ -83,6 +80,21 @@ While PMM is being upgraded, log in to the PMM server and run the following comm sed -i 's/- nginx/- nginx*/' /usr/share/pmm-update/ansible/playbook/tasks/update.yml ``` +#### PMM cannot acess admin user after upgrading + +After upgrading PMM from version 2.39.0 to 2.40.0 (not el7) using Docker, the `admin` user cannot access the PMM UI. + +**Solution**: To fix the problem and gain back admin access to the PMM interface execute the following: + +```sh +# psql -U grafana +grafana=> update "user" set id='1' where login='admin'; +UPDATE 1 +grafana=> \q + +# grafana cli --homepath=/usr/share/grafana --config=/etc/grafana/grafana.ini admin reset-admin-password +``` + ### Configuration issues This section focuses on configuration issues, such as PMM-agent connection, adding and removing services for monitoring, and so on. diff --git a/docs/release-notes/2.40.0.md b/docs/release-notes/2.40.0.md new file mode 100644 index 0000000000..304fe940a0 --- /dev/null +++ b/docs/release-notes/2.40.0.md @@ -0,0 +1,114 @@ + +# Percona Monitoring and Management 2.40.0 + + +| **Release date:** | Oct 05, 2023 | +| ----------------- | ----------------------------------------------------------------------------------------------- | +| **Installation:** | [Installing Percona Monitoring and Management](https://www.percona.com/software/pmm/quickstart) | + +Percona Monitoring and Management (PMM) is an open source database monitoring, management, and observability solution for MySQL, PostgreSQL, and MongoDB. + + +!!! caution alert alert-warning "Caution" + **If you are using the Library Panels on the PMM dashboard, avoid upgrading to PMM 2.40.0 due to a known issue. Instead, we recommend waiting for the release of PMM 2.40.1.** + + +## Release Highlights + +### Inventory improvements + +#### Ability to update labels for existing services to PMM + +Starting with PMM 2.40.0, editing labels for existing services is easier and much more efficient. You can edit a service label directly from the PMM UI without removing and re-adding it. For more information on editing labels, see [documentation](https://docs.percona.com/percona-monitoring-and-management/details/dashboards/dashboard-inventory.html#editing-labels-for-a-service). + + ![!](../_images/PMM_access_edit_labels.png) + +Furthermore, in our continued effort to enhance user experience, we have redesigned the following pages to make them more user-friendly and intuitive: + +- Select service type page +- Add service page + + +#### Connecting Services and Nodes + +Starting with PMM 2.40.0, you can click on the link in the **Node Name** column to view the node on which a specific service is running and analyze how node-level resource utilization impacts the performance of those services. + +Before introducing this feature, locating the running services on a node was cumbersome. However, with this new feature, you can effortlessly access a list of services running on a specific node and identify the node name where the service is being utilized. Additionally, the filters implemented make navigation a lot simpler. + + ![!](../_images/PMM_Inventory_service_node_relation.png) + +Furthermore, you can also see the service running on that specific node when you click on the link in the **Services** column. + + ![!](../_images/PMM_Inventory_node_service_relation.png) + + + +#### Cluster view for Inventory + +!!! caution alert alert-warning "Important" + This feature is still in [Technical Preview](https://docs.percona.com/percona-monitoring-and-management/details/glossary.html#technical-preview) and is subject to change. We recommend that early adopters use this feature for evaluation purposes only. + + +Understanding the structure of your inventory is crucial. With the release of PMM 2.40.0, we've introduced an experimental feature that categorizes all your Services by Cluster, making it easier for you to understand your inventory. By using the **Organize by Clusters** toggle, you can view a group of services as a single cluster. PMM utilizes the cluster label to display services that belong to the same cluster. + + ![!image](../_images/PMM_Inventory_cluster_view.png) + +For detailed information on this feature, see [documentation](https://docs.percona.com/percona-monitoring-and-management/details/dashboards/dashboard-inventory.html#cluster-view). + + +### MongoDB Backup Monitoring + +With this release, we are shipping the first version of a the **Backup failed** alert template which notifies of any failed MongoDB backups. This uses a new, dedicated metric, `pmm_managed_backups_artifacts`, for checking the state of backup artifacts. + +This new template is currently in Technical Preview and we are keen to get your feedback around this change before we move it to General Availability. + + ![!image](../_images/Backup_Failed_Template.png) + +For information on working with this new template, see the [Percona Alerting](../get-started/alerting.md) topic. + + +### Components Upgrade + +VictoriaMetrics has been upgraded [v1.93.4](https://docs.victoriametrics.com/CHANGELOG.html#v1934). + + +## New Features + +- [PMM-11963](https://jira.percona.com/browse/PMM-11963) - Starting with PMM 2.40.0, you can click on the link in the **Node Name** column to view the node on which a specific service is running. +- [PMM-11148](https://jira.percona.com/browse/PMM-11148) - [Inventory]: We have redesigned the **Select service type** and **Add service** pages to make them more user-friendly and intuitive. +- [PMM-11423](https://jira.percona.com/browse/PMM-11423) - [Inventory]: Starting with PMM 2.40.0, you can now edit service labels directly from the PMM UI without having to remove and re-add them. +- [PMM-12378](https://jira.percona.com/browse/PMM-12378) - [Inventory]: We have introduced an experimental feature that categorizes all your Services by Cluster, making it easier for you to understand your inventory. By using the **Organize by Clusters** toggle, you can view a group of services as a single cluster. +- [PMM-12384](https://jira.percona.com/browse/PMM-12384) - [Alerting]: Added a new built-in alert template, **Backup failed** which you can use to create alert rules that notify of failed MongoDB backups. +- [PMM-9374](https://jira.percona.com/browse/PMM-9374) - [[Technical Preview](https://docs.percona.com/percona-monitoring-and-management/details/glossary.html#technical-preview)]: Starting with PMM 2.40.0, you can now use an external VictoriaMetrics database for monitoring in PMM. This provides multiple benefits, including scalability, resource isolation, reduced load on the PMM server, customization, etc. + + +## Improvements + +- [PMM-4466](https://jira.percona.com/browse/PMM-4466) - Grafana now uses PostgreSQL instead of SQLite, resulting in improved performance, stability for user auth requests, data integrity, reliability, security, etc. +- [PMM-12310](https://jira.percona.com/browse/PMM-12310) - Links from PMM to documentation may change, causing "broken links" in older PMM versions due to document structure changes. We have replaced all links with Short.io links specific to each document to address this. This way, we can maintain the PMM-to-doc links using a URL shortener. This ensures that the links remain accessible even if the document structure changes. +- [PMM-12457](https://jira.percona.com/browse/PMM-12457) - We have added a new `node_name` property to the **PMM agent down** alert template in PMM. This allows users to easily identify the node where the failure occurred. +- [PMM-12488](https://jira.percona.com/browse/PMM-12488) - VictoriaMetrics has been updated to v1.93.4. +- [PMM-12500](https://jira.percona.com/browse/PMM-12500) - [[Technical Preview](https://docs.percona.com/percona-monitoring-and-management/details/glossary.html#technical-preview)]: For Percona Operator users, we have introduced a new dashboard for K8s monitoring with PMM 2.40.0. +- [PMM-11770](https://jira.percona.com/browse/PMM-11770) - PMM now automatically sets the server domain value in `grafana.ini` to the public address specified in PMM’s Advanced Settings. This ensures that links generated by Grafana, such as links in alert emails, also carry that address. + + +## Bugs Fixed + +- [PMM-10145](https://jira.percona.com/browse/PMM-10145) - When we installed an AMI image in AWS and added an Amazon RDS instance in the creating state, it caused errors. The issue has been resolved now. +- [PMM-12173](https://jira.percona.com/browse/PMM-12173) - On adding several clients to PMM, unexpected and unauthorized errors caused PMM to stop responding. The issue has since been resolved now. +- [PMM-12344](https://jira.percona.com/browse/PMM-12344) - An error was displayed on the **Explain** tab after selecting a PostgreSQL query. The issue has been resolved now. +- [PMM-12361](https://jira.percona.com/browse/PMM-12361) - The command `pmm-admin inventory` returned GO errors. The issue has been reolved now. +- [PMM-12382](https://jira.percona.com/browse/PMM-12382) - Fixed an issue where the upper-case custom labels were not being accepted. +- [PMM-11371](https://jira.percona.com/browse/PMM-11371) - Usage of `pmm-admin` config subcommand shutdown pmm-agent. The issue has been resolved now. +- [PMM-11603](https://jira.percona.com/browse/PMM-11603) - When running `pmm-agent` outside of systemd, adding an agent causes errors. The issue has been resolved now. +- [PMM-11651](https://jira.percona.com/browse/PMM-11651) - When a user has both full access and limited access roles, only the limited role's metrics are displayed. The issue has been resolved now. +- [PMM-12146](https://jira.percona.com/browse/PMM-12146) - Dead Tuples graph on PostgreSQL Vacuum Monitoring Dashboard displayed invalid percentage. The issue has been resolved now. +- [PMM-12448](https://jira.percona.com/browse/PMM-12448) - Can't start backup if artifact with empty `service_id` exists. + +## Known issues + +- [PMM-12517](https://jira.percona.com/browse/PMM-12517) - If you have set custom dashboards as your Home dashboard in version 2.26.0, they may be lost after upgrading to version 2.40.0. To prevent this, we recommend that you back up your custom dashboard before upgrading and recover it after the upgrade. + +- [PMM-12576](https://jira.percona.com/browse/PMM-12576) - After upgrading PMM from version 2.39.0 to 2.40.0 (not el7) using Docker, the admin user cannot access the PMM UI. Refer to the [documentation](https://docs.percona.com/percona-monitoring-and-management/troubleshoot.html#pmm-cannot-acess-admin-user-after-upgrading) for information on the solution. + +- [PMM-12592](https://jira.percona.com/browse/PMM-12592) - If you are using the **Library Panels** on the PMM dashboard, avoid upgrading to PMM 2.40.0 due to a known issue. diff --git a/docs/release-notes/2.40.1.md b/docs/release-notes/2.40.1.md new file mode 100644 index 0000000000..0008833764 --- /dev/null +++ b/docs/release-notes/2.40.1.md @@ -0,0 +1,44 @@ +# Percona Monitoring and Management 2.40.1 + +| **Release date:** | Oct 20, 2023 | +| ----------------- | ----------------------------------------------------------------------------------------------- | +| **Installation:** | [Installing Percona Monitoring and Management](https://www.percona.com/software/pmm/quickstart) | + +Percona Monitoring and Management (PMM) is an open-source database monitoring, management, and observability solution for MySQL, PostgreSQL, and MongoDB. + +## Fixed issues + +- [PMM-12592](https://jira.percona.com/browse/PMM-12592) - Fixed an issue where the **Library Panels** for the PMM dashboard were not working after upgrade to PMM 2.40.0. +- [PMM-12576](https://jira.percona.com/browse/PMM-12576) - After upgrading to PMM 2.40.0, changing the Admin user's password from the terminal was not functioning. The issue has been resolved now. +- [PMM-12587](https://jira.percona.com/browse/PMM-12587) - After upgrading to PMM 2.40.0, some users may experience incorrect mappings between dashboards, folders, users, and groups. This can result in either a successful upgrade or a `500 internal server error`. The issue has now been resolved. +- [PMM-12590](https://jira.percona.com/browse/PMM-12590) [CVE-2023-4911](https://nvd.nist.gov/vuln/detail/CVE-2023-4911) is a vulnerability in the OS that PMM is based on. It has been fixed in the base OS, and the fix is available in PMM. + + +## How to upgrade from 2.40.0 to PMM 2.40.1 + +!!! caution alert alert-warning "Important" + The steps below are only applicable to users who have upgraded to 2.40.0 and have been experiencing the following issues: + + - [PMM-12592](https://jira.percona.com/browse/PMM-12592) + - [PMM-12587](https://jira.percona.com/browse/PMM-12587) + +To upgrade to PMM 2.40.1: + +1. Copy the file from `/srv/backup/grafana/grafana.db` to `/srv/grafana/grafana.db` + + !!! caution alert alert-warning "Caution" + This step will result in the loss of all changes made to Grafana upon upgrading to version 2.40.0. + + ```sh + docker exec -t pmm-server cp /srv/backup/grafana/grafana.db /srv/grafana/grafana.db + ``` + +2. Set permissions: + + ```sh + chmod 640 /srv/grafana/grafana.db + + chown grafana:grafana /srv/grafana/grafana.db + ``` + +3. Upgrade to 2.40.1 as usual. \ No newline at end of file diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md index 917e96dc89..40efd901e4 100644 --- a/docs/release-notes/index.md +++ b/docs/release-notes/index.md @@ -1,4 +1,6 @@ # Release Notes +- [Percona Monitoring and Management 2.40.1](2.40.1.md) +- [Percona Monitoring and Management 2.40.0](2.40.0.md) - [Percona Monitoring and Management 2.39.0](2.39.0.md) - [Percona Monitoring and Management 2.38.1](2.38.1.md) - [Percona Monitoring and Management 2.38.0](2.38.0.md) diff --git a/docs/setting-up/client/aws.md b/docs/setting-up/client/aws.md index 53bc01adc4..0bedc8f012 100644 --- a/docs/setting-up/client/aws.md +++ b/docs/setting-up/client/aws.md @@ -146,6 +146,9 @@ GRANT SELECT, UPDATE, DELETE, DROP ON performance_schema.* TO 'pmm'@'%'; ## Adding an Amazon RDS, Aurora or Remote Instance +!!! caution alert alert-warning "Important" + It may take longer for PMM to discover Amazon RDS instances in the `creating` state. You must wait a bit longer until PMM discovers these instances. + The preferred method of adding an Amazon RDS database instance to PMM is via the *Configuration* → {{icon.inventory}} *PMM Inventory* → {{icon.addinstance}} *Add Instance* menu option. This method supports Amazon RDS database instances that use Amazon Aurora, MySQL, or MariaDB engines, as well as any remote PostgreSQL, ProxySQL, MySQL and MongoDB instances. diff --git a/mkdocs-base.yml b/mkdocs-base.yml index 192efdd204..87c1309c5b 100644 --- a/mkdocs-base.yml +++ b/mkdocs-base.yml @@ -93,9 +93,9 @@ plugins: - "setting-up/client/docker.md" # https://github.com/orzih/mkdocs-with-pdf with-pdf: - output_path: "_pdf/PerconaMonitoringAndManagement-2.39.0.pdf" + output_path: "_pdf/PerconaMonitoringAndManagement-2.40.1.pdf" cover_title: "Percona Monitoring and Management Documentation" - cover_subtitle: 2.39.0 (Aug 14, 2023) + cover_subtitle: 2.40.1 (Oct 20, 2023) author: "Percona Technical Documentation Team" cover_logo: docs/_images/Percona_Logo_Color.png @@ -219,6 +219,8 @@ nav: - details/dashboards/kubernetes_cluster_summary.md - details/dashboards/kubernetes_pods_status.md - details/dashboards/kubernetes_volume.md + - details/dashboards/kubernetes_monitor_operators.md + - details/dashboards/kubernetes_monitor_db_clusters_managed.md - DBaas: - details/dashboards/dashboard-cluster-summary.md - OS Dashboards: @@ -311,6 +313,8 @@ nav: - faq.md - Release Notes: - release-notes/index.md + - "PMM 2.40.1": release-notes/2.40.1.md + - "PMM 2.40.0": release-notes/2.40.0.md - "PMM 2.39.0": release-notes/2.39.0.md - "PMM 2.38.1": release-notes/2.38.1.md - "PMM 2.38.0": release-notes/2.38.0.md diff --git a/requirements.txt b/requirements.txt index 5e8b738bdb..25be7a0ac3 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,7 +3,7 @@ mkdocs mkdocs-macros-plugin mkdocs-exclude markdown-include -mkdocs-material +mkdocs-material==9.2.7 mkdocs-with-pdf mkdocs-git-revision-date-plugin mkdocs-material-extensions diff --git a/variables.yml b/variables.yml index 33e278ae17..6295effcd0 100644 --- a/variables.yml +++ b/variables.yml @@ -1,9 +1,9 @@ # PMM Version for HTML # See also mkdocs.yml plugins.with-pdf.cover_subtitle and output_path -release: '2.39.0' -version: '2.39.0' -release_date: 2023-08-09 +release: '2.40.1' +version: '2.40.1' +release_date: 2023-10-20 # SVG icons. Use in markdown as {{icon.}} # For the Percona image icon (encoded inline SVG), see https://css-tricks.com/using-svg/ icon: