成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Kubernetes日志傳輸過程中面臨的4個挑戰(zhàn)

譯文
云計算
這篇文章的動機更多的是想要闡釋問題和技術(shù)難點。而不是關(guān)于如何解決它們。如果這里面的內(nèi)容有什么不合適的地方,我會根據(jù)需要做出一些改變。

【51CTO.com快譯】如果您正在使用Kubernetes并需要進行日志記錄,您可能會面臨一些不同于虛擬機或裸機環(huán)境的問題和挑戰(zhàn)。

在過去的三個月里,我一直在研究PKS的可觀察特性。***,我把關(guān)注點放在了Kubernetes的日志系統(tǒng)上面。

收集日志,并將其發(fā)送到日志服務(wù)器。這看起來是簡單而普通的工作,不是嗎?或許有時候是這樣的吧。但是,與虛擬機或裸機環(huán)境相比,我注意到了使用容器時在日志記錄方面的一些新的挑戰(zhàn)。

以下是摘要。了解一下!看看您的Kubernetes項目上是否也有同樣的問題。

這篇文章的動機更多的是想要闡釋問題和技術(shù)難點。而不是關(guān)于如何解決它們。如果這里面的內(nèi)容有什么不合適的地方,我會根據(jù)需要做出一些改變。

通常,日志的傳輸工作流有主動和被動之分。

主動方式:進程主動將日志消息發(fā)送到遠程的syslog服務(wù)器上。通常,數(shù)據(jù)編碼的格式是會是rfc5424

Kubernetes日志傳輸過程中面臨的4個挑戰(zhàn)

被動方式:對于每個進程,指定其默認(rèn)的日志路徑或文件模式。日志代理系統(tǒng)將會定期掃描它們,并將捕獲的日志消息發(fā)送到日志服務(wù)器上面。

Kubernetes日志傳輸過程中面臨的4個挑戰(zhàn)

你可能認(rèn)為問題已經(jīng)解決了!還沒有,我的朋友們。

在容器中運行服務(wù)與在虛擬機或裸機中有所不同。因為我們將要面臨的新趨勢是:

  1. 這個過程將更加短暫。
  2. 流程部署將更加分散。

而這對容器的日志記錄意味著什么?

挑戰(zhàn)I:無法收集所有的關(guān)鍵日志

當(dāng)出現(xiàn)問題時,Pod(容器的集合)可能會被刪除或快速被重新創(chuàng)建。因此,與Pod/容器相關(guān)聯(lián)的日志文件將被快速刪除或重建。

然而,像Fluentdlog stash這樣的日志代理通常是通過定期掃描文件夾或日志模式來檢測新的日志文件的。默認(rèn)的掃描間隔可能是60秒(見下圖)。很可能會因為掃描間隔太長而無法捕獲短壽命的容器日志。那我們把時間間隔設(shè)置得更短,比如1秒,這樣又如何呢?顯然這會帶來更高的性能開銷。

Kubernetes日志傳輸過程中面臨的4個挑戰(zhàn)

這在以前的虛擬機世界中不會是個問題。當(dāng)進程以某種方式重新啟動時,日志文件可能會被輪換,而不是刪除。此時,用戶接收日志的速度可能只是會變慢。但不會缺少問題流程的關(guān)鍵日志。

我們?nèi)绾谓鉀Q這個問題呢?目前還沒有所謂的***實踐,我們也在探索。也許我們可以啟動一個訂閱pod事件的Kubernetes控制器。每當(dāng)觸發(fā)pod創(chuàng)建事件時,立即通知日志代理。 honeycomb-kubernetes-agent就是一個有趣的實現(xiàn)了這個想法的GitHub項目。如果您有更好的解決方案,請留下評論。

然而,并不是所有日志都會被重定向到stdout/stderr之中。如果pod內(nèi)的進程將日志寫入本地文件,而不是stdout/stderr當(dāng)中,那么日志代理系統(tǒng)無法獲取這些日志。

為什么? 日志代理系統(tǒng)只會監(jiān)視與pod相關(guān)的日志文件,如下所示。該日志文件將只捕獲容器的stdout/stderr。

 

  1. # ls -1  /var/lib/docker/containers/*/*-json.log 
  2. ls -1  /var/lib/docker/containers/*/*-json.log 
  3. /var/lib/docker/containers/0470.../0470...-json.log 
  4. /var/lib/docker/containers/0645.../0645...-json.log 
  5. /var/lib/docker/containers/12d2.../12d2...-json.log 
  6. ... 
  7. ... 

是的,這種日志記錄行為的確是Kubernetes世界的一種反模式。然而,云原生運動的發(fā)展仍然需要時間,不是每個人都能夠緊跟潮流。對于數(shù)據(jù)庫服務(wù)來說尤其如此。

與虛擬機世界相比,Pod可能會經(jīng)常在不同的工作節(jié)點中移動。您肯定不希望每當(dāng)K8s集群有一個pod更改時,就需要重新加載或重新啟動日志代理。這是新的挑戰(zhàn),對吧?

挑戰(zhàn)II:日志命名空間下的多租戶

Kubernetes的工作負(fù)載通常會在共享工作虛擬機中運行。來自不同項目的工作負(fù)載會以不同命名空間來進行劃分。

不同的項目可能對日志記錄有不同的偏好。日志轉(zhuǎn)到哪里,由什么工具管理,等等,都需要提供一種簡單的配置方式,并且沒有額外的安全隱患。

事實證明,在這方面,Kubernetes CRD (CustomResourceDefinition)是一個非常好的工具。

  1. 您需要學(xué)習(xí)的只是標(biāo)準(zhǔn)的kubectl命令。(參見kubectl備忘錄)。
  2. RBAC可以在這里用于資源的自定義。安全性也可以得到保證。

在PKS中,我們將這個特性稱為資源的sink。注意:這個想法已經(jīng)提交給了Kubernetes社區(qū)。希望它能很快并入Kubernetes上游。

Kubernetes日志傳輸過程中面臨的4個挑戰(zhàn)

挑戰(zhàn)III:支持為不同命名空間使用不同的日志SLA

為了方便,人們通常只需要部署一個日志代理來作為Kubernetes daemonset。這意味著每個Kubernetes工作節(jié)點只有一個pod。如果因為某種原因需要重新加載或重新安排此pod,它將影響在此工作節(jié)點中的所有Pod。

從K8s v1.12開始,你可以在每個節(jié)點上運行100個pod。相應(yīng)的,你需要確保你的日志代理足夠快,以便從所有pod中收集日志。

像任何共享的環(huán)境一樣,您可能會遇到一個嘈雜的鄰居問題。一個Pod的不當(dāng)行為可能會損害同一工作節(jié)點中的所有其他pod。想要禁用一個有問題的命名空間的日志記錄?雖然你可以很容易的將整個日志系統(tǒng)關(guān)閉,卻無法繼續(xù)收集需要收集的日志了。

另外,慢速的磁盤可能會給日志傳輸帶來顯著的延遲。如果無法及時處理日志的背壓問題可能會導(dǎo)致日志代理的DDoS。

Kubernetes日志傳輸過程中面臨的4個挑戰(zhàn)

挑戰(zhàn)四:處理來自不同層級的日志記錄

如下圖所示,我們有pod日志、K8s日志和平臺日志。即使是對于“pod日志”,我們也有來自標(biāo)準(zhǔn)工作負(fù)載或K8s加載項的日志。

正如你可能猜測的,不同類型的日志具有不同的特性,以及不同的優(yōu)先級。不僅是層與層之間,有時同一層的內(nèi)部也有不同的SLA。

為了提供K8s解決方案,我們可以如何解決這個問題呢?你需要在協(xié)助項目經(jīng)理和開發(fā)人員迅速找出問題根源的同時,盡量減少安全隱患。

什么是PKS?PKS是一個來自VMware和Pivotal的企業(yè)級Kubernetes解決方案。

原文地址: 4 Challenges In Kubernetes Log Transport ,作者:Denny Zhang

【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責(zé)任編輯:未麗燕 來源: 51CTO.com
相關(guān)推薦

2023-11-23 16:09:13

AIGenAI

2019-08-05 11:25:53

數(shù)據(jù)管理物聯(lián)網(wǎng)安全

2018-09-03 23:49:08

2023-09-12 10:53:34

2018-03-06 08:55:26

2020-11-25 13:11:19

智慧城市物聯(lián)網(wǎng)

2020-06-22 07:23:57

Kubernetes容器開發(fā)

2023-12-12 11:27:58

2020-12-07 05:35:34

安全運營中心網(wǎng)絡(luò)安全SOC

2023-07-06 14:29:11

2017-10-20 10:34:37

存儲雙活實施

2010-01-28 10:19:20

2021-08-20 14:59:32

機器學(xué)習(xí)人工智能工具

2020-03-16 13:16:48

Kubernetes選型踩坑

2012-05-21 09:57:13

IPv6

2020-05-07 11:36:22

遠程工作網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊

2012-07-06 09:45:03

虛擬化

2021-08-03 09:00:00

物聯(lián)網(wǎng)工業(yè)4.0技術(shù)

2024-01-15 14:39:45

以太網(wǎng)網(wǎng)絡(luò)電纜PoE系統(tǒng)
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 亚洲国产中文在线 | 国产乱码精品一区二区三区忘忧草 | 免费一级片 | 久久这里只有精品首页 | 超碰在线人人 | 国产福利91精品一区二区三区 | 黄网站在线播放 | 91精品国产91久久久久久最新 | 亚洲91 | 欧美午夜视频 | 久久这里只有精品首页 | 国产精品成人国产乱 | 看片地址 | 日韩一区二区三区在线观看 | 国产精品五月天 | 国产网站久久 | 国产精品精品 | 欧美视频第三页 | 久久精品综合 | 视频一区在线播放 | 激情欧美日韩一区二区 | 成人精品一区二区三区四区 | 久久久久国产一区二区三区不卡 | 国产精品视频久久久 | 精品久久九九 | 日韩在线精品强乱中文字幕 | 亚洲视频免费一区 | 美女久久久 | 香蕉久久a毛片 | www.色五月.com | 精品国产99 | 免费黄色的网站 | 久久最新精品 | 免费在线观看黄视频 | 一区二区免费看 | 国产成人精品一区二区 | 久久综合一区 | 日韩一级电影免费观看 | 国产成人久久av免费高清密臂 | 久久精品aaa | 一区二区免费在线视频 |