Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell Azure搜索集ReplicaCount by Automation图形运行手册_Powershell_Azure_Azure Cognitive Search_Azure Automation - Fatal编程技术网

Powershell Azure搜索集ReplicaCount by Automation图形运行手册

Powershell Azure搜索集ReplicaCount by Automation图形运行手册,powershell,azure,azure-cognitive-search,azure-automation,Powershell,Azure,Azure Cognitive Search,Azure Automation,Azure Search没有提供任何计划的扩展选项,所以我尝试通过自动化帐户进行扩展 我照做了,但并没有像我预期的那样奏效 未应用ReplicaCount=2参数的Set-AzureRmResource。实际上,它没有给出任何结果消息。我错过了什么 要重现我的问题,您可以在下面的链接导入我的runbook文件 将文本文件另存为AzureSearch-SetReplicaCount.graphrunbook,并将其导入到Automation account>添加runbook菜单。在评论之后,我制

Azure Search没有提供任何计划的扩展选项,所以我尝试通过自动化帐户进行扩展

我照做了,但并没有像我预期的那样奏效

未应用ReplicaCount=2参数的Set-AzureRmResource。实际上,它没有给出任何结果消息。我错过了什么

要重现我的问题,您可以在下面的链接导入我的runbook文件


将文本文件另存为AzureSearch-SetReplicaCount.graphrunbook,并将其导入到Automation account>添加runbook菜单。

在评论之后,我制作了PowerShell runbook

我上传了powershell源代码到下面的链接

让我附上代码如下

<# 
    .DESCRIPTION 
        Scale Azure Search ReplicaCount 
        AzSearch command reference; https://docs.microsoft.com/en-us/azure/search/search-manage-powershell 

    .NOTES 
        AUTHOR: Youngjae Kim 
        LASTEDIT: June 19, 2017 
#> 

Param( 
 [string]$SubscriptionId, 
 [string]$ResourceGroupName, 
 [string]$AzSearchResourceName, 
 [int]$InstanceCount = 1 
) 


# 1. Acquire Automation account 
$connectionName = "AzureRunAsConnection" 
try 
{ 
    # Get the connection "AzureRunAsConnection " 
    $servicePrincipalConnection=Get-AutomationConnection -Name $connectionName          

    "Logging in to Azure..." 
    Add-AzureRmAccount ` 
        -ServicePrincipal ` 
        -TenantId $servicePrincipalConnection.TenantId ` 
        -ApplicationId $servicePrincipalConnection.ApplicationId ` 
        -CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint  
} 
catch { 
    if (!$servicePrincipalConnection) 
    { 
        $ErrorMessage = "Connection $connectionName not found. You must have Automation account. Reference: https://docs.microsoft.com/en-us/azure/automation/automation-role-based-access-control" 
        throw $ErrorMessage 
    } else{ 
        Write-Error -Message $_.Exception 
        throw $_.Exception 
    } 
} 

# 2. Select subscription 
Select-AzureRmSubscription -SubscriptionId $SubscriptionId 

# 3. Specify Azure Search Resource 
$resource = Get-AzureRmResource ` 
    -ResourceType "Microsoft.Search/searchServices" ` 
    -ResourceGroupName $ResourceGroupName ` 
    -ResourceName $AzSearchResourceName ` 
    -ApiVersion 2015-08-19 
Write-Output ($resource) 

# 4. Scale your service up 
# Note that this will only work if you made a non "free" service 
# This command will not return until the operation is finished 
Write-Output ("Updating InstanceCount to " + $InstanceCount + ". This can take 15 minutes or more...") 
$resource.Properties.ReplicaCount = $InstanceCount 
$resource | Set-AzureRmResource -Force -Confirm:$false 

# 5. Finish 
Write-Output ("End of Process to set InstanceCount = " + $InstanceCount + " for " + $AzSearchResourceName) 

伙计,图表运行手册都是垃圾。在导入之前,您甚至无法知道它是做什么的。那么您是否手动尝试过您的命令?它能用吗?@4c74356b41//嗯,我还没有尝试使用原始PowerShell命令。也许我必须通过PS命令自动化来完成。只需在没有运行手册的情况下,从pc\笔记本电脑上尝试您的命令即可。看看它是否管用,从那里开始故障排除谢谢你的评论扩展Azure搜索服务不是即时的。更改副本计数后,您需要使用Get-AzureRmResource轮询搜索服务,直到其状态指示它处于运行状态而不是设置状态。我不知道如何在图表运行手册中做到这一点。我同意@4c74356b41-请先直接在PowerShell中尝试,如果不起作用,请告诉我们。