Azure PowerShell (12) 通过Azure PowerShell创建SSH登录的Linux VM

简介:

  《Windows Azure Platform 系列文章目录

 

  本章将介绍如何使用Azure PowerShell,创建SSH登录的Linux VM

 

  前提要求:

  1.安装Azure PowerShell

  2.准备好Linux SSH Key:

  Windows Azure Virtual Machine (25) 使用SSH登录Azure Linux虚拟机

 

  具体的PowerShell命令如下:

复制代码
#在弹出的界面中,输入Azure China用户名和密码
Add-AzureAccount -Environment AzureChinaCloud

#选择当前订阅名称
Select-AzureSubscription '[YourSubscriptionName]' -Current

#创建高级存储
New-AzureStorageAccount -StorageAccountName "[YourStorageAccountName]" -Location "China East" -Type "Premium_LRS" 

#云服务名称
$AzureCloud='[YourDNSName]'

#Upload the cert to the cloud service
$Cert = Add-AzureCertificate -ServiceName $AzureCloud -CertToDeploy "C:\myCert.pem"
 
#Get the thumbprint from the uploaded cert
$ThumbPrint = (Get-AzureCertificate -ServiceName $AzureCloud).Thumbprint
 
#The local user to create on the linux vm
$adminName = "azureuser"

#Create the ssh key to be placed in the vm during deployment (inside the specified user's home dir)
$sshkey = New-AzureSSHKey -PublicKey -Fingerprint $ThumbPrint -Path "/home/$adminName/.ssh/authorized_keys"

=================================================
#创建VM

$storageAccount = "[YourStorageAccountName]"

$vmName ="[YourVMName]"
$location = "China East"
$imageList = Get-AzureVMImage | where {$_.ImageName -like "*CentOS-66*"}
$imageName=$imageList[$imageList.Length -1 ].ImageName
$vmSize ="Standard_DS13"
$vnetName = '[YourVNetName]'
$IPAddress = '[YourPrivateIP]'
$SubnetNames = '[VNetSubnet]'

$OSDiskPath = "https://" + $storageAccount + ".blob.core.chinacloudapi.cn/vhds/" + $vmName + "_OS_P10.vhd"

$vm = New-AzureVMConfig -Name $vmName -ImageName $imageName -InstanceSize $vmSize -MediaLocation $OSDiskPath  -AvailabilitySetName 'DBAvbSet' 

Add-AzureProvisioningConfig -Linux -VM $vm -LinuxUser $adminName -NoSSHPassword -SSHPublicKeys $sshkey -NoSSHEndpoint

Set-AzureSubnet -SubnetNames $SubnetNames -VM $vm | Set-AzureStaticVNetIP -IPAddress $IPAddress 

New-AzureVM -ServiceName $AzureCloud -VM $VM -VNetName $vnetName -Location $location

##创建SSD磁盘
$vm = Get-AzureVM -ServiceName $AzureCloud -Name $vmName
$LunNo = 1
$path = "http://" + $storageAccount + ".blob.core.chinacloudapi.cn/vhds/" + "myDataDisk_" + $LunNo + "_P20.vhd"
$label = "Disk " + $LunNo
Add-AzureDataDisk -CreateNew -MediaLocation $path -DiskSizeInGB 500 -DiskLabel $label -LUN $LunNo -HostCaching None -VM $vm | Update-AzureVm
复制代码

 


本文转自Lei Zhang博客园博客,原文链接:http://www.cnblogs.com/threestone/p/6000824.html,如需转载请自行联系原作者

目录
相关文章
|
22天前
|
安全 Linux
Linux查看和剔除当前登录用户详细教程
Linux查看和剔除当前登录用户详细教程
20 0
Linux查看和剔除当前登录用户详细教程
|
28天前
|
机器学习/深度学习 存储 Linux
【机器学习 Azure Machine Learning】使用VS Code登录到Linux VM上 (Remote-SSH), 及可直接通过VS Code编辑VM中的文件
【机器学习 Azure Machine Learning】使用VS Code登录到Linux VM上 (Remote-SSH), 及可直接通过VS Code编辑VM中的文件
|
28天前
|
监控 安全 Ubuntu
在Linux中,如何进行SSH服务配置?
在Linux中,如何进行SSH服务配置?
|
22天前
|
Linux 网络安全
Linux开启ssh
Linux开启ssh
31 0
|
26天前
|
JavaScript Linux API
【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤
【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤
|
28天前
|
安全 Linux 网络安全
在Linux中,使用rsync同步数据时,假如采用的是ssh方式,并且目标机器的sshd端端并不是默认的22端口,该如何做?
在Linux中,使用rsync同步数据时,假如采用的是ssh方式,并且目标机器的sshd端端并不是默认的22端口,该如何做?
|
28天前
|
监控 安全 Linux
在Linux中,如何查看当前登录用户?
在Linux中,如何查看当前登录用户?
|
3月前
|
安全 Linux Shell
Linux中SSH命令介绍
Linux中SSH命令介绍
|
30天前
|
安全 Linux 网络安全
在Linux中,如何配置SSH以确保远程连接的安全?
在Linux中,如何配置SSH以确保远程连接的安全?