第二屆SpringOne平臺(tái)年度大會(huì)已隆重開幕。Spring團(tuán)隊(duì)改進(jìn)了其簽名框架,其對(duì)于Java平臺(tái)的重要性和Java本身一樣,而大會(huì)的主題演講也沒有令人失望。除了提及要幫助企業(yè)在Pivotal Cloud Foundry上實(shí)現(xiàn)標(biāo)準(zhǔn)化的責(zé)任外,Pivotal云研發(fā)副總裁Onsi Fakhouri還宣告了他們幫助企業(yè)轉(zhuǎn)型的使命。
對(duì)于Spring領(lǐng)域及Pivotal的幾十項(xiàng)重要公告,其中還包括他們聲稱的“Pivotal歷史上最重要的產(chǎn)品發(fā)布”(稍后將做詳細(xì)說明),12分鐘的時(shí)間總體來說嚴(yán)重不足。
下文將擇要介紹Fakhouri的公告及背后的動(dòng)機(jī)。
“在這個(gè)復(fù)雜而又充滿障礙的世界里,你在做什么?
“最好是開始探索、選擇,然后行動(dòng),然后再做一遍。那種基本的反饋循環(huán),那種應(yīng)對(duì)現(xiàn)實(shí)的方式就稱為學(xué)習(xí)。我們希望讓我們的客戶成為學(xué)習(xí)型組織,我們認(rèn)為,最好的方法是幫助我們的客戶提升速度。速度促進(jìn)學(xué)習(xí);快速行動(dòng)的能力可以推動(dòng)有效的學(xué)習(xí),改變方向的能力推動(dòng)專門的學(xué)習(xí)。
“我們有工具和框架幫你編寫整潔一致的代碼,你可以快速修改。我們有平臺(tái)讓你可以真正快速地推送到生產(chǎn)環(huán)境,然后隨著學(xué)習(xí)一次又一次地推送。所有這些結(jié)合在一起,你就可以一直快速前進(jìn)。你就獲得了速度。
“我們的客戶通過這樣做取得了大量的成功。本次大會(huì)吸引了各種各樣的人,所有人都希望向我們及彼此之間互相學(xué)習(xí)。我希望分享一些我們?nèi)ツ炅私獾降臇|西。
“Spring編程模型一直是一個(gè)同步阻塞編程模型,對(duì)于許多問題都很有效。但是,在有些情況下存在大量的阻塞,這種模型就非常不高效了,內(nèi)存使用增加,延遲增加?,F(xiàn)在,異步非阻塞模型通常更高效。但是,這是一種完全不同的技術(shù)模型。在這兩種模型之間切換的成本非常高。好,Spring團(tuán)隊(duì)一直致力于Reactor的開發(fā),我們正在把異步非阻塞io模型帶給Spring,它將成為一個(gè)大家熟悉的、一致的編程棧,提供強(qiáng)大的響應(yīng)式模式,提供了另外一種選擇。所有這些都打包進(jìn)SpringBoot 2.0和Spring 5中。
“我們還了解到,在IDE方面有許多選項(xiàng),我們很高興地宣布SpringTools 4,該工具是為Boot構(gòu)建的,IDE無關(guān),而且速度非??臁?/p>
“我們也了解到,用戶需要可以選擇,因此,我們與IBM合作,把Open Liberty作為商業(yè)支持選項(xiàng)加入了SpringBoot,并將SpringCloud流連接引入了IBM的生態(tài)系統(tǒng)。
“這只是冰山一角。
“但是,Spring需要一個(gè)家,我們認(rèn)為最好的家是CloudFoundry。CloudFoundry的核心是Elastic Runtime。這是你運(yùn)行所有應(yīng)用程序的平臺(tái),今年,我們正在重塑Elastic Runtime的品牌,將其稱為Pivotal Application Service(PAS),以突出它知道如何很好地運(yùn)行應(yīng)用程序。它是客戶成功的驅(qū)動(dòng)力,通過cf push命令提高開發(fā)人員的生產(chǎn)效率,這個(gè)簡(jiǎn)單優(yōu)雅的命令是說“我的代碼在這里,幫我在云上運(yùn)行它。我不關(guān)心用什么方式。”
“我們?nèi)ツ赆槍?duì)PAS做了大量的研究,并在安全性、可觀測(cè)性、性能、穩(wěn)定性、本地開發(fā)環(huán)境和可擴(kuò)展性方面做了很大的投入。但是,該平臺(tái)的核心是可以運(yùn)行多種語言。因此,我們還是和IBM合作在PAS中引入了IBM Liberty商業(yè)支持,豐富了可以在平臺(tái)上使用的工具和語言。
“新增的Pivotal Function Service(PFS)讓用戶可以說:“這是代碼,部署它,我不關(guān)心部署到哪里或者用什么方式運(yùn)行!
“我們還一直致力于運(yùn)行Windows/.NET工作負(fù)載,我們將繼續(xù)增加投入,那么,我很高興地宣布,在下一個(gè)版本中,我們將支持Windows Server 2016以及原生Windows Server容器,那將帶來和.NET工作負(fù)載類似的特性,因?yàn)槲覀兿M蔀槟氵\(yùn)行.NET工作負(fù)載的旗艦平臺(tái)。
“我們看到,我們的客戶運(yùn)行了相當(dāng)大規(guī)模的PAS,在數(shù)以百計(jì)的VM上運(yùn)行了數(shù)以千計(jì)的應(yīng)用程序,我們知道,PAS在規(guī)模很大時(shí)依然可以很好地運(yùn)行,實(shí)際上,它就是為此而構(gòu)建的。在默認(rèn)情況下,PAS需要20個(gè)VM的資源,這相當(dāng)笨重。但是,我們需要選擇。因此,我們很高興地宣布“小資源”PAS,一個(gè)只需6個(gè)VM、全功能、高可用、可橫向擴(kuò)展的PAS。現(xiàn)在,該P(yáng)AS已經(jīng)可以在所有支持的云上使用,在Azure市場(chǎng)上,只需一次點(diǎn)擊就可以試用。
“上面是部分PAS公告,但PAS本身只是更大的Pivotal CloudFoundry的一部分。PAS基于Bosh生命周期管理平臺(tái),把不可能變成可能。借助Bosh,一小隊(duì)操作人員就可以管理運(yùn)行數(shù)以千計(jì)應(yīng)用程序的PAS。只需按下一個(gè)按鈕,他們就可以執(zhí)行例行的平臺(tái)升級(jí)及應(yīng)用安全補(bǔ)丁。
“但是,我們也發(fā)現(xiàn),很難理解PAS在做什么。因此,我們研發(fā)了“健康監(jiān)控”,一個(gè)漂亮的儀表板,讓你可以確切地知道PAS正在做什么。在PAS上運(yùn)行Pivotal跟蹤器的Pivotal操作人員會(huì)喜歡它。因此,我們很高興可以在下一個(gè)版本中把它作為GA產(chǎn)品推向市場(chǎng)。
“我們也知道,雖然Bosh讓不可能變成了可能,但升級(jí)可能會(huì)花費(fèi)很長(zhǎng)的時(shí)間,因此,我們正在研究提升升級(jí)速度和穩(wěn)定性,下一個(gè)版本將節(jié)省數(shù)小時(shí)的升級(jí)時(shí)間。我們還在把Concourse的CI/CD自動(dòng)化工具引入平臺(tái),為用戶帶來安裝、升級(jí)管道,自動(dòng)下載并應(yīng)用平臺(tái)升級(jí)包,讓持續(xù)的CloudFoundry部署維護(hù)和升級(jí)工作變得異常簡(jiǎn)單。
“Bosh是我門多云故事的核心所在,是它讓CloudFoundry可以運(yùn)行在各種不同的云上。這里,我們?cè)俅瘟私獾?,你們需要可以選擇。因此,我們一直與微軟合作,希望在下一個(gè)版本中可以增加Azure Stack混合云的Beta支持。
“我們還在和Virtustream合作,為用戶帶來運(yùn)行全托管PCF的全托管基礎(chǔ)設(shè)施。
“我們所做的這些投入全都是基于我們的客戶給我們的反饋,我們總是樂于向你們學(xué)習(xí),因此,如果您希望我們實(shí)現(xiàn)什么,非常歡迎您反饋給我們。
“那就是PAS和Bosh,CloudFoundry的核心。但是,CloudFoundry還包含其他東西。我們還有一個(gè)數(shù)據(jù)服務(wù)生態(tài)系統(tǒng)。在那個(gè)市場(chǎng)里,Pivotal有多種數(shù)據(jù)服務(wù)。我們有Redis服務(wù),也有基于GemFire的MySQL、RabbitMQ和CloudCache服務(wù)。這些全都是完全托管的專屬服務(wù),使用cf create-service就可以輕松創(chuàng)建。我們知道,在本地提供一個(gè)全托管的服務(wù)非常復(fù)雜,我們一直在不斷地學(xué)習(xí),改進(jìn)這些產(chǎn)品的特性集。我們開始就提供了可定制的按需服務(wù),對(duì)于Redis也是如此,我們知道,你們需要可以選擇,你們可以選擇運(yùn)行應(yīng)用程序的Redis規(guī)模;不需要提交工單請(qǐng)求,只需要cf create-service。另外,我們一直都允許產(chǎn)品復(fù)雜度的提升,因此,我們從單節(jié)點(diǎn)服務(wù)發(fā)展到多節(jié)點(diǎn)服務(wù),所以,對(duì)于MySQL,我們的下一個(gè)版本將支持leader-follower,而對(duì)于Rabbit,我們的當(dāng)前版本即支持Rabbit集群。
“最終,基于豐富的特性集,借助CloudCache,我們將使用戶可以把自定義的代碼部署到GemFire集群上。我們還將支持LAN復(fù)制,從而實(shí)現(xiàn)真正的多站點(diǎn)應(yīng)用程序開發(fā)。
“現(xiàn)在你看到了,PCF是涉及面很廣的術(shù)語,涵蓋了若干種工作負(fù)載。但是,我們知道,它沒有涵蓋所有的工作負(fù)載。PAS針對(duì)開發(fā)效率進(jìn)行了優(yōu)化。我們很固執(zhí),我們要幫助開發(fā)人員加快速度,而且開發(fā)人員也喜歡這樣。但是,因?yàn)檫@種固執(zhí),運(yùn)行某些特定類型的工作負(fù)載就成了挑戰(zhàn)。例如,現(xiàn)成的商業(yè)軟件,或者是有著復(fù)雜網(wǎng)絡(luò)、持久化和生命周期要求的軟件,這些都是典型的遺留工作負(fù)載。那么,我們?cè)撛趺醋??一種選擇是大幅提升PAS的復(fù)雜度來支持這些工作負(fù)載。但是,那會(huì)讓這個(gè)平臺(tái)不再那么固執(zhí),我們會(huì)承擔(dān)降低開發(fā)效率的風(fēng)險(xiǎn),我們是不會(huì)這么做的,我們是你們可以信賴的合作伙伴。我們希望保持客戶的開發(fā)效率。但是,面對(duì)所有的工作負(fù)載,我們都希望成為你們可信賴的的合作伙伴。那么,我們?cè)撛趺醋觯?/p>
“好,事實(shí)證明,在運(yùn)行其中部分工作負(fù)載時(shí),Kubernetes是一個(gè)不錯(cuò)的解決方案。它是一個(gè)很棒的底層容器編排工具,可以處理這些類型的工作負(fù)載,根據(jù)我們的觀察,我們的行業(yè)中似乎有一場(chǎng)OR對(duì)話,就是在PCF及其開發(fā)效率和Kubernetes之間作出選擇。我們認(rèn)為這是不對(duì)的。這應(yīng)該是個(gè)機(jī)會(huì),將OR對(duì)話轉(zhuǎn)變成AND對(duì)話,把我們?cè)诜阑饓筮\(yùn)行大規(guī)模PCF的經(jīng)驗(yàn)教訓(xùn)帶給大家,把這些經(jīng)驗(yàn)運(yùn)用到Kubernetes上。因此,我們和谷歌及VM Ware合作將Kubernetes引入PCF大家庭,我們把它叫做Pivotal Container Service或PKS。PKS是以Bosh為基礎(chǔ)的Kubernetes。它讓一個(gè)小型的操作者團(tuán)隊(duì)就可以根據(jù)需要在平常的Kubernetes集群上部署fleet。用戶可以無縫地升級(jí)、打安全補(bǔ)??;可以及時(shí)更新開源的Kubernetes以及我們所謂的恒定的兼容性。再一次,我們還是和IBM合作,將IBM Docker鏡像的商業(yè)支持帶到了PKS。
“PKS充實(shí)了這個(gè)大家庭,我們希望交付一種一體化的平臺(tái)體驗(yàn),有標(biāo)準(zhǔn)的日志和指標(biāo)、共享的網(wǎng)絡(luò)和安全措施,無縫整合,行之有效。但是,再一次,我們認(rèn)識(shí)到,網(wǎng)絡(luò)是個(gè)非常大的挑戰(zhàn),尤其是在容器網(wǎng)絡(luò)這個(gè)新的領(lǐng)域里。因此,我們一直在和VM Ware合作,將NSX-T引入平臺(tái)。因此,你們可以在PCS上使用NSX來管理整個(gè)產(chǎn)品流的容器網(wǎng)絡(luò)。這就是為什么面對(duì)客戶的所有工作負(fù)載我們可以成為可信賴的合作伙伴。這是我們有史以來最重大的一次發(fā)布,這就是為什么我們稱其為PCF 2.0。它將所有這些部分整合到了一起,為我們開創(chuàng)了未來,一個(gè)我們不斷向客戶學(xué)習(xí)的未來。
“例如,我們認(rèn)識(shí)到,用戶希望探索Functions as a Service。好,我們也希望探索FaaS服務(wù),因此,我們很高興地引入了一個(gè)開源FaaS平臺(tái),Pivotal資助的Riff。我們計(jì)劃在2018年將基于Riff的Pivotal Function Service作為商業(yè)服務(wù)引入PCF。”
他最后引用了新的Pivotal真言——“盡享這里的時(shí)光,因?yàn)槲覀兌荚趯W(xué)習(xí)如何快速前進(jìn),永不停歇。”
查看英文原文:SpringOne 2017 Key Announcements