Troubleshooting Kanvas
Learn to Troubleshoot the Kanvas
Meshery Extension
Designer Mode
Upon Meshery extension’s first load, a GET request initializes the Kanvas plugin. Errors are classified into two types: plugin not found or built on a different version. Kanvas loads, and Designer is functional if no errors occur.
Operator Mode
GraphQL queries fetch header data and view data for the Operator canvas. Checks ensure data types and properties are correct, enabling canvas display. If no clusters are connected, a modal prompts the user to select one.
Fault Scenarios Explained for Kanvas Extension
1. MISSING PLUGIN
- MODE STATE: Operator and Designer: Inactive, Not Interactable.
- CAUSED WHEN: plugin.so is not in the desired folder.
- REMEDIATION: Confirm plugin versions, run make dev or make prod on the local meshery-extension folder.
2. INCOMPATIBLE PLUGIN
- MODE STATE: Operator and Designer: Inactive, Not Interactable.
- CAUSED WHEN: go.mod mismatches between meshery/meshery and layer5labs/meshery-extensions.
- REMEDIATION: Ensure identical go.mod files and plugin version matching.
3. NO ACTIVE CLUSTER CONNECTIONS
- MODE STATE: Operator: Active, Not Interactable; Designer: Active, Interactable.
- CAUSED WHEN: No active Kubernetes cluster connections.
- REMEDIATION: Connect a Kubernetes cluster from settings.
4. MISSING MESHSYNC DATA / NATS NOT RUNNING
- MODE STATE: Operator: Active, Not Interactable; Designer: Active, Interactable.
- CAUSED WHEN: Meshery Broker lacks an external IP address or networking issues.
- REMEDIATION: Delete meshery-meshsync pod, use Docker Desktop/Kind/Minikube/external cloud provider.
5. CORRUPT DATABASE
- MODE STATE: Operator: Inactive, Not Interactable; Designer: Active, Interactable.
- CAUSED WHEN: Unable to save/query database.
- REMEDIATION: Use System Reset button or remove the config folder and rebuild Meshery.
6. INCOMPATIBLE MESHMAP AND MESHERY VERSION
- MODE STATE: Operator and Designer: Active, Interactable.
- CAUSED WHEN: Meshery and Kanvas version mismatches.
- REMEDIATION: Pull/build the latest Kanvas, update Mesheryctl and Meshery.
Recent Discussions on Kanvas
- Oct 14 | Explore Meshery's Published Relationship Design Examples by Awani Alero
- Oct 03 | Design Review RFC: Kanvas Empty State Enhancement by Lee Calcote
- Jul 19 | [For Discussion] Visual indication of semantically vs non-semantically meaningful Meshery components by Lee Calcote
- Jun 07 | What are the conditions for a "System is unhealthy" warning? by James
- May 30 | Looking for a meshmate to help with first PR by Faisal Imtiyaz123
- Feb 28 | For Discussion: Capturing potential, but unrealized Relationships in Design Snapshots by Lee Calcote
- Feb 12 | Hint on Scaling & Verifying Cronjob in Playground by Sandra Ashipala
- Sep 28 | Trying to add screenshots of Containerd & Curiefense integration by Raman Thakur