使用powershell

时间:2017-06-26 17:08:25

标签: postgresql powershell azure ubuntu azure-virtual-machine

我可以使用azure中的powershell脚本创建ubuntu虚拟机。 但我想知道如何将postgresql数据库安装到新创建的azure的ubuntu虚拟机中,如果需要还可以安装其他软件。

我需要在powershell中帮助这样做。关于它的任何指导或建议。

2 个答案:

答案 0 :(得分:0)

不,您无法使用PowerShell在VM外部安装postgresql。您需要编写一个bash脚本来安装postgresql,如example:install_postgresql.sh

您可以使用Azure Custom Extension来执行此脚本。

您可以通过运行:

部署自定义脚本扩展
$RGName = '<resource-group-name>'
$VmName = '<vm-name>'
$Location = '<location>'

$ExtensionName = 'CustomScriptForLinux'
$Publisher = 'Microsoft.OSTCExtensions'
$Version = '<version>'

$PublicConf = '{
    "fileUris": ["<url>"],
    "commandToExecute": "<command>"
}'
$PrivateConf = '{
    "storageAccountName": "<storage-account-name>",
    "storageAccountKey": "<storage-account-key>"
}'

Set-AzureRmVMExtension -ResourceGroupName $RGName -VMName $VmName -Location $Location `
  -Name $ExtensionName -Publisher $Publisher `
  -ExtensionType $ExtensionName -TypeHandlerVersion $Version `
  -Settingstring $PublicConf -ProtectedSettingString $PrivateConf

您也可以使用此template来实现此目标。

New-AzureRmResourceGroupDeployment -Name shuitest -ResourceGroupName shui -TemplateFile "D:\azuredeploy.json"

答案 1 :(得分:0)

@Walter - MSFT

我尝试不执行Set-AzureVMExtension,它在一段时间后抛出错误,如下所示:

Set-AzureRmVMExtension:长时间运行操作失败,状态为“失败”。 ErrorCode:VMExtensionProvisioningError ErrorMessage:VM在处理扩展“Customscript”时报告失败。错误消息:“启用失败:执行命令失败:命令以退出状态= 127终止”。 StartTime:6/29/2017 10:09:39 PM 结束时间:6/29/2017 10:10:03 PM OperationID:9d615221-e656-4367-a5e8-57441a323a93 状态:失败 在E:\ Projects_EDrive \ Azure \ PowerShellScripts \ CentOSVM.ps1:95 char:1 + Set-AzureRmVMExtension -ResourceGroupName $ ResourceGroupName -VMName $ VMName -Lo ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     + CategoryInfo:CloseError:(:) [Set-AzureRmVMExtension],ComputeCloudException     + FullyQualifiedErrorId:Microsoft.Azure.Commands.Compute.SetAzureVMExtensionCommand

我手动连接到VM并尝试使用以下命令安装名为apt,apt-get,erlang(rabbitMQ消息代理依赖)的基本软件包:

sudo yum install apt sudo yum install apt-get sudo yum install erlang

它表示找不到任何软件包,看起来在创建的虚拟机上没有任何可用资源。