Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

minio tenant from operator shows insufficient cpu, but cpu is available #1975

Closed
manju-rn opened this issue Feb 7, 2024 · 1 comment
Closed

Comments

@manju-rn
Copy link

manju-rn commented Feb 7, 2024

Expected Behavior

Minio tenant should get created when doing from operator - via UI

Current Behavior

The stateful set pod of minio fails with following error

manju@k8s:~$ k -n minio1-ns get pods
NAME                                READY   STATUS    RESTARTS   AGE
minio2-pool-0-0                     0/2     Pending   0          4m9s

manju@k8s:~$ k -n minio1-ns describe pod/minio2-pool-0-0
...
Events:
  Type     Reason            Age   From               Message
  ----     ------            ----  ----               -------
  Warning  FailedScheduling  75s   default-scheduler  0/1 nodes are available: 1 Insufficient cpu. preemption: 0/1 nodes are available: 1 No preemption victims found for incoming pod..

but checking the node details (single node cluster), it has sufficient cpu

manju@k8s:~$ k top nodes
NAME   CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%
k8s    666m         16%    4292Mi          17%

Your Environment

  • microk8s single node cluster.
  • Minio operator is running in the cluster with 1 tenant already running successfully
@harshavardhana harshavardhana transferred this issue from minio/minio Feb 7, 2024
@manju-rn
Copy link
Author

manju-rn commented Feb 7, 2024

Realized that Allocated CPU requests was already at 97% hence the new Tenant was not scheduling.
However, is there a way to provide "lesser" value during tenant creation - like 100m? Currently the UI only allow whole number as a CPU, but it will be far more flexible to provide discreet values as kubernetes does allow

image

Allocated resources:
  (Total limits may be over 100 percent, i.e., overcommitted.)
  Resource           Requests      Limits
  --------           --------      ------
  cpu                3900m (97%)   1800m (45%)

I have currently solved this by going to the edit option in UI which shows the YAML file and changed the cpu value from whole number like 1 or 2 (representing absolute CPU cores - 1 CPU - 1000m) to a lessor value like 250m (25% of 1 CPU). This provides more flexibility in assigning computation resources. As my current testing needs only involves around 20m to 100m so wasting 1 full CPU (1000m) bounded by this request is not required and affects my k8s node ability to schedule more pods

 resources:
	requests:
	cpu: 250m
	memory: 2G

@manju-rn manju-rn closed this as completed Mar 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant