日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Jerry的Kubernetes学习笔记

發布時間:2023/12/19 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Jerry的Kubernetes学习笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 是時候使用Helm了:Helm, Kubernetes的包管理工具

  • 簡化Kubernetes應用部署工具-Helm安裝

  • Picking the Right Solution

  • 吐槽安裝的

  • Kubernetes on Ubuntu

  • Get Docker EE for Ubuntu

useful shell script

  • which kubectl
  • kubectl version
  • 查看ubuntu版本:cat /etc/issue
  • set proxy:
    export http_proxy=http://duotai:xxxxx@jerrywang.vip:24448
    export https_proxy=$http_proxy

Docker設置proxy的文件: /etc/default/docker

  • docker pull hello-world
  • docker run hellow-world
  • kubectl cluster-info

To further debug and diagnose cluster problems, use ‘kubectl cluster-info dump’.
Unable to connect to the server: context deadline exceeded (Client.Timeout exceeded while awaiting headers)

  • systemctl restart kube-apiserver
  • kubectl get nodes
  • kubectl get svc
  • kubectl describe node
  • kubectl get endpoints
  • kubectl get svc tomcat-service -o yaml
  • kubectl get namespaces --namespace=development
  • systemctl daemon-reload
  • systemctl enable etcd.service - 將服務加入開機啟動列表
  • systemctl start etcd.service
  • kubectl run nginx --image=nginx:1.12.2
  • etcdctl cluster-health - 驗證etcd是否正確啟動
  • kubectl describe pods
  • kubectl get pods -l environment=production,tier=frontend
  • kubectl get pods -l ‘environment in (production),tier in (frontend)’
  • export TILLER_NAMESPACE=$(kubectl config view -o json | jq -r “.contexts[0].context.namespace”)
  • get -o wide json -o=yaml
  • docker ps -a
  • nginx image html position: /usr/share/nginx/html

etcd, kube-controller-manager, kube-scheduler這些

Terminology

  • CRI Container Runtime Interface

第一章

  • 為什么被8080refused了呢。別著急,還沒有啟動呢,這是沒有成功連接kubernetes apiserver的節奏,一切正常,到目前為止,我們只是下載了一個可執行文件設置了權限而已。

  • 用replicationcontroller創建pod,再創建service,暴露cluster IP. tcp訪問。

  • kubelet是進程,向Master注冊自己

  • 一個pod內的容器與另外主機上的pod容器能夠直接通信。
  • pod的ip加上containerport,組成了endpoint,代表pod里的一個服務進程的對外通信地址。

    m:千分之一個CPU配額。

    Master node上的Controller Manager定期巡檢系統中存活的目標pod,確保其實例數量等于RC的期望值。

  • Deployment -> Replication Set->Pod copy creation
  • 檢查Deployment狀態來看部署動作是否完成

    HPA:Horizontal Pod Autoscaling - 橫向自動擴容

    通過跟蹤分析RC控制的所有目標POD的負載變化來確定是否需要針對性的調整目標POD的副本數。

    監控CPU使用率,當前使用量 / yaml里的pod request。

    HPA本身也是一種kind:HorizontalPodAutoscaler

    service就是我們說的微服務。Pod和RC其實都是為Service做鋪墊。

    Service和后端pod副本集群間通過Label Selector實現無縫對接。

    rc的作用:保證service的服務能力和質量始終處于預期的標準,服務之間通過TCP/IP通信。每個pod都有單獨的IP,和containerPort一起組成了end point,那組成集群后的入口是什么?負載均衡器(軟件或硬件),負責決定請求被轉發到哪個pod。每個node上都運行了kube-proxy進程,實際就是一個智能的軟件負載均衡器,負責把對service的請求轉發到后端某個pod上,并在內部實現服務的負載均衡與會話保持機制。

    每個service有一個全局唯一的虛擬IP地址,cluster IP,每個服務具有唯一IP地址的通信節點。整個生命周期內不變。內部pod的endpoint會隨銷毀和重新創建而發生變化。

  • targetPort: 確定提供宮該服務的容器所暴露的端口號,即具體業務進程在容器內的targetPort上提供TCP/IP接入,而port屬性則定義了service的虛端口。
  • 服務發現 - 如何通過Service name找到cluster ip?

    Cluster IP是Service創建后由Kubernetes自動分配的,其他pod無法預先知道某個service的cluster IP地址。因此需要一個服務發現機制來找到這個服務。

    a. Service生成一些Linux環境變量,pod啟動時注入環境變量。通過Add-On
    增值包引入DNS系統,把服務名作為dns域名。通過服務名建立通信連接。

  • Node ip:
  • node節點的IP地址。真實存在的物理網絡,Kubernetes集群外的節點訪問集群內的節點時,必須通過node ip進行通信。

    很多服務都存在多個端口,一個端口提供業務服務,另一個端口提供管理服務。

    Pod IP是每個pod的ip地址,是Docker engine根據docker0網橋的IP地址段進行分配的。通常是一個虛擬的二層網絡。

    一個pod里的容器訪問另一個pod里的容器,就是通過pod IP所在的虛擬二層網絡進行通信的,而真實的tcp/IP流量通過node IP所在的物理網卡流出。

    Cluster IP沒有一個實體網絡對象,因此無法被ping。不具備TCP/IP通信基礎,屬于Kubernetes集群的封閉空間。

    集群內部,node ip,pod IP,cluster IP之間的通信,采用的是一種特殊的路由規則,和IP路由完全不同。

    使用nodeport同外界通信。

    http://:

    nodeport就是一個TCP監聽端口。

    GCE - google cloud engine

    volume在pod中的意思是能被多個Docker訪問的共享目錄。

    Kubernetes中的volume與pod的生命周期相同,但與容器的生命周期無關。

    給volume定義一個名字,然后mount到docker的某個目錄下。

    volume類型:

    emptyDir: pod分配到node時創建,初始內容為空,無須指定宿主機上對應的目錄文件,由Kubernetes自動分配一個目錄,當pod從node上移除時,emptyDir中的數據也被永久刪除。

    用于臨時空間,一個容器需要從另一個容器中獲取數據的目錄。

    hostPath:在pod上掛載宿主機上的文件或目錄。

    • 容器應用程序生成的日志文件需要永久保存。
    • 需要訪問宿主機上Docker引擎內部數據結構的容器應用,定義hostPath
      為/var/lib/docker, 是容器內部應用可直接訪問Docker上的文件系統。

    PV只能是網絡存儲,不屬于任何Node,但可以在每個node上訪問。PV不是定義在node上的,而是獨立于pod之外定義。

  • namespace:多租戶隔離
  • 不同的分組在共享使用整個集群資源同時還能被分別管理. 默認是default。

  • annotation
  • annotation和label類似,都是key/value, 但label有嚴格的naming convention,定義的是Kubernetes對象的元數據,而且用于label selector,而annotation是用戶任意定義的附加信息,用于外部工具查找。

    第二章

  • 可在Google的GCE上安裝。
  • DNS(Domain Name System,域名系統),萬維網上作為域名和IP地址相互映射的一個分布式數據庫,能夠使用戶更方便的訪問互聯網,而不用去記住能夠被機器直接讀取的IP數串。通過域名,最終得到該域名對應的IP地址的過程叫做域名解析(或主機名解析)。DNS協議運行在UDP協議之上,使用端口號53

    如果在DNS服務器處顯示的是個人公司的內部網絡地址,那么說明該公司的DNS解析工作是交給公司內部的DNS服務器來完成的,這時需要檢查這個DNS服務器,在DNS服務器上進行nslookup操作看是否可以正常解析

    工作node上僅需部署kubelet和kube-proxy服務進程。

    Master與工作node間會有大量網絡通信,在防火墻上需配置各組件需要相互通信的端口號。

    etcd是Kubernetes集群的主數據庫

    Kubernetes各組件與Master之間通過apiserver的非安全端口http://apiserver:8080訪問,但如果apiserver需要對外提供服務,或者集群中某些容器需要訪問apiserver以獲取集群中的某些信息,CA簽名的雙向數字證書認證。

    google_containers/pause的鏡像實現pod的概念

    http://gcr.io

    第二章有很多命令行參數。

    進度

    2018-11-12 11:02AM 看到P38 1.4.6 Deployment,飛機上14:16看到42頁。
    20:30, p46, 三種ip. 10:15 53 namespace 22:31第一章結束。

    Docker

    Docker鏡像是由多個文件系統(只讀層)疊加而成。當我們啟動一個容器的時候,Docker會加載只讀鏡像層并在其上(譯者注:鏡像棧頂部)添加一個讀寫層。如果運行中的容器修改了現有的一個已經存在的文件,那該文件將會從讀寫層下面的只讀層復制到讀寫層,該文件的只讀版本仍然存在,只是已經被讀寫層中該文件的副本所隱藏。當刪除Docker容器,并通過該鏡像重新啟動時,之前的更改將會丟失。在Docker中,只讀層及在頂部的讀寫層的組合被稱為Union File System(聯合文件系統)。

    為了能夠保存(持久化)數據以及共享容器間的數據,Docker提出了Volume的概念。簡單來說,Volume就是目錄或者文件,它可以繞過默認的聯合文件系統,而以正常的文件或者目錄的形式存在于宿主機上。

    learn from internet

    確保pod數量:它會確保Kubernetes中有指定數量的Pod在運行。如果少于指定數量的pod,Replication Controller會創建新的,反之則會刪除掉多余的以保證Pod數量不變。

    確保pod健康:當pod不健康,運行出錯或者無法提供服務時,Replication Controller也會殺死不健康的pod,重新創建新的。

    彈性伸縮 :在業務高峰或者低峰期的時候,可以通過Replication Controller動態的調整pod的數量來提高資源的利用率。同時,配置相應的監控功能(Hroizontal Pod Autoscaler),會定時自動從監控平臺獲取Replication Controller關聯pod的整體資源使用情況,做到自動伸縮。

    滾動升級:滾動升級為一種平滑的升級方式,通過逐步替換的策略,保證整體系統的穩定,在初始化升級的時候就可以及時發現和解決問題,避免問題不斷擴大。

    see:https://www.jianshu.com/p/6bc8e0ae65d1

    Docker Swarm vs Kubernetes

    minikube相關

    • Kubectl: Kubernetes with minikube times out

    總結

    以上是生活随笔為你收集整理的Jerry的Kubernetes学习笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 亚洲区视频 | 国产欧美精品一区二区色综合 | 爱草视频| 手机成人免费视频 | 国产性xxx | 国产美女喷水 | 日本二区三区视频 | 福利片一区二区 | 久久久久久99精品 | 日本在线视频www色 国产在线视频网址 | 国产欧美精品aaaaaa片 | 91豆花视频 | 亚洲乱码中文字幕久久孕妇黑人 | 操你啦在线视频 | 亚洲免费激情视频 | xxx毛片 | 亚洲国产一二三 | 日本三级网站在线观看 | 亚洲欧美动漫 | 中文字幕日韩在线视频 | 日本www在线观看 | 丁香婷婷久久 | 久久第一页 | 国产精品12区 | 久久伊人免费视频 | aa毛片视频| 6080电视影片在线观看 | 丰满人妻一区二区三区53号 | 国产精品亚洲一区 | 国产人成一区二区三区影院 | 欧美亚洲| 久久久国产精品无码 | 火影忍者羞羞漫画 | 色欲av伊人久久大香线蕉影院 | 成人免费毛片日本片视频 | 亚洲在线免费看 | 国产浮力第一页 | 国产在线久 | 婷婷调教口舌奴ⅴk | 美女网站在线 | 日本xxxx人 | 亚洲a视频在线观看 | 91网页入口 | 韩国美女被c | 日本污视频在线观看 | 自拍偷拍日韩精品 | 亚洲国产成人精品一区二区三区 | 喷水少妇 | 欧美黄页 | 久久不卡免费视频 | 国产精品久草 | 国产无遮挡又黄又爽又色 | 国产中文字幕91 | 久久久伦理片 | 亚洲乱码在线 | 国产黑丝在线 | 黄色一级淫片 | 野外吮她的花蒂高h在线观看 | 一区二区啪啪 | 51成人做爰www免费看网站 | 日本一区二区三区久久久久 | 国产一级视频在线播放 | 免费黄色三级 | 欧美色图亚洲激情 | 在线中文字幕亚洲 | 熟妇人妻av无码一区二区三区 | 香蕉影院在线 | 精品久久久久一区二区 | 熟妇人妻无乱码中文字幕真矢织江 | 日本jizzjizz | 国产吞精囗交免费视频 | 天天碰免费视频 | 97青草| 中日韩欧美在线观看 | 免费a级片在线观看 | 美女的奶胸大爽爽大片 | 精品久久久久久久久久久久久 | 国产在线视频不卡 | 伊人青青久| 一区在线看 | 动漫美女被到爽流 | 日批视频免费观看 | 国产精品丝袜视频 | 老司机福利院 | 成人做受视频试看60秒 | 日韩亚洲欧美综合 | 久久国产精品首页 | 神马午夜51| 狠狠操你| 日韩天堂在线 | 521a人成v香蕉网站 | 国产乱码精品一区二区三 | www.五月婷| 在线激情网站 | av色先锋| www.黄色片网站 | 成人h片在线观看 | 日本三级网站在线观看 | 在哪看毛片 |