5

Próbuję zainstalować rozszerzenie diagnostyczne za pośrednictwem interfejsu API w istniejącej usłudze chmurowej Azure. Usługa Przetwarzania w Chmurze ma przypisany zarezerwowany adres IP. Otrzymuję "Zarezerwowanego adresu IP nie można dodawać, usuwać ani zmieniać podczas aktualizacji wdrożenia ani aktualizacji." Podczas wykonywania tej operacji przy użyciu ChangeConfigurationBySlot. Czy ktoś wie, jak to działa? Czy to pomyłka w API, czy robię coś nie tak?Nie można zaktualizować wdrożenia platformy Azure, gdy jest używany zarezerwowany adres IP

Oto odnośny fragment kodu:

var dep = client.Deployments.GetBySlot(resource.ServiceName, DeploymentSlot.Production); 
var serviceConfig = XElement.Parse(dep.Configuration, LoadOptions.SetBaseUri); 

var config = new DeploymentChangeConfigurationParameters(serviceConfig.ToString()) 
      { 
       ExtendedProperties = dep.ExtendedProperties, 
       Mode = DeploymentChangeConfigurationMode.Auto, 
       TreatWarningsAsError = false, 
       Configuration = serviceConfig.ToString(), 
       ExtensionConfiguration = new ExtensionConfiguration 
              { 
               AllRoles = new List<ExtensionConfiguration.Extension>(), 
               NamedRoles = extensionConfig 
              } 
      }; 
var result = client.Deployments.ChangeConfigurationBySlot(resource.ServiceName, DeploymentSlot.Production, config); 

Oto odnośny odcinek od konfiguracji usług cloud

<ServiceConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" serviceName="IS.Admin.Azure" osFamily="4" osVersion="*" schemaVersion="2014-06.2.4" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration"> 
    <Role name="IS.Admin"> 
… 
    </Role> 
    <NetworkConfiguration> 
    <VirtualNetworkSite name="is-prod" /> 
    <AddressAssignments> 
     <InstanceAddress roleName="IS.Admin"> 
     <Subnets> 
      <Subnet name="Subnet-1" /> 
     </Subnets> 
     </InstanceAddress> 
     <ReservedIPs> 
     <ReservedIP name="is-admin-rip" /> 
     </ReservedIPs> 
    </AddressAssignments> 
    </NetworkConfiguration> 
</ServiceConfiguration> 

Moja zmiana nie ma nic wspólnego ze zmianą/usuwanie/dodawanie Reserved IP. Wszelkie pomysły na aktualizację konfiguracji usługi?

+3

Drodzy anonimowy: dzięki za odwagę, starajcie się wyjaśnić, dlaczego? Pytanie zawiera mnóstwo szczegółów i nie mogłem znaleźć duplikatu zadawanego wcześniej pytania na ten temat. – Igorek

+0

Czy w nowej aktualizacji konfiguracji przypisujesz ten sam zarezerwowany adres IP i podsieć? Odpowiednią sekcją z konfiguracji usługi w chmurze jest aktualizacja lub początkowa konfiguracja usługi? – Peter

+0

w aktualizacji konfiguracji, stara konfiguracja jest ponownie stosowana i ma odniesienie do zarezerwowanego adresu IP, zgodnie z XML pokazanym w pytaniu – Igorek

Odpowiedz

0

Spróbuj wdrożyć wdrażanie i wykonanie zamiany vip. Zarezerwowane ips są przylepione do slotu, więc nie powinno to zakłócać twoich adresów IP w prod.

+0

Niestety, nie jest to opcja. Po prostu próbuję zmienić istniejące wdrożenie. Jest to cecha naszego produktu, umożliwiająca diagnostykę w istniejącym wdrożeniu. Brak dostępu do bazy kodów klienta w celu ponownego wdrożenia do wersji próbnej – Igorek

+0

Możesz zajrzeć do DeploymentDiagnosticManager: https://msdn.microsoft.com/en-us/library/azure/microsoft.windowsazure.diagnostics.management.deploymentdiagnosticmanager.aspx – tripdubroot

+0

@Devian DeploymentDiagnosticManager jest przestarzałe od wersji SDK 2.5. Jeśli to możliwe, należy unikać używania tego w celu wprowadzenia zmian w diagnostyce za pomocą kodu. –