科技新知

在雲端服務出現後,好多新的名字,或許大家都聽過,筆者也稍為再簡介一下。

  • Software as a Service (Saas)。就像我們的Web App,不用下載體件,可以直接經雲進行業務操作。
  • Platform as a service (Paas)。這個概念可能最含糊,筆者理解就是,雲端供應商提供一些底層的軟件,供IT人使用。像是資料庫,Web Engine。
  • Infrastructure as a Service (Iaas)。這個更底層,雲端供應商給出CPU, IP, Memory, Storage等,頂多就再多個預安裝OS的選項。IT人自己去配搭使用。

多得這些彈性服務,雲端應用才真的跟過去租用實體伺服器有所差異。

但對於IT人來講,要使用這麼多不同的服務,實在也不簡單。對於IT消費方,用錢換來實體硬件的靈活性,但因為硬件沒有邊界之後,軟件的量就暴增。管理也不能說是很方便。

在Docker, Kubernetes等Container(容器)出現後,又為這些管理問題帶來另一種希望,就是Infrastructure as code - IaC。它的目標是,管理基礎設施,要像管理原始碼一樣,checkout 就可以回覆到指定狀態。

初聽之下,大家可能覺得好玄,但其實這個概念,在之前筆者的Docker 教學中,已經有出現過。Docker compose 、Docker stack 指令,它們都是基於yaml檔的IaC。

當筆者更新了yaml 檔,執行一次stack deploy ,docker 就會對比之前狀態,如果replica(分身)不夠多,就自動增加所欠數量,如果image 也更新了,就排隊輪流重起換image 。最重要的是,當我們checkout 舊的yaml 檔,回到過去某個狀況,只要還是執行同一句stack deploy ,系統就自然減少所需的replica數量,下戴過去的image。這就代表,我們對於container 構建而成的環境,都可以放入Git等版本控制中,整個管理模式,就像管理程式碼一樣(GitOps)。

對於更進階的Kubernetes更是如些,除了container外,多種不同的network,storage配置,都通過yaml檔進行控制。這樣,架構即使複雜,但只少可以測試、重現和管理。還有一個,它比Docker stack要強的是,它某程度上支緩刪除的概念。雖然不完全,但總比完全沒有方便。

這個IoC的概念,可能還未達到一定廣泛地應用的階段,但它的核心在於,基建項目有檢測試差異的功能,自動去因為這個差異去加或減資源。用Programmer的講法,就是系統有Diff的功能,自動多除少補。

馬交野


唐探1900
劇場版 世界計畫 崩壞的世界與無法歌唱的初音未來 色紙 特典場
IMAX with Laser 戰役
虎毒不
OMG! 阿媽有喜
謊島美人魚
LAST MILE:全面引爆
戰役
哈爾濱
搗破法蘭克
劇場版忍者亂太郎 毒菇忍者隊最強之軍師
花樣年華25周年導演特別版 4K
復仇反擊戰
出走的決心
奪命狂DATE
破。地獄 加長版
世界計畫 崩壞的世界與無法歌唱的初音未來
破.地獄 加長版
貓貓的奇幻漂流
4DX  英語版  MINECRAFT:我的世界大電影
英語版  MINECRAFT:我的世界大電影
4DX    MINECRAFT:我的世界大電影
MINECRAFT:我的世界大電影
劇場版 世界計畫 崩壞的世界與無法歌唱的初音未來
MINECRAFT :我的世界大電影
4DX  SEVENTEEN RIGHT HERE WORLD TOUR IN CINEMAS
PUI PUI 天竺鼠車車 電影版 MOLMAX
摘星廚神.巴黎夢
贖夢
白雪公主
門逃
哪吒之魔童鬧海
唐探1900
劇場版 世界計畫 崩壞的世界與無法歌唱的初音未來 色紙 特典場