Use a custom scheduler or a scheduler extender. First, ensure the Kubernetes Metrics Server is running to collect real-time memory data from the nodes. Then, either modify the default scheduler or/ create a custom one that checks the node’s memory usage before placing new pods. If If the memory usage is over 50%, the scheduler should block new pods from being scheduled, even if there are still available resources based on the pod's requests. Alternatively, you can Also set up Prometheus to monitor memory usage and trigger alerts or actions when a node hits the threshold, preventing new pod placements. This approach should ig.