Key Concepts
CRD
Custom Resource
API Group
cert-manager.io, networking.istio.io).Scope
Required Permissions
CRD Properties
How to Browse CRDs
Select Cluster
Browse CRD Tree
Select a CRD
Select Namespace (if applicable)
How to View Custom Resources
Select a CRD
View Resource List
Click Resource Name
Review Details
- Spec: The desired state configuration
- Status: The current state reported by the controller
- Labels & Annotations: Metadata
- Owner References: Parent resources
- Finalizers: Cleanup hooks
How to Create a Custom Resource
Select a CRD
Click Create Button
Write YAML
Create
How to Edit a Custom Resource
Find the Resource
Open Actions Menu
Click Edit YAML
Modify and Save
How to Delete a Custom Resource
Open Actions Menu
Click Delete
Confirm
Common CRD Examples
cert-manager
Istio
ArgoCD
Prometheus Operator
Example Custom Resource
Certificate (cert-manager)
VirtualService (Istio)
Scope Types
Troubleshooting
CRD not appearing in the list
CRD not appearing in the list
- Verify the CRD is installed in the cluster
- Check if you have read permission for the CRD
- Ensure the cluster connection is working
- Try refreshing the page
Custom resource creation fails
Custom resource creation fails
- Verify the YAML syntax is correct
- Check that required fields are present
- Ensure the namespace exists (for namespaced resources)
- Check controller logs for validation errors
- Verify the CRD is established
Resource stuck in deleting state
Resource stuck in deleting state
- Check for finalizers on the resource
- Verify the controller managing the resource is running
- Check controller logs for cleanup errors
- Finalizers may need manual removal in some cases
Status not updating
Status not updating
- Verify the controller (operator) is running
- Check controller logs for errors
- Ensure the controller has permissions to update status
- Some resources may take time to reconcile
CRD shows 'Not Established'
CRD shows 'Not Established'
- The CRD may have validation errors
- Check CRD conditions for error messages
- Verify CRD YAML is syntactically correct
- Controller may need to be restarted
Cannot find resources for a CRD
Cannot find resources for a CRD
- Verify you’ve selected the correct namespace
- Check if resources exist using kubectl
- Some CRDs may require specific permissions
- Ensure the API version matches the installed CRD version
FAQ
What is a Custom Resource Definition (CRD)?
What is a Custom Resource Definition (CRD)?
Who creates CRDs?
Who creates CRDs?
- Operators: Software like cert-manager, Istio, ArgoCD
- Helm charts: As part of application deployment
- Administrators: For custom application needs
What is the difference between Namespaced and Cluster scope?
What is the difference between Namespaced and Cluster scope?
What does 'Established' mean?
What does 'Established' mean?
How do I know which operator manages a CRD?
How do I know which operator manages a CRD?
cert-manager.io→ cert-managernetworking.istio.io→ Istioargoproj.io→ ArgoCDmonitoring.coreos.com→ Prometheus Operator
Can I edit CRDs themselves?
Can I edit CRDs themselves?
Why is my resource not being processed?
Why is my resource not being processed?
- Verify the operator is installed and running
- Check operator logs for errors
- Ensure the resource spec is valid
- Check if there are dependency issues (e.g., missing referenced resources)
What are finalizers?
What are finalizers?