OSCAR尖峰開源技術研發(fā)創(chuàng)新獎名單發(fā)布及頒獎儀式
在云計算、大數據、人工智能等技術交織的科技時代,開源已變得無處不在。近年來,我國云計算,尤其私有云的發(fā)展勢頭迅猛。開源技術逐漸成為云計算發(fā)展的重要支撐,深刻影響著整個信息技術產業(yè)的發(fā)展格局。開源并不是技術,而是一種理念和思想。早在2015年,微軟公司CEO薩提亞·納德拉提出的“Microsoft Loves Linux”,刷新了大家對于微軟的認識。實際上微軟正在以前所未有的開放胸懷積極擁抱整個開源世界,為開發(fā)者創(chuàng)造理想的開發(fā)工具和開發(fā)環(huán)境。
微軟愛開源
從Windows 10操作系統原生支持Ubuntu到PowerShell和。Net Core開源,從SQL Server推出Linux版本,到可以面向不同操作系統、框架、語言、設備編程的Visual Studio開發(fā)工具。微軟正在以“支持、整合、貢獻、生態(tài)”策略為指引,全力以赴地加強在開源世界中的投入和貢獻。
作為微軟三大遠見的核心,微軟智能云Azure從底層基礎設施、容器、數據庫和中間件,乃至平臺框架、開發(fā)運維、應用程序等各個層次全面支持開源,打造了一個全面開放、靈活智能的云計算平臺。從全球到中國,Azure已經加入了對Red Hat Enterprise Linux、CentOS、SUSE Linux、UbuntuLinux、Kubernetes、 Cloud Foundry、FreeBSD、MySQL、PostgreSQL、Hadoop、Hive、Spark、Mesos等開源技術的官方支持。同時,在開發(fā)項目上,微軟也加入了對各大開源語言與框架的支持,如Java、Python、Go、Ruby等,都與。NET及C#有同樣充足的專業(yè)團隊維護。這些努力,旨在為全球用戶提供更多、更豐富的應用選擇,不管用戶偏好使用Windows Server、 Linux操作系統或是各種開源工具,都能在Azure上順利運行,并且獲得完整的知識產權保護及技術支持。在中國運行的Azure上,更有超過60%虛擬機運行各種開源應用。
為Java 開發(fā)者打造最優(yōu)的云端開發(fā)體驗
微軟愛開源,也愛Java。
通過在Visual Studio開發(fā)工具和微軟智能云Azure上的一系列努力,微軟正在從DevOps開發(fā)運維的各個角度,為Java開發(fā)者創(chuàng)造最好的開發(fā)體驗。
首先,微軟在開源跨平臺代碼編輯器Visual Studio Code上提供了一系列工具來支持Java,例如Red Hat支持Java語言插件,目前已經有超過300萬次的下載量。在GitHub上,微軟工程師也在持續(xù)不斷地貢獻代碼到支持Java語言的插件,在過去一年中就陸續(xù)推出了Java調試器、Java Test Runner 、Maven Explorer、Tomcat、CheckStyle等項目。
面向云計算時代的大勢所趨,微軟也在努力為Java開發(fā)者打造更好的上云工具。微軟提供的Java SDK開發(fā)包,允許開發(fā)者通過 Java 使用和管理微軟Azure平臺上的資源。Maven插件項目讓Java應用可以直接通過Maven插件部署到App Service和Azure Function等Azure服務上。目前微軟已經面向Visual Studio Code、Eclipse、IntelliJ等開發(fā)工具,提供了Azure App Service插件,最近還在Visual Studio Code中加入了針對Azure Functions的插件。
針對當前最流行的Java Web框架Spring,微軟專門推出了一系列的Spring Starters,方便開發(fā)者更輕松地將他們的Spring應用與Azure服務中的服務總線、存儲、Azure Active Directory、Azure Key Vault、Azure CosmosDB/Document DB 數據庫服務提供 Spring Data 支持。
為了進一步改善開發(fā)者在Azure上應用Java編程的便利性,在接下來的幾個月中,微軟將發(fā)布更多針對針對Spring、Gradle工具的新功能,還將在Visual Studio Code中發(fā)布Kubernetes插件,讓用戶更輕松地部署Java應用到Kubernetes微服務平臺并在本地調試。
從云到端的完整物聯網開發(fā)解決方案
面向物聯網應用,微軟智能云Azure提供了完善的IaaS, PaaS和SaaS云端服務和邊緣智能解決方案,廣泛涵蓋了從設備管理、數據分析、人工智能到業(yè)務展現的各個層次的需求。無論是初次接觸物聯網,還是經驗豐富的專業(yè)用戶,都能找到合適的工具和技術,打造端到端的完整開發(fā)體驗。
Azure IoT Edge:將云智能擴展到邊緣設備。Azure IoTEdge可實現混合云和物聯網解決方案,在跨平臺物聯網設備上直接無縫部署和運行人工智能、Azure 服務和自定義業(yè)務邏輯;赩isual Studio Code編輯器,微軟為開發(fā)者提供了支持多語言和多服務的無縫開發(fā)體驗,目前下載量已接近2萬次。
Azure IoT輕松診斷解決方案:端到端的物聯網診斷。只要在設備中集成AzureIoT 設備SDK,即可以獲得物聯網解決方案中端到端的診斷功能,讓開發(fā)者可以方便地診斷已連接設備和丟失的數據包、了解跨Azure云服務跟蹤設備消息、使用分析工具獲取設備端到云端的所有事件等。
Azure IoT 騰云之路與在線樹莓派模擬器。微軟準備了上百篇新手教程,幫助開發(fā)者在幾分鐘內將自己的設備連接至Azure智能云。這些教程囊括了500多種市面上主流的物聯網開發(fā)板,包括C, Python, Node, Java, C#等主流開發(fā)語言。此外還有進階教程,幫助開發(fā)者將已連上Azure的設備結合Azure智能云的其它功能,做進一步的設備管理、人工智能數據處理,數據可視化等功能。開發(fā)者沒有物理設備也沒關系,微軟提供了在線的樹莓派模擬器,幫助開發(fā)者跨出物聯網開發(fā)的第一步。
使用Visual Studio和Visual Studio Code管理物聯網服務和設備。為了給開發(fā)者提供無縫的開發(fā)體驗,微軟在最流行的開發(fā)工具Visual Studio和Visual Studio Code中提供了連接Azure IoT的插件,目前已經有超過8萬用戶下載使用。
使用 Azure IoT Devkit 物聯網開發(fā)套件進行快速物聯網項目開發(fā)。在去年9月的微軟Ignite大會上推出的Azure IoT DevKit開發(fā)套件,在一塊信用卡大小的開發(fā)板上集成了物聯網開發(fā)和評估所需的常見的傳感器、屏幕與安全芯片,用以幫助物聯網開發(fā)者迅速上手,而無需在硬件選型與連接上花費時間精力。依托Visual Studio Code,用戶可以使用Arduino代碼對設備端進行開發(fā),并方便地連接到Azure IoT和其它豐富的Azure服務。目前此開發(fā)套件已經成為微軟各項物聯網培訓和會議上所使用的首選開發(fā)套件。
Arduino 擴展。Visual Studio Code構建了 Arduino 擴展, 以滿足來自Arduino開發(fā)者和社區(qū)長期以來對代碼提示、項目創(chuàng)建、代碼片段、例程集成等功能的需求,還提供了Arduino IDE 中缺失的硬件調試。自2017年4月首次發(fā)布以來, 這項功能在VisualStudio Code市場上的下載量已超過13萬次,成為很多Arduino物聯網開發(fā)者首選的開發(fā)工具。
Azure長遠規(guī)劃:在云端為開源工具提供一等支持
越來越多的開發(fā)者希望使用成熟的開源工具來構建和操作大規(guī)模的云應用,因此微軟的長期目標是在Azure智能云平臺上為主流的開源工具提供一等支持。為此,微軟也在持續(xù)、積極地貢獻代碼到開源社區(qū)項目中,目前微軟智能云Azure正重點支持的項目包括Kubernetes、Jenkins、Ansible、Terraform等。
Kubernetes(K8S)是用于自動部署、擴展和管理容器化(containerized)應用程序的開源系統,也是目前主流的微服務與容器架構工具。隨著K8S的項目發(fā)起人Brenden Burns與主要貢獻者Gabe Monroy相繼加入微軟,K8S更成為微軟容器服務(Azure Kubernetes Service, AKS)的重要元素。微軟除了將K8S提供托管服務版本的AKS外,更宣示將在開源方面持續(xù)貢獻該項目,以及發(fā)展更豐富的開發(fā)、運維相關工具(包含Helm、Brigade、Draft等)與源代碼,同時也與Visual Studio Code進行深度集成。
Jenkins是一個非常受歡迎的開源自動化服務器,主要用于設置軟件項目持續(xù)集成和交付 (CI/CD)。Azure鏡像市場已經提供了Jenkins 解決方案模板,幫助用戶使用Azure 資源托管 Jenkins 部署或擴展現有的 Jenkins 配置,其最新功能不但允許用戶在虛擬機上運行Jenkins Agent,還能在Azure容器實例上運行Jenkins Agent。
另一個開源自動化產品Ansible主要用于自動執(zhí)行云預配、配置管理和應用程序部署。使用 Ansible 可預配虛擬機、容器和網絡,以及完成云基礎結構。 一方面,微軟直接貢獻代碼到GitHub上的Ansible開源項目,讓它能更好預配Azure的資源;同時也在Visual Studio Code里發(fā)布了Ansible插件,為Ansible Playbook的開發(fā)提供了很好的代碼智能提示、自動補全和本地、容器、遠端SSH、云端執(zhí)行的支持。
Hashicorp Terraform是一種用于預配和管理云基礎結構的開源工具,用于編寫描述云資源拓撲的配置文件中的基礎結構,例如虛擬機、存儲帳戶和網絡接口。在Terraform的Registry里里可以找到諸多Azure的模塊,其中一部分由微軟開發(fā),另一部分則直接由社區(qū)的愛好者們貢獻。
類似這樣由微軟開發(fā)團隊與開源社區(qū)共同努力打造的開源項目不勝枚舉。目前微軟有超過6000位工程師投入開源項目,9700多個開源組件被采用,發(fā)布開源項目超過3000個。微軟還在持續(xù)不斷地將過去閉源的項目逐漸開源,包含Service Fabric、Windows Container、Service Broker等,并不斷與廣大開發(fā)者社群一起貢獻更多開源項目。
繼2016年在 “章魚貓報告”中上榜GitHub貢獻最高的組織之后,微軟Visual Studio Code在2017年成為貢獻者最多的項目,一方面證明了開源社區(qū)對Visual Studio Code的喜愛,同時也證明了微軟實實在在地兌現了自己對于開源世界的承諾。
如今,數字化轉型已經成為擺在全球各地每一家企業(yè)、組織乃至政府部門面前的關鍵議題。數字化轉型帶來的不僅是更高效、更智能的生產力工具,也為企業(yè)和組織的業(yè)務模式、組織架構、技術平臺提出了新的要求。微軟開發(fā)平臺事業(yè)部全球資深副總裁潘正磊女士曾在2017年11月的微軟技術暨生態(tài)大會上表示:“開發(fā)者正在迎來最好的時代,市場、技術、業(yè)務需求的快速發(fā)展也為開發(fā)者提出了更高的要求和挑戰(zhàn)。希望微軟提供的技術、工具、平臺、服務,以及深厚的知識積累和實踐經驗,能幫助中國開發(fā)者不斷增強實力,決勝數字化轉型深水區(qū)。”