Azure Service Fabric学习资料整理

最新开始学习Azure Service Fabric,基本上就是微软下一代PaaS平台了,这里对学习资料做了一些整理

官方网站

开源项目

其他

Azure IoT学习资料整理

这里记录Azure IoT的一些学习材料

教程和文档

开源项目

远程桌面访问Azure上的Ubuntu服务器

首先要在Azure上建一个Ubuntu服务器,具体步骤本文略过。

  1. 用putty或者其他ssh工具连接到Azure上的Ubuntu服务器,目标主机的地址在Azure的管理门户里可以看到,国内Azure一般是个以chinacloudapp.cn结尾的地址,国际版Azure则是cloudapp.net。
  2. 运行sudo apt-get update,这个命令会保证所有的包都更新到最新版本。
  3. 运行sudo apt-get install ubuntu-desktop,这个命令会安装ubuntu桌面,中间某个地方提示你确认一下,点Y就可以继续。
  4. 现在Ubuntu桌面已经装上,但是在云上的服务器,没法通过本地的显示器来显示桌面,所以这时候要安装VNC server,命令是sudo apt-get install vnc4server 
  5. 运行vncserver,这时候会让你输入远程连接桌面的密码。
  6. 运行vncserver -kill :1
  7. 修改.vnc/xstartup
    !/bin/sh
    
    # Uncomment the following two lines for normal desktop:
    unset SESSION_MANAGER
    # exec /etc/X11/xinit/xinitrc
    /usr/bin/gnome-session &
    
    [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
    [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
    xsetroot -solid grey
    vncconfig -iconic &
    # x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
    # x-window-manager &
  8. http://tightvnc.com/download.php下载TightVNC,安装的时候,选择自定义安装,然后选择只安装TightVNC Viewer就可以。
  9. 把putty的连接session保存下来,然后修改Thunnel,增加3389和5001

image

image

为Azure SQL Database创建数据库账户

用Azure SQL Database的时候,很多人都会直接用默认的管理员账号来连接数据库,这是一个不好的实践,会有潜在的安全问题。由于SQL Management Studio对Azure SQL Database支持不完美,在第一次给数据库添加新用户这步必定会浪费无数时间,本文希望能帮你节省到这部分宝贵的时间。

首先,用SQL Management Studio连接到数据库,如果报IP拒绝访问的错误,到管理门户上把当前IP加入白名单即可。连上Azure上的SQL Server后,按照下面步骤就可以添加新用户了。下面例子会创建数据库账户mydbuser,并让其成为dbo角色。

  1. 先进入master数据库,运行下面命令创建一个login
    CREATE LOGIN mydbuser WITH password = 'xxxxx'
  2. 然后切换到要添加用户的数据库,运行下面命令,创建一个user
    CREATE USER mydbuser FOR LOGIN mydbuser WITH DEFAULT_SCHEMA = dbo
  3. 用下面命令给user分配一个role
    EXEC sp_addrolemember 'db_owner', 'mydbuser'

现在这个user就有数据库的dbo权限了。

在不同Azure存储账号之前迁移虚拟机的vhd文件

对于Azure云的管理人员来说,把Azure虚拟机的vhd从一个存储账号迁移到另外一个存储账号是很常见的任务.。

在讨论如何把虚拟机的vhd从一个存储账号迁移到另外一个存储账号之前,我们先来回顾一下Azure虚拟机的一些基本概念。首先,对于Azure IaaS的虚拟机在设计上是把计算和存储是分离开的。在创建虚拟机的时候,所有持久vhd(系统盘,数据盘vhd文件)都是创建在Azure存储里,而不是直接在创建在HyperV的物理节点上,虚拟机启动的时候,会直接从存储账号里的vhd文件启动引导操作系统。位于存储的VHD本质上是一个blob文件,所以直接拥有存储的重要特性比如多副本,高可用等。其次,创建VM的时候,azure只允许把vhd创建在和虚拟机在同一个区域的存储里,这主要是为了保证到计算节点和存储之间的网络延迟尽可能小,从而保证虚拟机的IO性能。

在有了这些概念后,我们来看看实现把虚拟机的vhd文件从一个存储迁移到另外一个存储的一些技术流程。 Continue reading 在不同Azure存储账号之前迁移虚拟机的vhd文件

用命令行脚本发布Azure网站

用Visual Studio开发Azure网站,最省心的一点就是部署,只要在VS里项目工程里右键找到Publish一点,代码就会被打包直接部署到Azure上,可谓非常方便。其实,用命令行脚本来实现自动部署也是一样容易的,这边文章主要介绍如果在命令实现自动部署Azure网站的自动化脚本。 Continue reading 用命令行脚本发布Azure网站

Azure Media Services Explorer连接中国版Azure

有做过Azure Media Service开发朋友一定有这样的体会:Azure的管理门户里对Media Service的管理能力太弱了,很多常见的基本操作都需要通过API才能完成。Azure Media Service Explorer便是针对Azure管理门户Media Service种种限制的一个增强工具,让管理人员很容易的就能完成常见的media service任务,比如上传asset,视频转码,对视频语音识别生成字幕。官方下载地址在这里,详细的介绍可以看微软Azure官方博客的这篇博文

现在问题来了,如果用Azure Media Services Explorers Tool连接到中国区Azure,来管理在中国区Azure里建的账号呢?其实Azure Media Services Explorers Tool已经考虑到这点了,只是没有文档告诉大家应该怎么做,下面便是具体教程:

Continue reading Azure Media Services Explorer连接中国版Azure

Azure全球数据中心的IP地址段

微软的Azure现有十五个数据中心(2014.8月统计),当用户在Azure里创建计算资源,存储,SQL数据库等等服务的时候,用户都会得到一个唯一的一个二级域名DNS名字,比如foo.cloudapp.net或者bar.database.windows.net之类的。这些DNS都会从微软自己的一个IP池里随机分配以及共享IP。

有没有办法知道微软的IP池里在每个区域里的IP段的范围呢?有的,从http://www.microsoft.com/en-us/download/details.aspx?id=41653下载。等等,没有中国区的IP段?好吧,中国区是世纪互联运营的,需要在单独下载一次,http://www.microsoft.com/en-us/download/details.aspx?id=42064

2014-12-29更新:今天发现AWS在其公网上公布了自己的IP段,可以从这个官网地址下载,下下来后是一个json文件的格式,用代码解析起来也很方便。

最佳实践

如果您有一个安全上的或者应用层面上的业务需求,一定要知道Azure数据中心的IP段,才能实现,您不妨研究一下如下Azure的几个功能,也许可以从另外一个方面解决您的需求

  • 固定IP(Reserved VIP)

参考材料