在Docker中,容器是最小的處理單元,增刪改查的對象是容器,容器是一種虛擬化技術,容器之間是隔離的,隔離是基于Linux Namespace 實現的。而在Kubernetes中,Pod包含一個或者多個相關的容器,Pod可以認為是容器的一種延伸擴展,一個Pod也是一個隔離體,而Pod內部包含的一組容器又是共享的(包括PID、Network、IPC、UTS)除此之外,Pod中的容器可以訪問共同的數據卷來實現文件系統的共享。
apiVersion: v1 # 指定api版本,此值必須在kubectl apiversion中 kind: Pod # 指定創建資源的角色/類型 metadata: # 資源的元數據/屬性 name: web01-pod # 資源名字,在同一個namespace中必須唯一 labels: # 設定資源的標簽 k8s-app: apache version: v1 kubernetes.io/cluster-service: "true" annotainons: # 自定義注解列表 - name: String # 自定義注解名字 spec: # specification of the resource content 指定該資源的內容 restartPolicy: Always # 表明該容器一直運行,默認k8s策略,在此容器退出后,會立即創建一個相同的容器 nodeSelector: # 節點選擇 zone: node1 containers: - name: web01-pod # 容器的名字 image: web:apache # 容器使用的鏡像地址 imagePullPolicy: Never # 容器啟動時檢查倉庫的策略,Always每次都檢查,Never從不檢查(不管本地是否有),IfNotPresent,如果本地有就不檢查,沒有就拉取 command: ['sh'] # 啟動容器的運行命令,將覆蓋容器的Entrypoint,對應Dockefile中的ENTRYPOINT args: ["$(str)"] # 啟動容器的命令參數,對應Dockerfile中的CMD參數 env: # 指定容器中的環境變量 - name: str # 變量的名字 value: "/etc/run.sh" # 變量的值 resources: # 資源管理 requests: # 容器運行時的最低資源需求 cpu: 0.1 # CPU資源(核數),最少值為0.001核(1m) memory: 32Mi # 內存資源 limits: # 資源限制 cpu: 0.5 memory: 32Mi ports: - containerPort: 80 # 容器開放對外的端口 name: httpd # 名稱 protocol: TCP livenessProbe: # pod內容器健康檢查的設置 httpGet: # 通過httpget檢查健康,200-399之間的容器正常 path: / # URI地址 port: 80 #host: 127.0.0.1 # 主機地址 scheme: HTTP initialDelaySeconds: 180 # 表明第一次檢測在容器啟動后多次時間后開始 timeoutSeconds: 5 # 檢測的超時時間 periodSeconds: 15 # 檢查間隔時間 #方法2 #exec: 執行命令的發法進行監測,如果其退出碼不為0,則認為容器正常 #command: #- cat #- /tmp/health #方法3 #tcpSocket: //通過tcpSocket檢查健康 #port: number lifecycle: # 聲明周期管理 postStart: # 容器創建之后,運行之前運行的任務 exec: command: - 'sh' - 'yum upgrade -y' preStop: # 容器關閉之前運行的任務 exec: command: ['service httpd stop'] volumeMounts: # 永久存儲掛載 - name: volume # 掛載設備名字,與volumes[*].name 需要對應 mountPath: /data # 掛載到容器的某個路徑下 readOnly: True volumes: # 定義一組掛載設備 - name: volume # 定義一個掛載設備的名字 #meptyDir:{} hostPath: path:/opt # 掛載設備類型為hostpath,路徑為宿主下的/opt
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/128143.html
摘要:前言我們一起回顧上一篇文章平臺的微服務架構和,一共通過構建了三個鏡像數據庫,部署前端頁面的,和接口。最近阿里云產品春節大促銷,我一時沒忍住又買了一臺服務器,打完折扣還是很貴。是一個非常穩定的,可移植的網絡文件系統。 前言 我們一起回顧上一篇文章《Bees平臺的微服務架構(1)docker和docker-compose》,一共通過Dockerfile構建了三個docker鏡像:mysql...
摘要:簡稱,是在年發布的一個開源項目。網絡要能夠通信,必須部署網絡,是其中一個可選方案。最常使用,可以管理多個副本,并確保按照期望的狀態運行,底層調用。用于每個最多只運行一個副本的場景。 Kubernetes 簡稱 k8s,是 google 在 2014 年發布的一個開源項目。 Kubernetes 解決了哪些問題? 真實的生產環境應用會包含多個容器,而這些容器還很可能會跨越多個服務器主機部...
摘要:擴展性好當集群的資源嚴重不足而導致排隊等待時,可以很容易的添加一個到集群中,從而實現擴展。用法,選擇盡可能使用這個節點鏡像,填寫,這個容器鏡像是我們的運行環境。更新文件,這里我們只是將中的鏡像更換成最新構建出的鏡像。基于Jenkins的CI/CD實踐[TOC]一、概要提到K8S環境下的CI/CD,可以使用的工具有很多,比如Jenkins、Gitlab CI、新興的drone等,考慮到大多公司...
摘要:基于年底或年初沒有推廣的現狀,唯品會部門目前已經做了兩年的時間。唯品會現狀唯品會目前線上有一千多個域,每個域之間相互的依賴比較復雜,每次的部署發布困難。這是唯品會的架構,主要包含持續集成和持續部署。 數人云上海&深圳兩地容器之Mesos/K8S/Swarm三國演義的嘉賓精彩實錄第三更來啦。唯品會是數人云Meetup的老朋友,去年曾做過RPC服務框架和Mesos容器化的分享。本次分享中,...
閱讀 1223·2023-02-24 11:21
閱讀 1422·2023-02-24 10:55
閱讀 2447·2023-02-24 10:47
閱讀 3139·2023-02-24 10:44
閱讀 898·2023-02-24 10:38
閱讀 623·2022-12-25 19:44
閱讀 764·2022-12-25 19:39
閱讀 880·2022-12-25 19:36