How Ryvn Maps to Kubernetes
When you deploy a server service to an environment, Ryvn creates the Kubernetes resources needed to run and expose your application:| Ryvn | Kubernetes | What it does |
|---|---|---|
| Environment | Cluster | An isolated Kubernetes cluster in your cloud account |
| Service | — | A deployment template (no direct K8s equivalent) |
| Installation | Deployment + Service + Ingress | A running instance of a service in an environment |
| Pod | Pod | A single container instance of your application |
Pods
A pod is a single running instance of your application. When you configure the pod count in Ryvn, you’re controlling how many pods run simultaneously. Running multiple pods gives you:- Availability — if one pod crashes, others keep serving traffic
- Throughput — traffic is distributed across pods via a load balancer
Resource Requests and Limits
Every pod needs CPU and memory. Kubernetes uses two settings to manage this:- Requests — the guaranteed minimum. The scheduler uses this to decide where your pod runs.
- Limits — the maximum allowed. If a pod exceeds its memory limit, it’s killed (OOMKilled). If it exceeds CPU, it gets throttled (slower responses).
| Unit | Meaning | Example |
|---|---|---|
250m CPU | 0.25 cores | Light API server |
1000m CPU | 1 full core | CPU-intensive workload |
256Mi memory | 256 megabytes | Small service |
1Gi memory | 1 gigabyte | Larger service |
Health Checks
Ryvn uses health checks to determine whether a pod is ready to receive traffic. During a deployment, new pods must pass their health check before traffic is routed to them — this is how zero-downtime deployments work. How it works:- Ryvn sends an HTTP GET request to your health check endpoint (e.g.,
/healthz) - A
2xxor3xxresponse means healthy - If a pod fails health checks for 60+ seconds, it gets restarted
- If a new deployment fails health checks for 15+ minutes, the deployment is canceled and the previous version keeps running
Deployments and Rolling Updates
When you deploy a new version, Ryvn uses rolling updates:- New pods are created with the updated version
- Each new pod must pass its health check
- Once healthy, traffic shifts to the new pods
- Old pods are terminated
Autoscaling
Ryvn monitors CPU and memory utilization across your pods and automatically adjusts the pod count:- When average utilization exceeds the target, pods are added (up to your max)
- When utilization drops, pods are removed (down to your min)
Networking
Ryvn configures three access modes that control how traffic reaches your application:| Mode | Who can reach it |
|---|---|
| Public | Anyone on the internet |
| Internal | Services within your VPC |
| Private | Services within the cluster only |
Common Troubleshooting
| Symptom | Likely cause | What to do |
|---|---|---|
| Pod stuck in Pending | Not enough CPU/memory on cluster nodes | Reduce resource requests or scale up the cluster |
| Pod in CrashLoopBackOff | Application crashes on startup | Check logs for errors — likely a missing env var or failed dependency |
| Deployment stuck/canceled | Health check failing | Verify your health endpoint works and returns 2xx within 5 seconds |
| OOMKilled | Pod exceeded memory limit | Increase the memory limit or fix a memory leak |
| No traffic reaching service | Ingress or DNS misconfiguration | Check custom domain setup and networking mode |