您好,登錄后才能下訂單哦!
本篇內容主要講解“kubernetes怎么將容器指定到某些節點運行”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“kubernetes怎么將容器指定到某些節點運行”吧!
假定部署的kubernetes集群有5個節點,一個master節點和4個work節點,默認master節點不調度Pod,所有Pod均在4個work節點上調度Pod。簡單列表如下:
hostname | role |
node1 | master |
node2 | work |
node3 | work |
node4 | work |
node5 | work |
現需要部署2個容器應用A和B,其中A屬于業務應用(例如springboot web應用),B屬于組件(例如redis、zookeeper等),需要將A應用指定到node2和node3節點上,將應用B指定到node4和node5節點上,通過這種方式將組件和業務應用進行隔離,具體實現如下:
1、查看當前集群節點標簽信息:
# 查看當前集群節點標簽信息
kubectl get nodes --show-labels
# 可以看到每個節點默認初始標簽大致如下
beta.kubernetes.io/arch=amd64,
beta.kubernetes.io/os=linux,
kubernetes.io/arch=amd64,
kubernetes.io/hostname=node2,
kubernetes.io/os=linux
2、通過部署類型標簽將node2、node3節點標記為業務應用,將node4、node5標記為組件應用:
kubectl label nodes node2 deploy.type=biz_appkubectl label nodes node3 deploy.type=biz_appkubectl label nodes node4 deploy.type=assembly_appkubectl label nodes node5 deploy.type=assembly_app# 確認標簽是否生效kubectl get nodes --show-labels
3、然后Pod指定配置如下:
apiVersion: apps/v1kind: Podmetadata: name: nginx-pod namespace: my-namespace labels: app: nginx-podspec: nodeSelector: deploy.type: assembly_app restartPolicy: Always containers: - name: nginx image: "nginx" ports: - containerPort: 80
到此,相信大家對“kubernetes怎么將容器指定到某些節點運行”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。