ref: https://ably.com/blog/no-we-dont-use-kubernetes
八月第一篇,就來個有趣的文章,來看看 ably 這間 SaaS 公司為什麼沒有使用 Kubernetes,不但當前沒有使用,甚至短期未來內都不會想要使用
更是直接的說如果你有興趣來加入團隊,千萬不要把將 Kubernetes 導入到團隊中是一個可能發生的事情。
我個人覺得這篇文章滿好的,因為是認真的去比較導入 Kubernetes 帶來的改變,而這些改變對團隊來說到底是可接受還是不可接受
而不是所謂的人云亦云,人家要我也要,人家不要我也不要...
文章分成兩部分,前述介紹當前 Ably 的環境架構是什麼,而半部分則是很技術的去探討如果導入 Kubernetes 帶來的好處與壞處是什麼
最終權衡比較之下,會發現導入 Kubernetes 沒有帶來實質上的好處。
文章開頭先簡述了一下 Kubernetes 這幾年的風潮,從最初 Google Borg 的開發開始談起,作者特別提到當初 Borg 的用法可是將一堆實體機器給搭建出一個 Private Cloud 的叢集給團隊使用,
而目前 Kubernetes 更多的用法則是搭建於 Public Cloud 上面的虛擬機器中,透過將 Kubernetes 部署到這些不同的 Cloud Provider 似乎帶來了介面統一的結果,對於 DevOps 人員來說
不同 Cloud Provider 如今看起來都是 Kubernetes 的樣貌。
Ably 目前到底怎麼部署應用程式
Ably 主要使用 AWS 作為其 Cloud Provider,並且於 EC2 機器上使用 docker/container 來部署團隊中的應用程式。
作者團隊中沒有使用任何已知的 Orchestration 服務來管理多節點上的 docker/container,取而代之的則是每個 VM 開機後則會根據 autoscaling group 的機制來判斷
每個機器應該要部署哪種 container/docker。
對於 Ably 來說,團隊中沒有任何 scheduler 相關的服務來調度各種服務,這意味每個 VM 就代表一種服務,所以將 VM 上的服務從 Core 轉換成 frontend 這種行為不會發生。
今天需要針對需求轉換服務時就以 VM 為基準來整批換掉即可。
每個節點上面都會有一個輕量的監控服務,用來確保運作的 Container 如果掛掉後可以被重啟,甚至如果當前運行的版本不符合需求時也能夠將該服務給停止。
流量方面,因為每個 Autoscaling Group 就代表一個服務,所以直接使用 NLB 與 Target Group 來將流量導入該 Autoscaling Group 即可。
至於容器與容器之間的內部流量(譬如 k8s service 等)作者認為也不是太大問題,畢竟每個機器本身都會被 VPC 賦予一個 IP 地址,所以使用上沒有什麼太大的問題。
接下來作者從幾個層次去探討當前設計與使用 Kubernetes 帶來的改變,分別有 (原文很多,這邊摘要不然文章會太長)
題外話,由於 Ably 的 Infra Team 數量有限,所以要考慮 K8s 只會考慮 K8s Service,如 EKS。
1. Resource Management
Ably:
a. 根據服務的需求來決定每個服務要用到的 VM 等級
b. 不需要去煩惱如何處理將多個小服務給部署到一個適合的大 VM 中
c. 作者稱這種行為其實就是 AWS 官方強調的 Right Sizing, 譬如只能跑兩個 Thread 的服務不需要 16vCPUs, 久久寫一次硬碟的服務也不需要一個 90,000 IOPS 的 SSD
d. 選擇一個正確的元件來搭建一個符合服務的 VM 讓團隊可以控制成本同時也減少額外的管理負擔
K8s:
a. 必須要使用一個比較強大等級的 EC2 VM,畢竟上面要透過 Container 部署很多服務
b. 針對那些需要小資源的服務來說,透過這種方式能夠盡可能的榨乾機器的資源,整體效能使用率會更好
c. 但是針對資源量沒有很辦法明確定義的服務則是會盡可能地去吃掉系統上的資源,這種被稱為 nosy neighbors 的常見問題已經不是首次出現了, Cloud Provider 本身就需要針對 VM 這類型的服務去思考如何處理資源使用,而 Cloud Provider 都有十年以上的經驗再處理這一塊
而所有 Kubernetes 的使用者則必須要自己去處理這些。
d. 一個可能的作法則是一個 VM 部署一個服務,不過這個做法跟團隊目前的作法已經完全一致,所以就資源管理這一塊,團隊看不到使用 Kubernetes 的優勢。
2. Autoscaling
Ably:
a. EC2 VM 本身可以藉由 Autoscaling Group 來動態調整需求
b. 有時候也是會手動的去調整 EC2 的數量,基本上手動跟自動是互相輔佐的
c. 團隊提供的是 SaaS 服務,所以其收費是針對客戶實際上用多少服務來收,如果開了過多 EC2 VM,則很多不要的花費與開銷都是團隊要自行吸收
d. 團隊需要一個盡可能有效率的方式能夠即使遇到流量暴衝時也能夠保證良好的服務的機制
K8s:
a. 可以透過不少方式來動態調整 Container 的數量,
b. 甚至可以透過 Cluster autoscaler 來針對節點進行調整,根據需求關閉節點或是產生更多節點
c. 動態關閉節點的有個問題是關閉節點時通常會選擇盡可能閒置的節點,但是閒置並不代表沒有任何服務部署再
上面,因此該節點上的 Container 都要先被轉移到其餘節點接者該目標節點才可以被正式關閉。這部分的邏輯作者認為相對複雜
d. 整體來說,k8s 有兩個動態調整的部分,動態節點與動態服務,而現有的架構只有一個動態節點。所以使用 k8s 則會讓問題變得更多更複雜。
3. Traffic Ingress
Ably:
a. Traffic Ingress 基本上每個 cloud provider 都提供了很好的解決方案,基本上團隊只要能夠維持每個服務與背後的機器的關係圖,網路流量基本上都沒有什麼需要團隊管理的。
b. 使用者會透過直接存取 NLB 或是透過 CloudFront 的方式來存取團隊內的服務
K8s:
a. EKS 本身可以透過 AWS VPC CNI 使得每個 Container 都獲得 VPC 內的 IP,這些 IP 都可以讓 VPC 內的其他服務直接存取
b. 透過 AWS LB Controller,這些 Container 可以跟 AWS LB 直接整合,讓封包到達 LoadBalancer 後直接轉發到對應的 Container
c. 整體架構並不會比團隊目前架構複雜
d. 唯一缺點大概就是這個解決方案是完全 AWS 綁定,所以想要透過 k8s 來打造一個跨 Cloud Provider 的統一介面可能就會遇到不好轉移的問題。
4. DevOps
Ably:
a. 開發團隊可以透過簡單的設定檔案來調整部署軟體的版本,後續相關機制就會將 VM 給替換掉,然後網路流量也會自然的導向新版服務
K8s:
a. 開發團隊改使用 Kubernetes 的格式來達到一樣的效果,雖然背後運作的方式不同但是最終都可以對開發團隊帶來一樣的效果。
上次四個分析基本上就是,使用 k8s 沒有帶來任何突破性的好處,但是 k8s 本身還有其他的功能,所以接下來作者想看看 k8s 是否能夠從其他方面帶來好處
Multi-Cloud Readiness
作者引用兩篇文章的內容作為開頭,「除非經過評估,否則任何團隊都應該要有一個跨 Cloud-Provider 的策略」
作者表明自己團隊的產品就是那個經過評估後斷言不需要跨 Cloud Provider 策略的團隊,同時目前沒有往這個方向去追求的打算。
同時作者也不認為 K8s 是一個能夠有效達成這個任務的工具。舉例來說,光 Storage 每家的做法都不同,而 K8s 沒有辦法完全將這些差異性給抽象畫,這意味者開發者終究還是要針對這些細節去處理。
Hybrid Cloud Readiness
管理混合雲(Public Cloud + Private Cloud based on Bare-Metal servers)是作者認為一個很合理使用 K8s 的理由,畢竟這種用法就跟當初 Google Borg 用法一致,是經過驗證可行的。
所以 Ably 如果有計畫要維護自己的資料中心時,底層就會考慮使用 Kubernetes 來管理服務。畢竟這時候沒有任何 Cloud Provider 提供任何好像的功能。
不過 Ably 目前沒有任何計畫,所以這個優點也沒有辦法幫助到團隊
Infrastructure as Code
團隊已經大量使用 Terraform, CloudFormation 來達成 IaC,所以透過 k8s YAML 來維護各種架構不是一個必要且真的好用的方式。
Access to a large and active community
另外一個很多人鼓吹 K8S 的好處就是有龐大的使用者社群,社群內有各種問題分享與探討。
作者認為
a. AWS 的使用者社群數量是高於 Kubernetes
b. 很多情況下,一個迭代太快速的產品其實也不一定對團隊有太大的幫助。
c. 很多人都使用 k8s,但是真正理解 k8s 的人微乎其微,所以想要透過社群來幫忙解決問題其實比你想像的還要難,畢竟裡面的問題太雜,很多時候根本很難找到一個真正有效的答案。
Added Costs of Kubernetes
為了轉移到 K8s, 團隊需要一個全新的 team 來維護 k8s 叢集以及使用到的所有基本服務。舉例來說,EKS, VPN CNI, AWS LB 帶來的網路好處並不是啟動 EKS 就會有的,
還必須要安裝相關的 Controller 並且進行設定,這些都是額外的維運成本。
如果找其他的服務供應商來管理 Kubernetes,這意味公司就要花費更多的$$來處理,所以對團隊來說,金錢與工作量都會提高,不同的解決方式只是這兩個指標的比例不同而已。
結論:
1. Ably 覺得 Kubernetes 做得很好,但是團隊目前沒有任何計畫去使用它,至少目前這階段沒有看到任何實質好處
2. 仔細評估後會發現,導入 k8s 其實也會帶出不少管理上的問題,反而並沒有減輕本來的負擔
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
public ip是什麼 在 Facebook 的精選貼文
【像極了愛情,像極了小說】
#道理伯
#我是唯一(自未來)逃回向你報信的人
#5月7日開始預購
#好奇怪為何我好像有時候被鎖留言
‧
關於「存在於小說中的論述」這件事,教我最多的是米蘭‧昆德拉。
‧
當然了,這高度相關於我個人偏好──
某些小說家極其厭惡於小說中呈現思想,或曰論述;
無論該議論出自於小說敘事者,或小說人物。
他們通常僅著迷於故事。
而另一方面,又有些小說家顯然對此相當偏愛(無論其出自於角色或小說敘事者)──
上至杜斯妥也夫斯基、托爾斯泰如此,下至勒卡雷、菲利普‧羅斯、唐‧德里羅與米蘭‧昆德拉亦如是。
平心而論,作為一範圍「和語言一樣大」之藝術類別;小說門派既多,愛使什麼招數皆屬個人自由。
拳腳、內功、兵刃、暗器皆可傷人,原本無須自我設限。
然而「議論」(或曰論述,或曰思想)這招,自然直接相關於小說家內蘊之思維儲備與筆力。
台語有個傳神的說法:「道理伯」。
‧
道理伯是愛說道理的男人。道理嬸,是愛說道理的女人(好啦just kidding──並沒有這種說法,因為mansplaing畢竟較為常見)。
然而無論是mansplaining或womansplaining,內容才是關鍵。
有人說起教來味同嚼蠟,有人指點江山卻是虎虎生風,群鶯亂飛,令人拍案叫絕。
昆德拉教會我的是,如果情節之布置足夠精彩(以其《小說的藝術》中所言──
若是那「終極悖謬」確然足堪匪夷所思),那麼道理伯的道理也是說不**盡**的。
這不難理解:如果愛情的道理能夠被窮究講述完畢,那麼也就不會有「像極了愛情」這回事了──
你之所以說「像極了愛情」,正是因為你知道自己縱然舌敝唇焦亦無從以言語精準再現其酸甜苦辣。
一言以蔽之,你還真以為自己知道愛情像什麼嗎?
你還真以為,自己能知道愛情「是」什麼嗎?
‧
「終極悖謬」。那是「道理伯」老昆德拉最初與最終的執迷。
他的小說情節指向它,他的「道理」(那天花亂墜、不擇地而出卻往往令人讀來嘆服不已的議論)同樣一往無前地向它趨近。
小說情節存在的理由,是為了有力凸顯這悖謬之核心
(對,《玩笑》:思想警察舉發了從未意圖謀反的某甲,而某甲為了逃離牢獄之災,唯一的選擇就是永恆地叛離這個國家;
成為一個某甲原本無意成為的,不折不扣的叛徒);
而小說中的議論存在的理由,同樣是為了以論述將讀者帶往幽深地底,
愈帶愈深,直至這終極悖謬之中的......終極悖謬。
‧
《零度分離》是一本屬於未來的小說。
這不是比喻,而就是字面上的意思──
於我構想中,那是一部出版於西元2284年,由未來的一位深度調查記者Adelia Seyfried所撰寫的非虛構寫作。
也因此,小說中有議論──作為一位記者,她的夾敘夾議理所當然。
她既可藉此述說對受訪者的第一手觀察,亦可述說自己於調查採訪中遭遇的困難。
我在此其實頗有輕描淡寫的嫌疑,因為當寫作題材涉及刑案,涉及殺人,那麼調查記者之身分則幾乎等同於警探──
她極可能令自己深陷險境。
也因此,她必然有權述說自己遭遇的危險,有權將自己涉入的事件賦予一社會學意義──
就像社會派的松本清張,像松本筆下那「日本的黑霧」。
而同樣並無例外的是,如果能夠,如果那樣的述寫足夠尖銳或深沉,
那麼她自然也能向他人指出事件之中具體實存的「終極悖謬」。
‧
這是《零度分離》的屬性。
而Adelia Seyfried之寫作既為「非虛構」,內容原應真實無比,
但由於某些年代上的錯置,導致此書的出版商(Vintage Books與其母公司雙日傳媒集團)對書中敘述之真實性產生了懷疑。
然而作者Adelia Seyfired卻對此毫不在意:她拒絕給出解釋。
她有她自己的理由,至少對她自己而言,那是更重要的理由──
她個人的「道理」在書中已然闡明,她甚至寧可在書末附上一紙與書中重要角色(一位AV業大亨Adolfo Morel)的對談,也不願意給出版商一個明確說法。
而這場對談,正是以我們身處的21世紀初(2020年代)至23世紀之間,長達二百多年的「歷史」為基礎。
‧
換言之,那是史學家的回望,也是書中人的見解;同時又是我個人對未來的評估,或謂虛構。
那是深度報導記者Adelia Seyfried對過去的深情凝視
(是,《零度分離》中,她凝視著破解了虎鯨語言的動物學家Shepresa、因反人類罪而被處以虛擬極刑的夢境播放器Phantom、
無可救藥地愛上了不存在的虛擬偶像的葉月春奈,以及隻身遁入了不可思議的時空維度中的失蹤影后郭詠詩),
她心中的「終極悖謬」,也正是我個人對人類文明未來的測繪──
類似艾西莫夫(Issac Asimov)《基地三部曲》「心理史學」(Psychohistory)那般的思索、運算,以及預言。
此處,一段文明被三種時間所共享、詭異地同步於三個相異的曖昧時態中。
我無法不想到《百年孤寂》那被引之再引的小說首句:
‧
> 多年以後,面對槍決行刑隊,奧瑞里亞諾·布恩迪亞上校將會回想起父親帶他去尋找冰塊的那個遙遠的下午。
‧
三種時間。三個時態。Adelia Seyfried將如何寫下那些?
我如何寫下那些?
‧
這是隸屬於「噬夢人宇宙」的《零度分離》。我想那或許是因為,我正是唯一自未來逃回,向你報信的人。
‧
#最新長篇《零度分離》,2021年5月 台灣麥田/中國中信
兩岸同步出版
#據說是5/7會開預購,5/13正式上市
#所以今天打書過後我應該就可以休息幾天不打書了是嗎耶耶
‧
#目錄
後人類愛情考古學——伊格言《零度分離》/王德威
1|美國Vintage Books出版公司 暨 雙日傳媒集團 公開聲明|A Public Statement by Vintage Books Publishing & Double Sun Media
2|【代序】零度分離 ◎Mike Morant|Preface to Zero Degrees of Separation by Mike Morant
3|再說一次我愛你|Say I Love You Again
4|夢境播放器AI反人類叛變事件|The Dream Projection AI Uprising Against Humanity
5|霧中燈火|Lights in the Mist
6|二階堂雅紀虛擬偶像詐騙事件|The Masaki Nikaido Virtual Idol Scam
7|來自夢中的暗殺者|The Assassin from a Dream
8|餘生|The Rest of My Life
9|【附錄】我有一個夢:於神意之外造史──Adelia Seyfried對談Adolfo Morel|I Have a Dream–Making History beyond the Divine Plan, a Conversation between Adelia Seyfried and Adolfo Morel
我想結束這一切——《零度分離》伊格言對談韓松
‧
在科技世界中注入感性,一方面暖化柔化科技的冰冷,另一方面又讓情愛顯得涼薄虛幻,是伊格言從《噬夢人》以來的獨特筆觸,新作《零度分離》尤其發揮極致,溫柔旖旎又絕望。未來世界的荒蕪莫過如斯。
伊格言在科技航道中探情,冷冽中透著少許迷離、一絲憂傷、些許浪漫,堪稱是科幻小說的抒情詩人。
──范銘如(政治大學台灣文學研究所特聘教授)
‧
神秘的事件、難以靠近的心智、不可思議的犯罪(不可思議到,連「罪行」究竟為何都是個難題),而總是停留在那個不可能處。他走到想像力的邊界,邊界之外了。這一直不是容易的事,猶如潛進了無意識的領域,回返,並記得且說出,他做到了。
──朱嘉漢(小說家)
‧
什麼力量能打破人心與心之間的距離,讓六度分離成為零度分離呢?從六到零的距離,是不是就是一整個宇宙?還是其實,只是我們意識的幻象?
伊格言在《零度分離》一書中,實現的就是這樣的,創造的力量。
此書終將在歷史留名。
──黃健瑋(演員)
‧
每個故事都說不出地好看......如果有同為寫小說的頂尖對手問我,我最「平凡人」的回答,就是「厲害!」「真是厲害!」
對我而言,這已經不是「天才」或「才華」的層次,而是另一種新的智能人種搶走了古老的賣夢人、食夢貘,或僅屬於幻影(與毒品對大腦作用無異)的舊一套VR的IP公司,這些人的古老行當。
──駱以軍(小說家)
‧
這是繼《噬夢人》之後的野心之作。私心認為,入選二○一九年年度小說選的書中首章〈再說一次我愛你〉是台灣當年最好的短篇小說......《零度分離》最後,那位神祕的Adelia Seyfried像一個埋伏暗處已久的殺手,身份揭露時,幾乎給了我致命一擊。我知道這本書還有後續,如此,更令人拭目以待了。
──張貴興(小說家)
‧
《零度分離》令人震撼。文學性和思想性都很了不起。
──韓松(小說家)
‧
這本書的臨場感特別吸引我......一本藏著許多溫柔的科幻小說。
──鍾瑤(演員)
‧
我幾次見到伊格言,他都彷彿在修行,沉靜地待在一邊。現在看來,他是在像煉金一樣,鍛造一個脫離現實的空間。啊,就是我們眼前看到的這本書。它如此危險而美麗,真像是拍一個巴掌就會震碎的精緻的水晶宮。
──阿乙(小說家)
.
伊格言的《零度分离》将科幻投入叙事的迷宫,思想上的实验走在深渊的边沿。六个属于未来的故事闪烁着巴洛克的璀璨光芒,点燃后人类技术时代的情感迷狂——「再说一次我爱你」,人与非人的区隔已然倒塌。这是关于未来最出人意料的预言,这是关于我们时代最深不可测的寓言。
A brilliant new novel by Egoyan Zheng! A science fiction novel shining with the Baroque splendor! A most incredible prophecy about our posthuman future; a most profound revelation about our human condition. Six experimentalist stories tell us: no, there is no difference between them and us, just like there is zero separation between you and me! Yes, “I love you——I will say again!” -——宋明炜,美国卫斯理学院东亚系教授,科幻文学学者