原创 筆記:kubernetes,scheduler,framework,plugins

閱讀kubernetes調度代碼的時候,看到這個pacakge: pkg/scheduler/framework 網上相關的資料很少,廢了老半天的勁兒終於找到,這裏記錄一下 scheduler framework https:/

原创 PodWorkers

PodWorkers是最終“同步”pod狀態的一塊邏輯, “同步”在這裏的含義是:確保kubelet所在節點的Pod狀態和etcd中的狀態一致,該增加的增加,該刪除的刪除,該更新的更新。 “同步”動作的觸發有幾個方式: (1)通過

原创 符合OCI規範的容器運行時 & kubernetes CRI

參考前一篇文章 目前的docker已經不是之前的docker了,技術棧進行了分層。 docker cli -> dockerd -> containerd -> oci implementation OCI規範,簡單來說,包含容器

原创 【轉載】gorouting的調度

轉載自:原文 前言 Goroutine調度是一個很複雜的機制,儘管Go源碼中提供了大量的註釋,但對其原理沒有一個好的理解的情況下去讀源碼收穫不會很大。下面嘗試用簡單的語言描述一下Goroutine調度機制,在此基礎上再去研讀源碼效

原创 docker各模塊介紹(筆記)

Docker在最開始的時候,可以認爲是一個單體程序,docker客戶端、docker守護進程、鏡像管理等功能都是放在同一個程序中的,整個docker的安裝非常簡單,因爲就一個可執行文件,在一定程度上也帶來的docker的飛速發展。 隨着容

原创 利用kubernetes的go語言sdk,client-go 操作kubernetes集羣

(1)採用minikube啓動一個k8s集羣 $minikube start ? minikube v1.0.0 on darwin (amd64) ? Downloading Kubernetes v1.14.0 images i

原创 java服務端對接apns的幾個sdk

JavaPNS https://code.google.com/archive/p/javapns/ Java APNS(notnoop) https://github.com/notnoop/java-apns db

原创 ThreadPoolExecutor隊列滿時提交任務阻塞

項目中有一個需求:給線程池提交任務的時候,如果任務隊列已滿,需要ThreadPoolExecutor.execute調用阻塞等待。google了相關的資料,記錄在這裏,供有同樣需求的同行參考。 https://stackoverf

原创 tensorflow代碼示例——單隱層神經網絡

#coding: utf-8 import tensorflow as tf from numpy.random import RandomState #每輪訓練輸入的數據量 batch_size = 8 ''' 含有一個隱藏

原创 本地數據庫引擎WiredTiger測試記錄

項目上有一個性能優化的需求,需要進一步優化遠程調用Redis導致的RT偏高問題,目前的想法是做兩級緩存,通過加入一個基於嵌入式數據庫引擎的本地緩存,來降低對遠端redis的依賴;大致的結構如下: 業務服務 —> 本地數據庫引擎 -

原创 golang net/http 包簡介

Kubernetes的Api Server中用到了golang的http包,故而做下簡單的瞭解。 package main import ( "fmt" "io" "net/http" ) func main() {

原创 Kubernetes三種Client的使用示例

kubernetes的Client庫——go-client中提供瞭如下三種類型的client ClientSet:可以訪問集羣中所有的原生資源,如pods、deployment等,是最常用的一種 dynamicClient: 可以

原创 DEMO:基於Kubernetes的CRD & Go-client 構建的一個查詢pod詳細信息的示例

本文是一個示例程序,展示一下如何基於Kubernetes的CRD(Custom Resource Defination)& Go-client構建一個查詢Pod詳細信息的服務。 該服務運行起來後,可以通過標準的kubernetes

原创 kubelet服務啓動流程中,默認參數的填充機制

本文跟蹤一下kubelet啓動過程中,參數的默認值是如何注入的。 我們知道,爲了啓動kubelet服務,首先要構造kubelet的配置對象,即kubeletconfig.KubeletConfiguration結構體, // Ne

原创 kube-scheduler源碼走讀

kube-scheduler是k8s中相對比較簡單的一個服務,它監聽api server獲取新建的Pod,從衆多的Node中選擇一個合適的,來運行該Pod。 選擇的過程分兩個階段:預選階段 & 優選階段 預選階段:根據Pod創建