码字的协同办公还好说,码代码的该如何协同?

百家 作者:微软科技 2020-02-29 05:56:39

(本文阅读时间:9分钟)


在疫情防控和隔离的要求下,一时间大家纷纷开始通过远程方式进行协同办公
洗个头,画个妆,美美得在视频会议中露脸,你就是全屏幕 zui 靓的仔
左手茶杯,右手鼠标,快速处理完邮件,可以继续陪着孩子上网课了
IM 软件里交流几句,文档中这里那里改几下,今天的工作快速搞定
各类解决方案大放异彩,满足了几乎绝大多数信息工作者的办公需求
特殊时期,这就是多少人的日常……

但是开发者们写代码的工作该怎么协同?不用担心,大家用的所有远程办公工具和服务都是他们开发创作出来的,难道他们会没有考虑过自己的远程工作和协同需求!?

这一切,首先要从 DevOps 说起。

DevOps,搭建你的研发协同高速路

说起开发协同,一定要提到 DevOps。作为一种流行的软件开发实践,很多人对 DevOps 已经很熟悉了。通过将人员、流程和方法连接在一起来提供持续价值,DevOps 可以促进开发与运维间的协作,从而更快速、可靠地交付软件。

有数据统计发现:对于 DevOps 高成熟度团队,软件的部署频率平均可提升 46 倍,变更效率可提升 2,555 倍,而变更失败率可降低 7 倍,遇到问题后的修复速度可提高 2,604 倍!缩短上市时间,适应市场和竞争,保持系统稳定性和可靠性,缩短平均恢复时间……DevOps 带来如此多的好处,这样的技能谁不想要!

所以很多企业早就开始实行 DevOps。然而,很多企业的 DevOps 研发协作系统都搭建在企业内部,外部无法访问。因而在目前的疫情情况下,由于员工分布在不同区域,不同的网络情况,为了远程协同工作,更需要一套面向互联网的,安全加固的研发协作系统。

作为研发团队的协同工作工具以及代码版本管理平台,Azure DevOps Server 提供了 Git 模式的版本管理、任务看板管理、测试管理甚至自动化构建等功能,是研发团队的高效沟通协作平台。该解决方案最大的特点在于“一套平台,全面的 DevOps 功能”,并且所有数据均保存在 SQL Server 数据库中,疫情结束后也能方便地将数据库文件迁移到公司内部数据中心,挂接在本地数据中心的 Azure DevOps Server 上继续使用。

本文,我们将手把手指导大家如何基于 Azure DevOps Server,利用负载均衡器等安全加固功能,实现面向互联网的协作使用,并且支持在未来无缝迁移到企业内部数据中心,或和已有 Azure DevOps 合并,借此保障数据完整性,助力企业搭建研发协调高速路。

01

目标和需求

在云端部署 Azure DevOps Server 并实现基于互联网的异地使用,要综合考虑访问的便捷性和安全性。

  • 便捷性:基于互联网的访问;

  • 安全性:确保安全性,作为最终用户,必须通过认证才可以使用;作为 Azure DevOps Server 系统管理员,通过跳板机做管控;坚决不把 Azure DevOps Server 直接暴露在互联网上;

  • 迁移方便性:待疫情结束,所有的数据可以无缝迁移到内部数据中心,直接使用。

02

操作步骤

Azure DevOps Server 分为 Web Server 和数据库 Server,分别应用微软 IIS 和 SQL Server。最新版的 Azure DevOps Server 2019 建议使用 SQL Server 和 Windows Server 2016。下文将详细介绍如何实现云端部署:

1.新建虚拟机作为 Azure DevOps 服务器(带 SQL Server 的 Windows 虚拟机)

对于小规模部署(100人以下),可以直接部署在一台 Windows Server 上。此时最方便的模式是直接在 Azure 中选择一台带 SQL Server 的虚拟机(推荐运行 SQL Server 2017 标准版的 Windows Server 2016 镜像)。如下,在 Azure 门户中新建虚拟机,并选择如下的虚拟机镜像:


图1:选择SQL Server虚拟机,满足Azure DevOps的操作系统和数据库需要

在虚拟机的配置方面,建议选择 8 核 CPU,32GB 以上内存的配置,如 D8S_V3。对外公共端口,因为要对外提供 Http 服务,同时要允许管理员远程登陆来访问,所以保留 Http(80) 和 RDP (3389) 端口。

 图2:允许Http和RDP连接

为了保证安全性,本机 SQL Server 只允许本地使用,不允许对外提供连接。所以在 SQL Server 设置页面上,SQL 连接请选择“本地”,其他设置保留默认值:

图3:SQL Server只允许本地使用,提高安全性

2.远程登陆到虚拟机,安装配置 Azure DevOps

虚拟机服务器建立完毕以后,远程登录到 Windows Server,选择在线安装 Azure DevOps Server。在线下载链接:https://visualstudio.microsoft.com/zh-hans/downloads/)


图4:下载Azure DevOps Server安装介绍

下载后一路选择“下一步”,直接安装 Azure DevOps  Server。默认情况下,我们选择的 90 天试用版功能没有任何限制,完全可以满足临时使用需要。随后执行安装文件并开始安装 Azure DevOps Server。

图5:安装Azure DevOps Server

一路“下一步”,到达语言选择部分,这里默认选择了英文,我们可以根据习惯选择“简体中文”。

注意:英文始终会默认安装。即使这里只选择了“简体中文”,后续用户使用时候,依然可以通过个人设置切换英文和中文。


图6:选择Azure DevOps Server语言

随后需要选择数据库,此处请“Use an existing SQL Server Instance”并配置使用我们本机的数据库。

接下来不要选择配置“Search”并继续,完成 Azure DevOps Server 的安装和配置。

最后在外部打开浏览器,输入 http://[DevOpsServer 的IP地址],访问 Azure DevOps。如果出现如下界面,则说明 Azure DevOps 已经配置完成,可以对外提供服务了。


图7:Azure DevOps的配置首页
03

安全加固

目前为止,我们的 Azure DevOps Server 是直接部署在互联网上的,暴露了公网 IP 地址以及 http 和 RDP 端口,这样并不安全。例如可能会遭遇暴力破解密码、DDoS攻击等。是否可以把基本用户使用的 http 地址和管理员使用的 RDP 地址分开,分别提供不同 IP 地址,并关闭这台服务器的公网 IP?

我们可以借助 Azure 负载均衡器达到这个效果大家可能奇怪,后台只有一台机器,用负载均衡器做什么?的确,这里利用的不是负载均衡本身的功能,而是其“灵活的 NAT 规则可实现更高的安全性”。利用负载均衡器提供公网 IP 地址,只对外提供 http 服务;而后台的 Azure DevOps Server 则会关闭公网 IP 地址,从而减少暴露,提高安全性。

在 Azure 门户新建一个 Load Balancer 服务,选择“基本”版即可:

图8:配置基本版Load Balancer

随后添加后端池,连接 Azure DevOps:

图9:配置负载均衡器连接后端DevOps服务器

至此负载均衡器已创建完成,未来,这个负载均衡器将是唯一直接暴露在互联网上的资源。随后我们需要配置“入站 NAT 规则”来实现 http 服务的映射。如下,为服务选择 Http,端口选择为 80:


图10:配置负载均衡器映射DevOps服务

完成上述操作后,我们就可以直接用浏览器访问负载均衡器的公共 IP 地址,实现 Azure DevOps 的访问。甚至还可以取消 Azure DevOps Server 本身的公共 IP 地址,使其不再直接暴露在互联网上,进而提高安全性。而系统管理员则可以通过(同一个虚拟网络中的)跳板机直接以 RDP 方式访问 Azure DevOps Server。


整个协同研发环境的搭建过程就是这样。本文致力于快速帮助各位开发者在 Azure 中搭建 DevOps Server 虚拟机,并利用了 Azure 虚拟机、网络、负载均衡器等功能,可在确保安全性、便捷性的前提下借助互联网快速使用 Azure DevOps 进行协同工作。

有关 Azure DevOps 日常使用和维护的详细信息,还请参考 Azure DevOps 官方文档。(链接:https://docs.microsoft.com/zh-cn/azure/devops/server/admin/admin-quick-ref?view=azure-devops)

最后想要提醒大家:Azure DevOps Server 为企业客户提供了 90 天的完整功能试用版,欢迎点击【阅读原文】链接申请。


百万云资源,助力战“疫”

最后,我们还是要向各位安利微软技术助力“战疫”的开源项目,为了帮助企业在疫情期间及时高效地传递信息,我们组织技术专家基于 Azure 云原生技术搭建了“一站式防疫信息实时互动开源项目”,感兴趣的小伙伴,可以点击这里或下方推荐阅读,查阅项目地址。

同时,为帮助更多企业从中获益,同时也在本次战“疫”行动中共享更多力量,微软联合世纪互联还为企业提供了总价值三百万元的 Azure 云资源! 由于预算有限,每家企业限申请一次,先到先得。
欢迎扫描下方二维码,提交申请



扫描海报下方二维码,马上入群。


1
推荐阅读
微软“一站式防疫信息实时互动开源项目“正式发布!
远程销售开头难?销售大佬来破局!
关机 or 重启,解决电脑卡顿还有什么别的办法?
2
最新活动
重磅推荐丨微软 AI 商学院特辑


点击这里阅读原文

关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接