Rancher scheduler comes with a default Prometheus-operator to monitor the rancher clusters. You can also extend the same to monitor the portworx by just creating a service monitor object under the cattle-prometheus namespace for portworx. below example spec yaml
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
namespace: cattle-prometheus
name: portworx-prometheus-sm
labels:
name: portworx-prometheus-sm
k8s-app: prometheus-operator
spec:
selector:
matchLabels:
name: portworx
namespaceSelector:
matchNames:
- kube-system
endpoints:
- port: px-api
targetPort: 9001
and to display this rancher Prometheus portworx stats into the grafana, You can reuse the custom portworx dashboards by updating the data source as RANCHER_MONITORING
in the json dashboard spec files. available in the docs page Prometheus and Grafana
For more details, Let me know. thanks