[pve-devel] [PATCH container 2/7] status: add pool usage fields
Fabian Grünbichler
f.gruenbichler at proxmox.com
Mon Apr 15 11:32:01 CEST 2024
On April 11, 2024 11:28 am, Wolfgang Bumiller wrote:
> On Wed, Apr 10, 2024 at 03:13:00PM +0200, Fabian Grünbichler wrote:
>> these are similar to existing ones, but with slightly different semantics.
>>
>> Signed-off-by: Fabian Grünbichler <f.gruenbichler at proxmox.com>
>> ---
>> src/PVE/LXC.pm | 29 +++++++++++++++++++++++++++++
>> 1 file changed, 29 insertions(+)
>>
>> diff --git a/src/PVE/LXC.pm b/src/PVE/LXC.pm
>> index 88a9d6f..78c0e18 100644
>> --- a/src/PVE/LXC.pm
>> +++ b/src/PVE/LXC.pm
>> @@ -138,6 +138,18 @@ our $vmstatus_return_properties = {
>> optional => 1,
>> renderer => 'bytes',
>> },
>> + confmem => {
>
> Would it make sense, for easier reuse of code, to stick to the same
> naming as in user.cfg - `foo-config`, `foo-run` here?
then it would be inconsistent with the rest of the schema here (which is
directly exported into metrics, so we can't change it easily without
breaking a ton of stuff..).
>> + description => "Configured amount of memory (inc. swap), might be higher than 'maxmem'.",
>> + type => 'integer',
>> + optional => 1,
>> + renderer => 'bytes',
>> + },
>> + runmem => {
>> + description => "Currently configured amount of memory (inc. swap).",
>> + type => 'integer',
>> + optional => 1,
>> + renderer => 'bytes',
>> + },
>> maxdisk => {
>> description => "Root disk size in bytes.",
>> type => 'integer',
>> @@ -160,6 +172,16 @@ our $vmstatus_return_properties = {
>> type => 'number',
>> optional => 1,
>> },
>> + confcpus => {
>> + description => "Configured amount of CPUs, might be higher than 'cpus'.",
>> + type => 'integer',
>> + optional => 1,
>> + },
>> + runcpus => {
>> + description => "Currently used amount of CPUs.",
>> + type => 'integer',
>> + optional => 1,
>> + },
>> lock => {
>> description => "The current config lock, if any.",
>> type => 'string',
>> @@ -200,6 +222,7 @@ sub vmstatus {
>> my $conf = PVE::Cluster::cfs_read_file($cfspath) || {};
>>
>> $unprivileged->{$vmid} = $conf->{unprivileged};
>> + my $usage = PVE::LXC::Config->get_pool_usage($conf);
>>
>> $d->{name} = $conf->{'hostname'} || "CT$vmid";
>> $d->{name} =~ s/[\s]//g;
>> @@ -207,6 +230,9 @@ sub vmstatus {
>> $d->{cpus} = $conf->{cores} || $conf->{cpulimit};
>> $d->{cpus} = $cpucount if !$d->{cpus};
>>
>> + $d->{confcpus} = $usage->{cpu};
>> + $d->{runcpus} = $conf->{cores} || $cpucount;
>> +
>> $d->{tags} = $conf->{tags} if defined($conf->{tags});
>>
>> if ($d->{pid}) {
>> @@ -229,6 +255,9 @@ sub vmstatus {
>> $d->{maxmem} = ($conf->{memory}||512)*1024*1024;
>> $d->{maxswap} = ($conf->{swap}//0)*1024*1024;
>>
>> + $d->{confmem} = $usage->{mem};
>> + $d->{runmem} = $conf->{maxmem} + $conf->{swap};
>> +
>> $d->{uptime} = 0;
>> $d->{cpu} = 0;
>>
>> --
>> 2.39.2
>
More information about the pve-devel
mailing list