Kubernetes Support in NCache
Accelerate Your Cloud-Native Applications with NCache
NCache is a Kubernetes-native distributed cache designed to eliminate storage bottlenecks in containerized .NET and Java applications. It allows you to deploy a highly available and scalable caching layer within any Kubernetes environment, including Azure Kubernetes Service (AKS), AWS Elastic Kubernetes Service (EKS), Google Kubernetes Engine (GKE), and Red Hat OpenShift, ensuring your cloud-native applications scale without data latency.
Key Benefits
- Provides ultra-fast in-memory caching for low-latency applications
- Integrates with Kubernetes Horizontal Pod Autoscaler (HPA) to automatically scale cache resources during peak traffic
- Ensures highly available & self-healing architecture
- Offers enterprise-grade reliability with built-in management tools
- Designed and optimized for .NET
NCache Kubernetes architecture for .NET, Java, and Node.js apps on AKS, EKS, GKE, and OpenShift.
Why NCache on Kubernetes?
Kubernetes has become a widely recognized standard for deploying and managing containerized applications. However, high-performance applications require a distributed caching layer that scales effortlessly while maintaining high availability.
- Elastic Scalability
- Dynamically scale caching nodes up or down depending on application workload.
- Kubernetes-native auto-scaling ensures that cache resources scale dynamically.
- Enterprise-Grade Reliability
- Self-healing architecture with automatic failover and recovery.
- Supports zero downtime deployments with rolling updates and pod restarts.
- Automated Management
- Kubernetes-native monitoring & control via the NCache Kubernetes Operator (Coming Soon).
- Automated provisioning, scaling, and license activation.
- Portability
- Ensures consistent deployments across cloud and on-prem Kubernetes environments.
- Deployable on any Kubernetes cluster, including AKS, EKS, GKE, OpenShift, and self-hosted clusters.
- Service Discovery
- NCache Discovery Service enables automatic detection of cache nodes without requiring static IPs.
- Clients connect dynamically to cache servers using Kubernetes DNS-based resolution.
Supports .NET, Java, and Microservices architectures.
NCache Kubernetes Architecture & Components
NCache is fully containerized and Kubernetes-native, which makes it an ideal choice for caching in cloud-native applications.
Key NCache Kubernetes Components
- NCache Discovery Service: A headless Kubernetes service that enables clients to dynamically locate NCache server Pods using DNS-based resolution.
- NCache Management & Monitoring Gateway: A dedicated gateway service that uses Ingress resources or LoadBalancers to provide secure external access for managing, monitoring, and configuring NCache clusters.
- NCache Kubernetes Operator (Coming Soon): A Kubernetes-native operator that automates cache deployment, scaling, license activation, and deactivation.
- Persistent Data Volumes (Optional): Configure persistent storage for specific caching scenarios data retention is required.
How NCache works in Kubernetes?
NCache is a distributed, in-memory caching solution that improves application performance by reducing database load and increasing response times. Its Kubernetes-native integration enables automated deployment, scaling, and self-healing.
Common Use Cases
- Cloud-Native Applications: Enhance the performance of containerized applications.
- Microservices & APIs: Enable stateful caching for microservices-based architectures.
- Session Management: Scales user sessions across pods by using a distributed store, ensuring no session loss occurs during Kubernetes pod recycling or Horizontal Pod Autoscaling (HPA) events.Scales user sessions across pods by using a distributed store, ensuring no session loss occurs during Kubernetes pod recycling or Horizontal Pod Autoscaling (HPA) events.
- Database Caching: Reduces database pressure by caching frequently accessed data in-memory, which allows microservices to maintain sub-millisecond response times under heavy load.
Supported Kubernetes Environments
NCache offers full support for major managed Kubernetes services, which allows enterprises to deploy a highly available, auto-scalable caching layer across public, private, and hybrid cloud environments.
- Efforless deployment and management within Azure.
- Integrate with Azure Monitor and Log Analytics for real-time insights.
- Full support for AWS IAM role-based access control (RBAC).
- Monitor cache performance using Amazon CloudWatch.
Google Kubernetes Engine (GKE)
- Utilize GCP-native IAM and Stackdriver Logging.
- Dynamically auto-scale caching resources.
- Deploy NCache in OpenShift clusters with full support for Operator-based deployments (Coming Soon).
- Integrate with OpenShift Service Mesh to improve inter-service communication.
How to Deploy NCache on Kubernetes?
Step 1: Install NCache in Your Kubernetes Cluster
- Download and apply the standard deployment.yaml and service.yaml manifests.
- Configure your caching topology (replicated, partitioned, etc.).
- Enable auto-scaling based on application traffic.
Step 2: Connect Your Applications to NCache
- Use NCache client libraries for .NET, Java, Node.js, and Python.
- Ensure high availability with distributed caching.
Step 3: Monitor & Optimize Performance
- Leverage built-in dashboards for real-time monitoring.
- Set up alerts and key metrics for cache health tracking.
Get Started with NCache for Kubernetes
Why Choose NCache?
What to Do Next?
Frequently Asked Questions (FAQ)
Yes, NCache is fully compatible with Horizontal Pod Autoscaling (HPA). When Kubernetes adds or removes pods based on CPU or memory usage, NCache provides PowerShell scripts that run on the new pods and automatically changes and updates the cluster membership in real-time, preventing data loss during scaling events.
NCache utilizes a Kubernetes Headless Service for peer-to-peer discovery. Client applications use DNS-based resolution to locate available cache nodes dynamically. This ensures that even if a Pod restarts and gets a new IP address, the client automatically reconnects without manual reconfiguration.
Yes, NCache works with any CNCF-certified Kubernetes distribution (including AKS, EKS, GKE, and OpenShift). For hybrid scenarios, NCache offers WAN Replication (Bridge) topology to synchronize cache data actively or passively between on-premises clusters and public cloud environments for disaster recovery.