OVH Community, votre nouvel espace communautaire.

[sdk] Ajout d'un vCPU sur une VM


Math33
28/10/2013, 01h54
Hello,

Ta limitation semble correspondre à vSphere 4.1. En passant sur 5.0, tu pourras déjà atteindre les 32 vCPUs par VM, encore davantage en 5.1

Tu peux donc facilement mettre 32 vCPUs sur 5.0, avec par exemple 2 sockets de 8 coeurs chacun.

dbigand
27/10/2013, 12h03
Bonjour,

Sur le PCC on est limité à 8 core et 1 cpu pour une machine.

Y a t'il un moyen d'ajouter d'autres CPU avec plusieurs core ?


Cdlt

dougyz
08/01/2013, 14h38
Salut superkikim,

L'idée était que si d'aventure les hosts que j'avait ne permettait pas de gérer convenablement un surcharge (pic de trafic), un host supplémentaire pour qqs heures aurait pu régler le problème.

superkikim
08/01/2013, 13h54
Salut Dougyz. Tout est possible, mais.... On est quand même dans un environnement verrouillé par OVH. Donc je doute que tu puisses ajouter tes propres hosts. Du coup, je vois pas trop l'intérêt d'un tel script dans l'environnement PCC.

dougyz
26/10/2012, 15h43
Bonjour Francois

Est il possible d'ajouter des hosts par script un petit peut de la même manière ?

Merci

floiseau
06/06/2012, 12h32
Bonjour,

Voici un bout de script qui permet d'ajouter un nombre de vCPU à une VM.
Ce script prend en compte l'état de la VM et si la VM a le CPU hot Add enabled en cas d'état powered On.

Le retour :

Code:
:[~]$ perl vm.pl
Connecting
Connected
Getting Datacenter view
Got Datacenter View
vm-test-vcpu uuid is => 4223ef75-7367-baaf-225f-631baa506923
VM is CPU Hot Add enabled, going ahead
VM state is poweredOn
Task started
Waiting for task to finish on vcenter...
Disconnected
Le code :
Code:
print "Getting Datacenter view  \n";
my $DatacenterView  = Vim::find_entity_view(
    'view_type' => 'Datacenter',
    'filter' => {
            'name' => 'pcc-XXX-XXX-XXX-XXX_Datacenter1'} );
!$DatacenterView and die('Failed to get DatacenterView');
print "Got Datacenter View\n";


my $VMViews  = Vim::find_entity_views(
       'view_type'    => 'VirtualMachine',
       'begin_entity' => $DatacenterView ,
       'filter'       => {'name' => 'vm-test-vcpu'}
);
!$VMView and die('Failed to get VMViews');

# Choisir donc le nombre. Attention à la license utilisée. 
my $numCPU = 7;


foreach my $VMView (@{ $VMViews })
{
    print $VMView->name . " uuid is => " . $VMView->summary->config->uuid . "\n";
    if ($VMView->summary->runtime->powerState->{'val'} eq "poweredOn" )
    {
        if( $VMView->config->cpuHotAddEnabled)
        {
            print "VM is CPU Hot Add enabled, going ahead \n";
        }
        else
        {
            Util::disconnect();
            die "VM is " . $VMView->summary->runtime->powerState->{'val'} ." and CPU hot Add is not enabled. Exiting\n";
        }
    }   
    print "VM state is " . $VMView->summary->runtime->powerState->{'val'} . "\n";
    
    my $VirtualMachineConfigSpec = VirtualMachineConfigSpec->new(
        'numCPUs' => $numCPU,
    ) ; 
    
    my $Task;
    eval{$Task = $VMView->ReconfigVM_Task(
            'spec' => $VirtualMachineConfigSpec
        );
    };
    if ($@)
    {
        Util::disconnect();
        die ("Error while reconfiguring VM : " , $@);
    }
    print "Task started \n";

    my $finished;
    my $TaskView = Vim::get_view('mo_ref' => $Task);
    while (!defined $finished)
    {
        $TaskView->ViewBase::update_view_data();
        my $Info = $TaskView->info;
        if ($Info->state->val eq 'success')
        {
            print "Ok \n";
            $finished = 1;
        }
        elsif ($Info->state->val eq 'error')
        {
            Util::disconnect();
            die "Stop waiting, got an error";
        }
        else
        {
            print "Waiting for task to finish on vcenter...\n";
            sleep 3;
        }
    }
}

Util::disconnect();
print "Disconnected \n";