TechTarget 發(fā)表于:14年09月30日 15:24 [轉(zhuǎn)載] DOIT.com.cn
對于歷史悠久的大型機來說,Agile DevOps可能是一個新的概念,但是大型機卻可以借助于Agile DevOps來提高生產(chǎn)力和可靠性。
敏捷開發(fā)——將應(yīng)用程序生命周期中的發(fā)行前和發(fā)行后狀態(tài)聯(lián)系在一起——通常被用做傳統(tǒng)大型機的工作流程。但是,相比于大規(guī)模Linux和Windows服務(wù)器環(huán)境,在大型機上使用agile DevOps可以發(fā)揮更大的作用。
在大型機上使用agile DevOps有四個優(yōu)勢:加快應(yīng)用程序交付和升級的速度;在運行過程中不斷改進的軟件可以更好的適應(yīng)應(yīng)用程序短期和長期發(fā)展;增強IT組織協(xié)作能力——在大型機團隊內(nèi)部和整合環(huán)境當中——可以在減少故障時間的同時提供更高質(zhì)量的應(yīng)用程序;提高大型機管理員工作效率。
1. 加快交付速度
對于IT領(lǐng)域中的大型機來說,交付這個詞具有多個含義。開發(fā)人員在交付代碼之前需要保證其通過一系列常規(guī)測試,之后將其交給運行專家。而IT管理員則認為交付和上線是同一個意思:就是真正地執(zhí)行所有代碼。敏捷開發(fā)只能夠加速代碼交付之前的那部分任務(wù);而DevOps填補了之前的空白部分,通過建立一個完整的生命活動周期,關(guān)注如何更好地獲取IT運維團隊的反饋。Agile DevOps將敏捷原則應(yīng)用于管理領(lǐng)域,使得開發(fā)人員和管理員可以進行毫無障礙的溝通。
大型機上的管理流程通常都是已經(jīng)建立好的,但是很多開發(fā)人員具有更為豐富的Linux和Windows專業(yè)知識。因此,在開發(fā)者的眼中,大型機上agile DevOps還有很多不足,導(dǎo)致代碼交接容易出現(xiàn)延遲。同樣的情況也會出現(xiàn)在重大bug的修復(fù)過程中。
通過減少測試環(huán)境和實際部署環(huán)境之間的差異,并且縮短升級和修復(fù)bug所需的頻率和時間,Agile DevOps實現(xiàn)了“交付速度的提升”。
2.運行時軟件優(yōu)化
在大型機運行時軟件開發(fā)當中,agile DevOps可以在兩個方面提升知識水平和程序質(zhì)量。首先,對于許多較新的、面向?qū)ο蟮牟僮飨到y(tǒng),比如Linux,很有可能不關(guān)機而一直保持運行狀態(tài)。因此,它們?nèi)菀壮霈F(xiàn)問題,比如錯誤的垃圾回收機制以及不能正確重新組織關(guān)系型數(shù)據(jù)存儲。
Agile DevOps借鑒了大型機管理員積累的經(jīng)驗來重新認識軟件平臺類型,以及可能引起這些類型問題的開發(fā)和/或測試流程。開發(fā)團隊可以使用嵌入式模式保護代碼來部署代碼庫和測試環(huán)境。
第二個領(lǐng)域是認識到測試工具之間的差距。現(xiàn)在很少的——如果存在——綜合測試套件能夠使用相同的技術(shù)同時處理非大型機和大型機的復(fù)雜活動(網(wǎng)絡(luò)、代碼層和數(shù)據(jù)庫)。大型機通常會被人所忽視。
agile DevOps的目標是在測試環(huán)境中,或者以代碼的形式嵌入到應(yīng)用程序自身當中以獲取大型機復(fù)雜性的現(xiàn)有知識,而不是希望大型機管理員發(fā)現(xiàn)問題所在。這并不僅可以使得開發(fā)人員和測試人員的工作更加輕松,同樣可以簡化管理員的工作。
簡化開發(fā)人員和管理員的工作可以實現(xiàn)“快速交付”并且開發(fā)出更為靈活的軟件,在升級過程中不需要管理員進行干預(yù)。
3.更好的協(xié)作以及更高的質(zhì)量
大型機管理員和開發(fā)人員在許多問題的理解上通常會存在較大差異。兩者可能永遠都無法實現(xiàn)目標統(tǒng)一,所以管理員和開發(fā)者的目標在于使用“敏捷性”技術(shù)創(chuàng)建一個最小化摩擦的通用架構(gòu)。
通過設(shè)計并有效實施agile DevOps流程,CIO應(yīng)該可以看到代碼質(zhì)量方面巨大改進,以及對于不經(jīng)常出現(xiàn)問題的應(yīng)用程序更為精簡的管理——哪怕CIO并不關(guān)心交付速度或者軟件在運行過程中的不斷改進。
4.提高大型機管理員工作效率
通常我們都會說大型機(或者非大型機)管理員是救火隊員。對于大型機管理來說,許多“救火行動”都涉及了新的Linux環(huán)境,以及與跨網(wǎng)絡(luò)外部環(huán)境的相互影響。
Agile DevOps可以改善這種大型機管理模式,從而提高大型機管理員的工作效率。首先,通過實現(xiàn)標準配置和Linux相關(guān)任務(wù)的自動化,Agile DevOps可以保證管理員擁有更多時間來“救火”。通過確保解決方案是長期有效和高質(zhì)量的來減少對于處理緊急情況的處理需求。此外,讓管理員也參與敏捷開發(fā)流程,和開發(fā)團隊進行溝通,當開發(fā)團隊擁有了一個能夠快速定位問題并且修復(fù)運行時問題的測試工具或者代碼庫之后,agile DevOps就可以減少管理員修復(fù)bug以及與開發(fā)部門協(xié)調(diào)所花費的時間。
發(fā)展前景
雖然IT部門仍然處在agile DevOps部署的初級階段,但是已經(jīng)產(chǎn)生了一些最佳實踐:
尋找并獲取適用于大型機管理員的大型機和不同環(huán)境自動化工具。
在大型機管理員和開發(fā)人員之間創(chuàng)建一個非正式的或者基于軟件的協(xié)作流程。
關(guān)注于不同環(huán)境之間,而不只是大型機專用應(yīng)用程序的生命周期管理。運行速度變慢和崩潰通常會涉及環(huán)境之間的相互影響,而不只是大型機自身(比如加快交付速度、改善運行時軟件優(yōu)化、增強IT間組織協(xié)作能力和提高管理員工作效率)。
公司簡介 | 媒體優(yōu)勢 | 廣告服務(wù) | 客戶寄語 | DOIT歷程 | 誠聘英才 | 聯(lián)系我們 | 會員注冊 | 訂閱中心
Copyright © 2013 DOIT Media, All rights Reserved. 北京楚科信息技術(shù)有限公司 版權(quán)所有.