0

とLBのルールの追加... :(Azureの外部ロードバランサ - 私は今、数日のためにAzureのロードバランサで、この問題を戦ってきたし、今でも私の髪を引っ張っていますPowerShellの

まず第一に、私ができる午前使用して問題なくアズールにログインする:だから

Login-AzureRmAccount 

を、ここでの状況は次のとおりです。

外部ロード・バランサ 複数のフロントエンドプールのユニークなパブリックIPが独自のプライベートと 複数のバックエンドプールのアドレスで フロントとバックエンドプールが1に一致する(VMのプール内で)IPアドレスを食べた:1 LBRule1 - FrontEndPool - フロントとバックエンド上> BackEndPoolポート80 LBRule1 - FrontEndPool - > BackEndPoolポート、フロントとバックエンドの443

80/443で別のLBRuleを追加しようとすると、既に使用されているため、できません。マイクロソフトのサポートに連絡するには、Powershell経由でのみ行うことができます(私はフローティングIPも有効/無効にしました)。私はこれを実行すると

# Variables 
$rg='ResourceGroupName' 
$location='west us' 
$lb=Get-AzureRmLoadBalancer -Name LBName -ResourceGroupName $rg 
$FEConfig=get-AzureRmLoadBalancerFrontendIpConfig -Name FEPoolName -LoadBalancer $lb 
$fec=Get-AzureRmLoadBalancerFrontendIpConfig -Name $FEConfig.Name -LoadBalancer $lb 
$BEPool=Get-AzureRmLoadBalancerBackendAddressPoolConfig -Name BEPoolName -LoadBalancer $lb 
$BEP=Get-AzureRmLoadBalancerBackendAddressPoolConfig -Name $BEPool.Name -LoadBalancer $lb 
$Probe=Get-AzureRmLoadBalancerProbeConfig -Name HTTP-80 -LoadBalancer $lb 
$Probe1=Get-AzureRmLoadBalancerProbeConfig -Name HTTPS-443 -LoadBalancer $lb 
$LBRule1=New-AzureRmLoadBalancerRuleConfig -Name APP-HTTP80 -FrontendIpConfigurationId $fec.Id -BackendAddressPoolId $BEP.Id -ProbeId $Probe.Id -Protocol Tcp -FrontendPort 80 -BackendPort 80 -EnableFloatingIP 
$LBRule2=New-AzureRmLoadBalancerRuleConfig -Name APP-HTTP443 -FrontendIpConfigurationId $fec.Id -BackendAddressPoolId $BEP.Id -ProbeId $Probe.Id -Protocol Tcp -FrontendPort 443 -BackendPort 443 -EnableFloatingIP 

# Command 
$lb.LoadBalancingRules.Add($LBRule1) 
$lb.LoadBalancingRules.Add($LBRule2) 

は今、何も起こりません:

は、ここに私のスクリプトです。 Powershell ISEを使用してこれを再生すると、変数に正しい情報が戻ってきますが、リソースマネージャーを見ると新しいプールは作成されません。

だから、私はいくつかの研究を行なったし、上記の設定と同じ変数を使用して、私は一緒にこれを入れない:

これは同じことを行い
New-AzureRmLoadBalancerRuleConfig -Name $FEConfig.Name -FrontendIpConfigurationId $fec.Id -BackendAddressPoolId $BEP.Id -ProbeId $Probe.Id -Protocol Tcp -FrontendPort 80 -BackendPort 80 -EnableFloatingIP 

、何も。エラーはありません。

私が紛失しているものは誰でも見ることができますか?

答えて

1

これはなぜ違いがあるのか​​わかりませんが、私はそれを修正しました(私は換気と質問を投稿する必要があったと思います)。かかわらず、私は、これは状況にある他の誰かの役に立てば幸い:

は、スクリプトの末尾に次の行を追加します。

# Variables 
$rg='ResourceGroupName' 
$location='west us' 
$lb=Get-AzureRmLoadBalancer -Name LBName -ResourceGroupName $rg 
$FEConfig=get-AzureRmLoadBalancerFrontendIpConfig -Name FEPoolName -LoadBalancer $lb 
$fec=Get-AzureRmLoadBalancerFrontendIpConfig -Name $FEConfig.Name -LoadBalancer $lb 
$BEPool=Get-AzureRmLoadBalancerBackendAddressPoolConfig -Name BEPoolName -LoadBalancer $lb 
$BEP=Get-AzureRmLoadBalancerBackendAddressPoolConfig -Name $BEPool.Name -LoadBalancer $lb 
$Probe=Get-AzureRmLoadBalancerProbeConfig -Name HTTP-80 -LoadBalancer $lb 
$Probe1=Get-AzureRmLoadBalancerProbeConfig -Name HTTPS-443 -LoadBalancer $lb 
$LBRule1=New-AzureRmLoadBalancerRuleConfig -Name APP-HTTP80 -FrontendIpConfigurationId $fec.Id -BackendAddressPoolId $BEP.Id -ProbeId $Probe.Id -Protocol Tcp -FrontendPort 80 -BackendPort 80 -EnableFloatingIP 
$LBRule2=New-AzureRmLoadBalancerRuleConfig -Name APP-HTTP443 -FrontendIpConfigurationId $fec.Id -BackendAddressPoolId $BEP.Id -ProbeId $Probe.Id -Protocol Tcp -FrontendPort 443 -BackendPort 443 -EnableFloatingIP 

# Command 
$lb.LoadBalancingRules.Add($LBRule1) 
$lb.LoadBalancingRules.Add($LBRule2) 
$Set=Set-AzureRmLoadBalancer -LoadBalancer $lb 

$Set=Set-AzureRmLoadBalancer -LoadBalancer $lb 

をだから、全体のことは次のようになります

さて、私はこれを解決することができてうれしいです、そして、これが他人を助けることを願っています。 :D

関連する問題