Kubernetes 是新的 Linux 嗎? 帕維爾·塞利瓦諾夫專訪


解碼:
阿札特‧哈迪耶夫:你好。 我的名字是阿札特·哈迪耶夫。 我是 Mail.ru 雲端解決方案的 PaaS 開發人員。 和我在一起的是來自南橋的 Pavel Selivanov。 我們正在參加 DevOpsDays 會議。 他將在這裡演講如何使用 Kubernetes 建立 DevOps,但很可能你不會成功。 為什麼要討論這麼黑暗的話題呢?

帕維爾·塞利瓦諾夫:其實並不悲觀。 事實上,我們正​​在嘗試借助技術來解決社區中的許多問題。 我們試圖以一種相當片面的方式藉助技術來解決問題。 Kubenetes 也是一樣——這就是他們負責的事情,有人可能會說 Ops。 但我們有一個很棒的 DevOps 工程師概念。 DevOps 工程師負責 Kubernetes。 同時......就像你製作 Kubernetes 一樣,但開發人員根本不知道所有這些 Kubernetes,他們不知道它允許你做什麼 - 並且一切對他們來說都完全相同。 儘管 Kubernetes 包含現成的解決方案和現成的工具,以便使用該技術來擴展 DevOps 方法以及 Dev 和 Ops 之間的通訊。 我們很少利用這個機會。 由於我們甚至將目前的結構轉移到所有這些 DevOps 工具(Docker、Kubernetes、雲端等),我們讓這種情況更加惡化。 我們開始以不同於預期的方式使用這些工具。 圍繞著所有這些技術正在建造可怕的拐杖。

阿札特‧哈迪耶夫:我明白了。 感覺這個話題很廣泛。 您認為目前企業最常見的問題是什麼? 與 Kubernetes 一起。

Pavel Selivanov:Kubernetes 最常見的問題是缺乏能力。 這是 IT 領域的常見問題。 專家總是短缺。 總是缺乏能力。 而現在 Kubernetes 的能力還不夠。 同時,市場上仍有 XNUMX% 現成的解決方案可以讓您獲得 Kubernetes,但同時不具備必要的能力;坦白說,市場上很少有這樣的解決方案。 那些存在的,它們都提出了一些問題。 對於 Kubernetes,我們一直在尋找了解這一點的人。 我們正在努力使開發適應這一點。

Azat Khadiev:鑑於目前 IT 人員短缺。 這一直存在。 現在有了。 您認為在這樣的條件下該如何生活? 有哪些生活小撇步?

帕維爾·塞利瓦諾夫:生活黑客。 首先,從雲端的角度來看,生活黑客看起來像這樣 - 讓我們給我們一些你的能力。 我們會把它們佔為己有。 我們將在自己內部做到這一點。 這一切都很好。 除了對於使用它的人來說理解這一點很重要......實際上是一個偉大的時刻......但重要的是要理解,如果我們將部分能力交給雲端或提供者,我們會得到一個通用的解決方案作為回報。 粗略地說,我們有一個資料庫可以做非常具體的事情,而且它是以非常具體的方式配置的。 透過將此資料庫提供給雲,我們當然可以解僱過去處理資料庫叢集的管理員 - 同樣的亞馬遜或谷歌將為我們做這件事。 但同時,亞馬遜或谷歌不會允許我們明確配置我們的資料庫。 大型專案、大公司 - 無論如何,他們會在生命週期的某個階段使用雲端解決方案,然後,無論如何,他們都會回歸自己的能力,因為需要更具體的東西。

Azat Khadiev:通用解決方案是不好還是可以在此基礎上建立更多解決方案?

Pavel Selivanov:不,通用解決方案絕對不錯。 通用解決方案很好。 只是通用解決方案...通用。 理解這裡很重要。 這就像採用通用腳本......如果您可以圍繞這個通用腳本、通用應用程式建立公司工作的整個邏輯,那就太酷了。 如果作品的邏輯不同,但你採用了這個通用的解決方案,一個通用的腳本 - 然後像貓頭鷹一樣開始拉動地球儀,這很糟糕。 普遍主義本身並沒有什麼問題。

阿札特·哈迪耶夫:如果這位管理員已經為您工作,那麼重點不在於解僱他。 他將能夠做更多的事情。

帕維爾·塞利瓦諾夫(Pavel Selivanov):是的,取消他的日常工作,並將其交給某個地方的某人,讓他們在某個地方進行製作。 這絕對是一個好方法。 這裡重要的一點是這個標準解決方案是否適合特定情況。

Azat Khadiev:根據我的經驗,我發現很多公司都在做同樣的事情。 他們正在建立一個 Kubernetes 叢集並考慮擴展它。 而且所有這些操作都非常可重複。

帕維爾·塞利瓦諾夫:是的,當然。 而且,如果我們具體拿 Kubernetes 來說,有這樣一點,目前市場上關於 Kubernetes 的深入、好的知識確實很少。 Kubernetes 是一個如此龐大的建造者,如果你為一家公司僱用它,請準備好帶一名全職完成所有這些工作的工程師。 而且價格昂貴。 並嘗試再次尋找這樣的工程師。 如果我談論我自己,我不太喜歡任何雲端解決方案,因為我對 Kubernetes 的工作原理有相當深入的了解。 通常在雲端中我只是缺少一些我要求的功能 - 但他們告訴我“不,你不能。” 好吧,那麼,我很抱歉,但我可以比克勞德做得更好。 但同時,如果你沒有全職工程師,你也不想為這個運行 Kubernetes 的工程師付費,而你不斷地付給他很多錢只是為了進行實驗,那麼雲端就只是一個很好的解決方案。 因為至少坐在那裡的人是提供者已經招募的。 他們知道自己在做什麼。 你每天需要的那些基本東西都在那裡。

Azat Khadiev:您如何看待 Kubernetes 目前的狀況? 五年後、十年後他會發生什麼事?

帕維爾·塞利瓦諾夫:好問題。 我只知道我們社區正在發生什麼事。 有些人認為,除了 Kubernetes 之外,將一無所有。 Linux 很久以前就發生過這種情況。 也就是說,在 Linux 之外,有人住在 BSD 上,他們很可能有非常具體的任務。 有些人在 Windows 下工作 - Windows 伺服器 - 最有可能的是,他們也有特定的任務,或者他們只是在這方面有能力,但他們不准備離開那裡。 無論如何,我們這個領域的標準是Linux。 有一種觀點認為,Kubernetes 將成為同樣的事實上的標準,除了 Kubernetes 之外什麼都沒有。 Kubernetes 不僅可以管理應用程序,還可以管理它們的部署、部署和擴充。 一般來說,管理一切。 現在他們已經在問:“是否可以將資料庫推送到 Kubernetes 中?” 我通常說這裡的問題不在於 Kubernetes,而是 Docker。 如果您已準備好讓資料庫在容器中運行,那麼它就是這樣工作的。 他們回答我:「不,不,不,等等。 不需要容器。 需要 Kubernetes。 我們將把它移植到節點上。 也就是說,一切都會像我們現在擁有的那樣,只有 Kubernetes 才能管理這一切。” 這其實是個好主意。 也就是說,當你來到一家公司時,Kubernetes 就是這樣一個東西,如果該公司有 Kubernetes 和基於它構建的流程,那麼一個理解這一點的人 - 他只需要看幾天就能說:“我已經準備好支持你了。 完全。 完全。 我明白事情對你來說是如何運作的。” 與沒有 Kubernetes 的方法相反 - 這裡是一些拐杖被塞進去,這裡是其他拐杖。 這裡是 Ansible,這裡是 Terraform。 有人寫了這一切,花了六個月的時間才弄清楚。 這裡。 所以 Kubernetes 是否會成為事實上的標準,我不知道。 如今,他看起來比他周圍存在的解決方案更加雄心勃勃和自信。

Azat Khadiev:嗯,與 Linux 的比較是相當大膽的。 它可以在一台機器上運行——僅此而已。 Kubernetes 可以在很多機器上運作。 一百萬種變化和原因立即出現。 是的,這很大膽。 只要您考慮到這種範式存在競爭對手。 例如,無伺服器。 面對這樣的競爭對手,Kubernetes 是否面臨危險?

Pavel Selivanov:來自無伺服器......(笑)無伺服器 - 我們仍然知道畢竟有伺服器。 最近我聽到了有關此事的報導。 那裡的人說仍然有伺服器 - 這是雲端。 但我們必須始終明白,雲端也有伺服器。 有真正的硬體伺服器、機架,它們安裝在某個地方。 這就是雲。 最重要的是無伺服器,即“沒有”伺服器。 那麼問題來了:Serverless 會戰勝 Kubernetes 嗎? 在我看來,Serverless 將會遷移到 Kubernetes。 對於提供 Serverless 的供應商來說,Kubernetes 是一個非常方便的平台。 是的,也許在某個時候我們原則上將停止談論 Kubernetes,就像談論業務應用程式的普通開發一樣。 但在深處的某個地方,提供者和工程師將擁有 Kubernetes,所有這一切都將在其中實現。

Azat Khadiev:一個稍微不同的主題。 有一種叫做全端工程師的東西。 你覺得他們怎麼樣? 它們存在嗎?

Pavel Selivanov:嗯......全端工程師......嗯,在我看來,區分這些東西是值得的......你知道,有一種叫做T型人的東西。 現在的行業需要這樣的人嗎? 是的,我們絕對需要它。 我們需要具有廣闊視野的人,但同時他們也是某個狹窄領域的專家。 這裡的全端工程師是一樣的──一個包辦一切的人。 從前端開發、測試、後端、伺服器等一切開始。 我不認為在一家大公司中,一個人如果不對每個參數都具有狹窄的專業知識,就無法做到這一點。 但同時,僅僅有一個狹窄的專業知識,就像周圍發生的事情一樣,我什麼都不知道——這在現代世界也行不通。 也就是說,在這裡我想說…我會放棄「全端」這個詞。 我們確實需要工程師。 我們需要 DevOps。 我有一種感覺,我們很快就會重新考慮這一刻。 而且他們將不再被需要。

阿札特·哈迪耶夫:你能透露一下嗎?

Pavel Selivanov:在我看來,我們業內人士將得出這樣的結論:這些開發和營運角色將很快消失。 如果我們需要專家並且我們正在尋找......我們需要這樣那樣的開發人員,我們需要這樣那樣的管理員,我們需要DevOps工程師- 現在我們有了他們,現在我們還將有生產工程師,SRE工程師。 雖然事實上,我們需要的是我們想僱用的工程師。 背景總的來說並不重要。 因為…例如,SRE 說基礎設施問題始終是軟體問題。 所以...讓我們以開發人員為例——從開發人員是工程師的角度來看——把他們放在維護部門,他們會像解決業務問題一樣借助程式碼來解決這些問題,借助程式碼來解決這些問題。工程本身。

Azat Khadiev:從這個角度來看......如何採訪這樣的工程師?

帕維爾·塞利瓦諾夫:哦,好問題。 他這輩子恐怕已經超出我的理解範圍了。 但我只想舉個例子。 和麵試沒有任何關係。 這是關於我們俄羅斯的教育體系。 在IT方面,我們知道我們俄羅斯的教育體系對IT世界來說是非常過時的,它不應該是這樣的。 我談論的是幅員遼闊的俄羅斯的平均情況——以及那裡正在發生的事情。 即將畢業的人們絕對沒有準備好在畢業後的第二天進入網頁開發或科技公司。 這有點糟糕。 我們教他們一些奇怪的東西,儘管我們應該教他們如何開發 Android、iOS、如何使用 Git 以及所有這些東西。 事實上,似乎並非如此。 大學時期是父母為你支付大部分費用的時期。 為了你的一生。 你可以花五年的時間來深入研究。 並研究所有這些T形。 當你可以在研究所學習什麼是版本控制系統,有哪些開發模式,如何測試整個系統,有哪些類型的資料庫和平衡器。 當你去工作時,你開始更深入地研究某個特定領域。 這就是我們招募工程師的方式。 我們俄羅斯的教育體係比我們想像的更接近這個真理。 我們接受了良好的數學訓練,我們接受了良好的演算法訓練,我們對程式語言有了一定的了解。 關於這次採訪,我覺得與此很接近。 我們需要採訪工程師。 我們需要T形的頂部。 因為它將取得字母T的垂直線。

阿札特‧哈迪耶夫:是的,有趣。 大學畢業五年後,我覺得我所受的教育有些奇怪和不足。 然後,隨著工作的進展,當任務變得更深、專案變得更大時,我意識到不,我被教導了非常重要的東西。 帕維爾,謝謝你。 聽你們的回答非常有趣。 我們來聽聽您的報告。

帕維爾·塞利瓦諾夫:謝謝。

來源: www.habr.com

添加評論