Kiwi lee在 argocd 部署時,遇到 metadata.annotations 無法部署在 argocd 部署時,遇到 metadata.annotations 無法部署,發現是因為 kubectl apply 時,會將 last-applied-configuration 的資訊放在裡面,導致 yaml 過大無法部署,可用 kubectl replace/crJul 3Jul 3
Kiwi leePrometheus label_replace, label_join, label_valueslabel_replace, label_join, label_values 的 function 使用方式,可協助我們整理 metrics label 的資訊Jun 28Jun 28
Kiwi lee在不改動 source code 的情況下,將 Opentelemetry 的 Python auto-instrumentation 加入,導入 trace/log/metrics 監控數據生成之前文章介紹了 opentelemetry 在 k8s 的安裝,今天要來接著把 instrumentation 來補完。將介紹無須改動 service code 的情況下,讓服務能透過 opentelemetry instrumentation…Jun 13Jun 13
Kiwi leeGrafana Tempo 儲存空間上的壓縮 wal/traces 在 local 模式介紹 grafana tempo 在 local 模式時,wal/traces 的流程與其壓縮演算法Jun 11Jun 11
Kiwi leeOpentelemetry collector 在 kubernetes 中的介紹,包含 opentelemetry 的運作基礎介紹 opentelmetry 的基礎概念,像是 collector 中的 receivers, processors, exports, service.pipeline 的參數設定,然後進入 k8s 的 opentelemetry,兩種版本的差異,及最後的安裝與 demoJun 7Jun 7
Kiwi leeazuredevops pipeline 的基礎工作元件介紹最近在接觸 azure devops 的 pipeline,做個學習的紀錄!此篇只會簡單的介紹工作單位元件,不會講到變數 (ex. Parameters, Variables, Resources) 的內容~May 16May 16
Kiwi leeAzureDevops 中的 continueOnError , condition=succeededOrFailed(), task.complete透過這幾個參數,可以決定我們使用 shell step 遇到錯誤時,該採取的行動。可以將自身的 step 標記為永遠的成功,避免干擾其他 step;可以忽略其他 step 的成功或失敗,將須執行;可以自行設定檢查,並且宣告失敗。以上雖然可以寫在 shell step…May 16May 16
Kiwi leeGunicorn 管理 workers 的 arbiter.py 機制從 source code 追查一下 gunicorn 是如何透過 arbiter 物件來管理 worker 的 life cycle,甚至是 rolling update。將介紹 initialize, loop, signal handling, spawn/kill…Apr 18Apr 18
Kiwi lee如何處理 Containerd 的 snapshots 佔據過的 disk已經把 image 清除掉,但仍然佔用很大空間時,該如何找到 root cause 並且成功的釋放空間Apr 2Apr 2
Kiwi leeContainerd 的 image/content/snapshot 在檔案系統的連結介紹如何從檔案系統,看到 image 下載到 content 後,並且解壓縮到 snapshot,預備 container 的啟動。Mar 21Mar 21