如果需要限制Pod到指定的Node上运行,则可以给Node打标签并给Pod配置NodeSelector。

给节点添加标签

首先查看节点信息

[root@k8s-master ~]# kubectl get nodes
NAME STATUS AGE
k8s-slave01 Ready 4d
k8s-slave02 Ready 4d

选择一个节点,给这个节点添加一个标签

[root@k8s-master ~]# kubectl label nodes k8s-slave01 disktype=abc
node "k8s-slave01" labeled

查看标签信息

[root@k8s-master ~]# kubectl get nodes --show-labels
NAME STATUS AGE LABELS
k8s-slave01 Ready 4d beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,disktype=abc,kubernetes.io/hostname=k8s-slave01
k8s-slave02 Ready 4d beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=k8s-slave02

向指定节点上创建pod

mysql-rc-xxx.yaml文件示例

kind: ReplicationController
metadata:
name: mysql-master
namespace: default
labels:
name: mysql-master
version: v1
spec:
replicas: 1
selector:
name: mysql-master-pod
version: v1
template:
metadata:
labels:
name: mysql-master-pod
version: v1
spec:
containers:
- image: docker.io/mysql
name: master
ports:
- containerPort: 3306
nodeSelector:
disktype: abc
env:
- name: MYSQL_ROOT_PASSWORD
value: "123456"
volumeMounts:
- name: mysql-storage
mountPath: /var/lib/mysql
volumes:
- name: mysql-storage
hostPath:
path: /data/mysql_master

创建pod

[root@k8s-master k8s_yamls]# kubectl create -f  mysql-rc-master.yaml
replicationcontroller "mysql-master" created

mysql-svc-xxx.yaml示例

apiVersion: v1
kind: Service
metadata:
name: mysql-master-svc
namespace: default
labels:
name: mysql-master-svc
spec:
externalIPs:
- 192.168.44.61
type: NodePort
ports:
- port: 3306
protocol: TCP
targetPort: 3306
name: http
nodePort: 30006
selector:
name: mysql-master-pod

创建svc

[root@k8s-master k8s_yamls]# kubectl create -f  mysql-svc-master.yaml
service "mysql-master-svc" created

查看是否在slave01上

[root@k8s-master ~]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE
mysql-master-5h2kg 1/1 Running 0 42m 172.17.25.2 k8s-slave01

Kubernetes集群向指定节点上创建容器的更多相关文章

  1. 探针配置失误,线上容器应用异常死锁后,kubernetes集群未及时响应自愈重启容器?

    探针配置失误,线上容器应用异常死锁后,kubernetes集群未及时响应自愈重启容器? 探针配置失误,线上容器应用异常死锁后,kubernetes集群未及时响应自愈重启容器? 线上多个服务应用陷入了死 ...

  2. kubernetes 集群添加node节点

    kubernetes 集群添加node节点 注意,我们并不需要把新增的node ip加入到证书里重新生成!!! 下面我们以添加node03为例 一.添加集群里个节点的hostname并设置好对应主机名 ...

  3. 记录一个奇葩的问题:k8s集群中master节点上部署一个单节点的nacos,导致master节点状态不在线

    情况详细描述; k8s集群,一台master,两台worker 在master节点上部署一个单节点的nacos,导致master节点状态不在线(不论是否修改nacos的默认端口号都会导致master节 ...

  4. kubernetes 集群新增node 节点并将应用分配到新增节点

    第一章 1.重新安装一台kubernetes node节点,新增节点:192.168.1.192 网址:https://www.cnblogs.com/zoulixiang/p/9504324.htm ...

  5. 【转载】浅析从外部访问 Kubernetes 集群中应用的几种方式

    一般情况下,Kubernetes 的 Cluster Network 是属于私有网络,只能在 Cluster Network 内部才能访问部署的应用.那么如何才能将 Kubernetes 集群中的应用 ...

  6. Kubernetes集群使用CentOS 7.6系统时kubelet日志含有“Reason:KubeletNotReady Message:PLEG is not healthy:”信息

    问题描述 Kubernetes集群使用CentOS 7.6版本的系统时,kubelet日志中可能存在以下告警信息. Reason:KubeletNotReady Message:PLEG is not ...

  7. kubeadm搭建kubernetes集群之二:创建master节点

    在上一章kubeadm搭建kubernetes集群之一:构建标准化镜像中我们用VMware安装了一个CentOS7虚拟机,并且打算用这个虚拟机的镜像文件作为后续整个kubernetes的标准化镜像,现 ...

  8. 用kubeadm创建高可用kubernetes集群后,如何重新添加控制平面

    集群信息 集群版本:1.13.1 3个控制平面,2个worker节点 k8s-001:10.0.3.4 k8s-002:10.0.3.5 k8s-003:10.0.3.6 k8s-004:10.0.3 ...

  9. Kubernetes — 从0到1:搭建一个完整的Kubernetes集群

    准备工作 首先,准备机器.最直接的办法,自然是到公有云上申请几个虚拟机.当然,如果条件允许的话,拿几台本地的物理服务器来组集群是最好不过了.这些机器只要满足如下几个条件即可: 满足安装 Docker ...

随机推荐

  1. Java——三大特性

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  2. Maven入门-1.介绍及搭建开发环境

    1.介绍1.1 Maven和Ant的比较?2.搭建Maven开发环境2.1 配置环境变量2.2 测试安装是否成功2.3 配置Maven的本地仓库位置3.Maven的约定4.Maven项目类型5.Mav ...

  3. <NET CLR via c# 第4版>笔记 第5章 基元类型、引用类型和值类型

    5.1 编程语言的基元类型 c#不管在什么操作系统上运行,int始终映射到System.Int32; long始终映射到System.Int64 可以通过checked/unchecked操作符/语句 ...

  4. 笔记本用HDMI、VGA连接高清电视全过程实录2——各种问题

    内容中包含 base64string 图片造成字符过多,拒绝显示

  5. Webroot SecureAnywhere AntiVirus 2014 – 免费6个月

    Webroot SecureAnywhere 是由webroot推出的一款云安全软件,除了能够清除病毒外,特点是体积小.强力查杀木马.间谍软件.Rootkit 等等,为你的个人私隐信息提供全面的保护. ...

  6. ubuntu:在ubuntu上安装vmware12

    在ubuntu上安装vmware12 下载vmware12 https://pan.baidu.com/s/1i5BQEmL  官方的 密匙    5A02H-AU243-TZJ49-GTC7K-3C ...

  7. 使用C++实现二叉搜索树的数据结构

    需要注意的地方: ①二叉搜索树删除一个指定结点R,若R为叶子结点,则将R的父结点中指向R的指针改为指向nullptr:若R的左右子结点一个为空,一个非空,则将R的父结点中指向R的指针改为指向R的非空子 ...

  8. WIN7下用笔记本创建无线网

    系统要求:WIN7  硬件要求:拥有无线网卡  网络要求:已经连接internet 1.启用并设定虚拟Wifi网卡:运行以下命令启用虚拟无线网卡(相当于打开路由器): netsh wlan set h ...

  9. I.MX6 PWM buzzer driver hacking with Demo test

    /***************************************************************************** * I.MX6 PWM buzzer dr ...

  10. fff

    https://qa.tutormeet.com/tutormeet/tutormeet_FF.html?lang=3&data=MjAxODAzMjcxODAwMTQ1OXwyNzQ2fGp ...