(三) 搭建Windows Azure Pack环境

1安装SQL SERVER 2012 服务器

为简单起见,本例直接使用了Azure提供的具有SQLServer的Win2012 Server镜像来做虚机。但是为了可以对外提供SQL相关服务,还需要做一些配置。

Power Shell VM Provisioning Script 如下

#common

$vnetName="waplab@sea2016"
# @SouthEast Asia

 

$cloudServiceName
=
"wapLabCloudService2016Feb"

$affinityGroupName
=
"southeastAsiaGroup"

$admin="vmadmin"

$pwd
=
"Qwer@2016"

 

$sizeLarge
=
"Large"
#Allowed values are 'ExtraSmall,Small,Medium,Large,ExtraLarge,A5,A6,A7,A8,A9

$sizeMedium
=
"Medium"

$sizeSmall
=
"Small"

 

#domain

$domainName="waplab"

$domainJoin="waplab.com"

$domainAdmin="vmadmin"

$domainAdminPwd="[Your Password]"

$domainOU="OU=AzureVMs,DC=waplab,DC=com"

 

 

 

 

$vmSqlName
=
"waplabSql"

$sqlImageName="bd507d3a70934695bc2128e3e5a255ba__RightImage-Windows-2012-x64-sqlsvr2012ent-v14.2"

$wapLabSubNet="ctrl"
#{ctrl, wapsubnet, sitesubnet, reservedsubnet}

 

$affGroupObj
=
Get-AzureAffinityGroup
-Name
$affinityGroupName
-ErrorAction
Ignore

 

if(!$affGroupObj)

{

New-AzureAffinityGroup
-Name
$affinityGroupName
-Location
$location

}

 

# Sql , 加入域

$vmSql
=
New-AzureVMConfig
-Name
$vmSqlName
-InstanceSize
$sizeMedium
-ImageName
$sqlImageName

$vmSql
|
Add-AzureProvisioningConfig
-WindowsDomain
-AdminUsername
$admin
-Password
$pwd
-Domain
$domainName `

-DomainUserName
$domainAdmin
-DomainPassword
$domainAdminPwd
-JoinDomain
$domainJoin `

-MachineObjectOU
$domainOU

$vmSql
|
Set-AzureSubnet
-SubnetNames
$wapLabSubNet

$vmSql
|
New-AzureVM
-ServiceName
$cloudServiceName
-AffinityGroup
$affinityGroupName
-vNetName
$vnetName

 

 

  1. 如果需要提供给公网的用户使用, 需要配置EndPoint:

在Azure的虚机列表中,打开waplabsql的Endpoint, 添加MSSQL的Endpoint,并将端口从1433(Public)映射为1433(Private),结果如下。

 

  1. 启用SQL Server的混合身份验证模式,并且重新设定sa账号的密码。

  2. 检查SQL configuration,启用tcp以及named pipeline
  3. 配置防火墙,添加Inbound Rule, 允许TCP 1433端口

完成上述配置后, 应该从公网和内网都可以使用该SQL Server了。 内网是指上面我们使用的虚拟网络。公网是指互联网上的任何机器,比如本人开发机。当然,从安全上考虑的话,应该增加IP限制或其他策略。本例中暂不考虑这些。

 

2安装WAP Express

本例中,重点是配置WAP 的Web Site Service服务。该服务需要WAP平台, Standalone模式的安装足够验证这个过程了。 如果读者希望了解完整的生产环境的WAP的安装, 请参考MSDN上的文章。

本例使用的是基于Azure 提供的Win2012 Server R2的镜像来做的安装。 关于如何获得Azure的VM Image,请参考附录B;

Power Shell VM Provisioning Scripts:

# Create Wap Express host

 

$imgName="a699494373c04fc0bc8f2bb1389d6106__Windows-Server-2012-R2-20160126-en.us-127GB.vhd"

$vnetName="waplab@sea2016"
# @SouthEast Asia

$wapLabSubNet="wapsubnet"
#{ctrl, wapsubnet, sitesubnet, reservedsubnet}

 

$cloudServiceName
=
"wapLabCloudService2016Feb"

$affinityGroupName
=
"southeastAsiaGroup"

$admin="vmadmin"

$pwd
=
"[Your Password]"

 

$sizeLarge
=
"Large"
#Allowed values are 'ExtraSmall,Small,Medium,Large,ExtraLarge,A5,A6,A7,A8,A9

$sizeMedium
=
"Medium"

$sizeSmall
=
"Small"

 

#domain

$domainName="waplab"

$domainJoin="waplab.com"

$domainAdmin="domainadmin"

$domainAdminPwd="[Your Password]"

$domainOU="OU=AzureVMs,DC=waplab,DC=com"
# 指定OU

 

 

$vmName
=
"wapexpress"

 

$vmWap
=
New-AzureVMConfig
-Name
$vmName
-InstanceSize
$sizeMedium
-ImageName
$imgName

$vmWap
|
Set-AzureSubnet
-SubnetNames
$wapLabSubNet

$vmWap
|
Add-AzureProvisioningConfig
-WindowsDomain
-AdminUsername
$admin
-Password
$pwd
-Domain
$domainName `

-DomainUserName
$domainAdmin
-DomainPassword
$domainAdminPwd
-JoinDomain
$domainJoin `

-MachineObjectOU
$domainOU

$vmWap
|
New-AzureVM
-ServiceName
$cloudServiceName
-AffinityGroup
$affinityGroupName
-vNetName
$vnetName

 

安装完成后,做一些小动作:

  • 去除IE ESC
  • 去除RDP限制
  • 开启防火墙的ICMP,使该机可以Ping通

由于后面的虚机创建过程,与此类似, 建议将该虚机做成可复用的镜像Image。关于如何制作定制的VM Image, 请参考附录C。

下面是安装Windows Azure Pack的过程。

  1. 使用Windows Platform Installer 来找到Windows Azure Pack的Standalone安装程序

  1. 下载并开始安装

 

安装完成后, 将会包括上图中的列举的服务。

  1. 安装完成后, 打开配置站点,并配置SQL Server的连接

配置站点的端口是30101,通常访问地址为 https://localhost:30101/; 打开的时候会有证书的问题,目前忽略即可: Continue to this web site

设置Database server Setup, 使用前面我们安装的SQL Server服务的名称。

如果SQL 连接不上, 请按照2.1检查配置是否都正常。

配置完成后, 下面这些服务将可用。

  1. 打开管理员门户站点,使用vmadmin 账号登陆

登录后,会出现使用向导页面。

 

  1. 添加Hosting Plan

目前只有SQL Server服务可用,

 

配置好后, 打开刚创建好的 Plan

后面, 我们配置好Web Site Service后, 还需要回到这个页面, 在Plan Services中添加我们的Web Site Service.

 

  1. 添加一个Tenant用户 : newbee@waplab.com,并给新用户指定Plan

 

  1. 打开Tenant的门户站点, 使用newbee@waplab.com账号登陆, 可以登录成功

关于Tenant,Hosting Plan,请参考附录A中的相关概念解释

在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(三)的更多相关文章

  1. 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(一)

    (一)前言 本文主要介绍了实践部署AzurePack的Website Cloud的过程.在部署之前, 首先要对AzurePack有个基本的了解.   Azure Pack是微软的私有云方案,具有弹性. ...

  2. 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(四)

    (四)搭建Website Cloud环境 1安装CONTROLLER主机 在开始安装Web site Cloud之前,读者应该对该服务的拓扑结构有个大概了解. 如图: Controller是非常重要的 ...

  3. 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(二)

    前言 (二)建立虚拟网络环境,以及域控和DNS服务器   1搭建虚拟网络环境 在Azure上创建虚拟网络.本例选择的是东南亚数据中心.后面在创建虚机的时候,也选择这个数据中心. VNet Name: ...

  4. 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(六)

    (六)在Website Cloud中添加site 1新建Website,并打开 使用前面创建的用户 newbee@waplab.com 登录租户Portal,新建一个website 新建完成后, 可以 ...

  5. 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(五)

    (五)注册Website Cloud 1 注册Website Cloud 添加Website Cloud   连接Website Cloud 注意, endpoint 是使用Management Se ...

  6. 在 Windows Azure 上部署预配置 Oracle VM

    Microsoft 和 Oracle 近期宣布建立战略合作伙伴关系,基于此,我们将通过 Windows Azure 镜像库推出多种常用的 Oracle 软件配置.即日起,客户可以在 Windows S ...

  7. 在Azure上部署IPv6的App通过IOS App Store审核

    随着中国企业出海Go Global,越来越多的用户开始在Global Azure部署自己的应用.由于对Global Azure功能和文档的不熟悉,使用过程中或多或少遇到了一些坑.事实上呢,这些并不是坑 ...

  8. Azure上部署FTP服务

    FTP是个比较复杂的协议,其协议分为控制层和数据层,工作模式分为主动和被动两种模式. 在默认的Active模式下其工作原理如下: 可以看到,客户端发起FTP的请求道服务器端,FTP的端口是21.用户在 ...

  9. Azure上部署Barracuda WAF集群 --- 2

    前面一篇文章讲了如何在Azure上部署Barracuda.这篇文章聊一聊如何配置Barracuda. License 向Barracuda的销售人员申请WAF的License.得到License后打开 ...

随机推荐

  1. 关于Visual Studio 未能加载各种Package包的解决方案

    问题: 打开Visual Studio 的时候,总提示未能加载相应的Package包,有时候还无法打开项目,各种提示 解决方案: 进入用户目录 C:\Users\用户名\AppData\Local\M ...

  2. JavaScript基础知识总结(三)

    JavaScript语法 七.循环语句 1.while 语法: while (exp) { //statements; } 说明:while (变量<=结束值) { 需执行的代码 } 例子: / ...

  3. js参数arguments的理解

    原文地址:js参数arguments的理解 对于函数的参数而言,如下例子 function say(name, msg){ alert(name + 'say' + msg); } say('xiao ...

  4. openresty 前端开发入门四之Redis篇

    这章主要演示怎么通过lua连接redis,并根据用户输入的key从redis获取value,并返回给用户 操作redis主要用到了lua-resty-redis库,代码可以在github上找得到 而且 ...

  5. 信息安全-1:python之playfair密码算法详解[原创]

    转发注明出处: http://www.cnblogs.com/0zcl/p/6105825.html 一.基本概念 古典密码是基于字符替换的密码.加密技术有:Caesar(恺撒)密码.Vigenere ...

  6. 真正的汉化-PowerDesigner 16.5 汉化

    一.背景 经常使用PowerDesigner,之前使用15版本,后来16出来后,就一直在使用16,不过一直是英文.一些同事对使用英文版总显示有些吃力. 遍寻百度.必应,都没有找到真正的针对版本16的汉 ...

  7. iOS系列教程 目录 (持续更新...)

      前言: 听说搞iOS的都是高富帅,身边妹子无数.咱也来玩玩.哈哈. 本篇所有内容使用的是XCode工具.Swift语言进行开发. 我现在也是学习阶段,每一篇内容都是经过自己实际编写完一遍之后,发现 ...

  8. RTP与RTCP协议介绍(转载)

    RTSP发起/终结流媒体.RTP传输流媒体数据 .RTCP对RTP进行控制,同步.RTP中没有连接的概念,本身并不能为按序传输数据包提供可靠的保证,也不提供流量控制和拥塞控制,这些都由RTCP来负责完 ...

  9. Javascript高级技巧

    上次整理了Ajax部分,这周看完了高级技巧部分,也整理下吧. 1.类型检测 使用Object.prototype.toString.call(obj)的方式. 因为无论typeof还是instance ...

  10. C#中实现并发的几种方法的性能测试

    C#中实现并发的几种方法的性能测试 0x00 起因 去年写的一个程序因为需要在局域网发送消息支持一些命令和简单数据的传输,所以写了一个C/S的通信模块.当时的做法很简单,服务端等待链接,有用户接入后开 ...