SOLVED Kubernetes loads only one thread up to 100% or two threads totaling 100%

infoman

Dabbler
Joined
Nov 13, 2023
Messages
11
Безымянный111.png


I tried different settings, but when creating containers with heavy installations, either only one thread is loaded, or two with a total load of 100%. No distribution among other streams. CPU Limit = 16000. Maybe someone knows how to configure Kubernetes so that it spreads the load across all threads
 

Heracles

Wizard
Joined
Feb 2, 2018
Messages
1,401
Kubernetes can not turn a single thread process to a multi-thread one... There is a reason msiexec can install only 1 thing at a time...
 

infoman

Dabbler
Joined
Nov 13, 2023
Messages
11
Kubernetes can not turn a single thread process to a multi-thread one... There is a reason msiexec can install only 1 thing at a time...
Then why does Kubernetes successfully decompose a single msiexec process into two threads? but can't decompose it into 16 threads?

n addition, in a full-fledged Windows virtual machine on this computer, the installation of exactly the same program is successfully distributed across all threads.

I get the impression that the process cannot go beyond one processor core, my processor has 8 cores, 16 threads, but why does Windows know how to go beyond these limits, but kubernetes no?
 
Last edited:

Heracles

Wizard
Joined
Feb 2, 2018
Messages
1,401
Then why does Kubernetes successfully decompose a single msiexec process into two threads?
It did not. It started two independent single threads.

Also, Windows is a terrible host for workload like Kubernetes. Microsoft themselves don't use it. They bought flatcar Linux for that, which is a distro meant specifically to run Kubernetes and nothing else.
I get the impression that the process cannot go beyond one processor core
There are million ways to enforce such a limitation. But here, you are in a TrueNAS forum. Neither Windows nor Kubernetes...
 

infoman

Dabbler
Joined
Nov 13, 2023
Messages
11
It did not. It started two independent single threads.

Also, Windows is a terrible host for workload like Kubernetes. Microsoft themselves don't use it. They bought flatcar Linux for that, which is a distro meant specifically to run Kubernetes and nothing else.

There are million ways to enforce such a limitation. But here, you are in a TrueNAS forum. Neither Windows nor Kubernetes...
then why can't it run 10 independent single threads? and why in a virtual machine the same process is successfully split into many threads? I understand that this is not a question for TrueNas, but perhaps you know the answer?

In addition, when I start this application, 2 folders are created in the docker container; in one of them, a configuration file is created; this file contains some settings for launching the application, but not all. For example, there is no CPU Limit. But there is a strange parameter CPU Shares = 2, can this parameter affect the load of threads/cores? and if so, where can I set this parameter? and in general, where does Kubernetes store application launch parameters?
Безымянный2222.png

Безымянный3333.png


I requested container details:
k3s kubectl get pod Wine-docker-ix-chart-98c67b8d-jk87p --output=yaml --namespace=ix-wine-docker

but there is no CPU Limit in the properties, although I set this property = 16000m, I tried setting other values, but this property is not displayed in the pod properties:

spec:
containers:
- env:
- name: RDP_SERVER
value: "yes"
- name: USER_HOME
value: /mnt/wine
- name: USER_UID
value: "568"
image: scottyhardy/docker-wine:latest
imagePullPolicy: IfNotPresent
name: ix-chart
resources:
limits:
amd.com/gpu: "1"
gpu.intel.com/i915: "0"
nvidia.com/gpu: "0"
requests:
amd.com/gpu: "1"
gpu.intel.com/i915: "0"
nvidia.com/gpu: "0"
 
Last edited:

infoman

Dabbler
Joined
Nov 13, 2023
Messages
11
Probably the topic can be closed, I think the reason is wine, the installation program that I run is more designed for windows 10 and older, but the wine shell has the signature of windows 7. Tests have shown that, for example, the 7z stress test uses all the cores inside this container. In addition, I got the program I needed to work without installation - to do this, I simply install this program in a virtual machine, and then move the folder with the installed program to the container space and launch it from there. The wine is amazing, there are no problems with startup and I managed to save 40gb of space and 8GB of RAM that a virtual machine would have occupied:cool:!
Безымянный444444.png
 
Top