четверг, 31 июля 2008 г.

Проблемы с Update 2, из комментариев

В комментариях к посту про Проблемы с Update 2 есть интересная информация:
1: Опыт обновления VC 2.5 до Update 2

В общем в моем случае алгоритм был такой,
учитывая, что в моем случае повторная настройка и запуск в работу Update Manager (UM) с нуля не представлялась мне долгой и сложной:

1. Сносим UM, удаляем папку \Documents and Settings\All Users\Application Data\VMware\VMware Update Manager, после переустановки апдейты придется качать заново. Я также решил пересоздать базу UM с нуля. Благо, что процедура последующего заполнения базы и выкачивания патчей не очень долгая;
2. Ставим Update 2. При установке галочку Update Manager снимаем;
3. Проверяем, что все хорошо, VC работает, проблем с HA нет;
4. Ставим UM.
5. Настраиваем UM заново.

Ну и хочу напомнить про бэкап баз перед всем этим действом... :-)

Дмитрий Мощалков

2: Как быть с обновлением ESXi
@если флэшка получена от OEM - партнёра: FSC, HP, IBM и т.д. - нужно звонить партнёру и требовать "Service CD". С сайта VMware загружается только устанавливаемый ESX.
Если флэшка - "самопал" - то нужно устанавливать ЕSX на ней снова. Да, понимаю, все установки пропадут. Сам ищу возможность сохранить их.
Если буду знать больше напишу потом.

С Уважением
Ваш Аноним

Мне еще интересно, можно ли ESXi обновлять с помощью VMware Update Manager.

3: в VI 3.5 Update 2 для HA кластера меняется значение по умолчанию параметра “isolation response” на “leave powered on”. Это не затрагивает существующие на момент обновления HA кластера, а лишь вновь создаваемые после обновления.
Приводится скрипт для изменения этой настройки:

#!/usr/bin/perl -w
use strict;
use warnings;

use VMware::VIM2Runtime;
use VMware::VIRuntime;
use VMware::VILib;
use Getopt::Long;

my @options = ('powerOffOnIsolation');

my %opts = (
datacenter => {
type => "=s",
help => "VirtualCenter Datacenter Object name is required",
required => 1,
},
option => {
type => "=s",
variable => "option",
help => "powerOffOnIsolation",
required => 1},
value => {
type => "=s",
variable => "newValue",
help => "New powerOffOnIsolation response true or false",
required => 1},
operation => {
type => "=s",
variable => "operation",
help => "Operation type edit or add",
required => 1},
);


###################################################
# Get Command Line Options #
###################################################
Opts::add_options(%opts);
Opts::parse();
Opts::validate();
Util::connect();

my $option = Opts::get_option ('option');
my $value = Opts::get_option ('value');
my $operation = Opts::get_option ('operation');

#
# 0. We need to know which version we're working with
#
my $content = Vim::get_service_content();
my $version = $content->about->version;
#
# Here we can check whether we are connected to VC or to single host, ESX or GSX etc.
# http://www.vmware.com/support/developer/vc-sdk/visdk25pubs/ReferenceGuide/vim.AboutInfo.html


#
# 1. Find the datacenter
#
my $datacenter = Opts::get_option('datacenter');
my $datacenter_view =
Vim::find_entity_view(
view_type => 'Datacenter',
filter => { name => $datacenter }
);

#
# 2. Find all clusters that belong to those datacenters
#
my $cluster_views =
Vim::find_entity_views(
view_type => 'ClusterComputeResource',
begin_entity => $datacenter_view
);

#
# 3. Loop over all clusters
#
foreach my $cluster (@$cluster_views) {
my @vmConfigSpec;
my $clusterConfigSpec;

#
# Set the default value (2.5 only)
# http://www.vmware.com/support/developer/vc-sdk/visdk25pubs/ReferenceGuide/vim.ComputeResource.ConfigInfo.html

if $version < '2.5' { } foreach my $vm (@{Vim::find_entity_views(view_type => 'VirtualMachine', begin_entity => $cluster)}) {
printf "Changing powerOffOnIsolation for VM: %s\n", $vm->name;




my $newvmcfg;
if $version < '2.5' { $newvmcfg = ClusterDasVmConfigInfo->new (
key => $vm,
powerOffOnIsolation => $value,
restartPriority => $priority
);
} else {
#
# http://www.vmware.com/support/developer/vc-sdk/visdk25pubs/ReferenceGuide/vim.cluster.DasVmSettings.IsolationResponse.html
# http://www.vmware.com/support/developer/vc-sdk/visdk25pubs/ReferenceGuide/vim.cluster.DasVmSettings.RestartPriority.html
#
my $dasSettings = ClusterDasVmSettings->new( isolationResponse=>$value, restartPriority => $priority );

$newvmcfg = ClusterDasVmConfigInfo->new (
key => $vm,
dasSettings => $dasSettings
);
}

my $vmConfigSpec = ClusterDasVmConfigSpec->new (info => $newvmcfg, operation => ArrayUpdateOperation->new($operation));

push (@vmConfigSpec, $vmConfigSpec);
}

my $clusterConfigSpec = ClusterConfigSpec-> new ( dasVmConfigSpec=> \@vmConfigSpec );


}

$cluster2->ReconfigureCluster_Task(spec => $clusterConfigSpec, modify => 'true');
}

##############################
# Disconnect from the server #
##############################
Util::disconnect();



3 комментария:

  1. Сейчас дошли руки обновить и Converter Enterprise. Он у меня тоже стоит на отдельном сервере (см. мой предыдущий комментарий). И я тоже обновлял его «поверх» — то есть, не удалял предыдущую версию. И здесь тоже всё прошло без каких-либо проблем.

    Единственный интересный момент — когда установщик предложил выбрать порты для работы, я, естественно, захотел принять значения по умолчанию (80/443). Однако мне было сказано, что эти порты уже заняты. А кем они могут быть заняты, если на этом сервере ничего больше не установлено? Остановил службу Converter Enterprise (которая на тот момент ещё работала) — и всё прошло дальше, менять номера портов не пришлось.

    ОтветитьУдалить
  2. А вот и ответ на твой вопрос о том, можно ли обновлять ESXi с помощью Update Manager. Сегодня он закачал мне следующее:

    The number of updates downloaded (critical/total):
    ESX: 3/3

    ID: ESXe350-200807401-I-UG Impact: Critical Release date: 2008-07-25 Products: embeddedEsx 3.5.0 firmware update.

    ID: ESXe350-200807402-T-UG Impact: Critical Release date: 2008-07-25 Products: embeddedEsx 3.5.0 tools update.

    ID: ESXe350-200807403-C-UG Impact: Critical Release date: 2008-07-25 Products: embeddedEsx 3.5.0 vi client update.

    ОтветитьУдалить
  3. Артем, спасибо за информацию.

    ОтветитьУдалить