节点池管理
1)安装 Yurt-Manager 组件
nodepool controller 集成在 Yurt-Manager 组件中,使用 NodePool 之前需要先安装它,您可以参考 【部署 OpenYurt](https://openyurt.io/docs/installation/manually-setup/#32-setup-openyurtopenyurt-components) 了解详细操作。
2)节点池使用Example
- 创建一个节点池
$ cat <<EOF | kubectl apply -f -apiVersion: apps.openyurt.io/v1alpha1kind: NodePoolmetadata:name: beijingspec:type: CloudEOF$ cat <<EOF | kubectl apply -f -apiVersion: apps.openyurt.io/v1alpha1kind: NodePoolmetadata:name: hangzhouspec:type: Edgeannotations:apps.openyurt.io/example: test-hangzhoulabels:apps.openyurt.io/example: test-hangzhoutaints:- key: apps.openyurt.io/examplevalue: test-hangzhoueffect: NoScheduleEOF
- 使用kubectl get节点池信息
$ kubectl get npNAME TYPE READYNODES NOTREADYNODES AGEbeijing Cloud 35shangzhou Edge 28s
- 将节点加入到节点池
添加云端节点Cloud node到北京节点池,你只需将此节点按如下方式打上label即可
$ kubectl label node {Your_Node_Name} apps.openyurt.io/desired-nodepool=beijing
For example:$ kubectl label node master apps.openyurt.io/desired-nodepool=beijingmaster labeled
当然,你也可以将你的边缘节点Edge node添加到杭州节点池,方法和上面类似
$ kubectl label node {Your_Node_Name} apps.openyurt.io/desired-nodepool=hangzhouFor example:$ kubectl label node k8s-node1 apps.openyurt.io/desired-nodepool=hangzhouk8s-node1 labeled$ kubectl label node k8s-node2 apps.openyurt.io/desired-nodepool=hangzhouk8s-node2 labeled
- 验证节点已经加入节点池
当Edge node成功加入到节点池,节点的配置信息除了节点池Spec中的所有内容,同时,节点添加了一个新的标签:apps.openyurt.io/nodepool。
$ kubectl get node {Your_Node_Name} -o yamlFor Example:$ kubectl get node k8s-node1 -o yamlapiVersion: v1kind: Nodemetadata:annotations:apps.openyurt.io/example: test-hangzhoukubeadm.alpha.kubernetes.io/cri-socket: /var/run/dockershim.socknode.alpha.kubernetes.io/ttl: "0"node.beta.alibabacloud.com/autonomy: "true"volumes.kubernetes.io/controller-managed-attach-detach: "true"creationTimestamp: "2021-04-14T12:17:39Z"labels:apps.openyurt.io/desired-nodepool: hangzhouapps.openyurt.io/example: test-hangzhouapps.openyurt.io/nodepool: hangzhoubeta.kubernetes.io/arch: amd64beta.kubernetes.io/os: linuxkubernetes.io/arch: amd64kubernetes.io/hostname: k8s-node1kubernetes.io/os: linuxopenyurt.io/is-edge-worker: "true"name: k8s-node1resourceVersion: "1244431"selfLink: /api/v1/nodes/k8s-node1uid: 1323f90b-acf3-4443-a7dc-7a54c212506cspec:podCIDR: 192.168.1.0/24podCIDRs:- 192.168.1.0/24taints:- effect: NoSchedulekey: apps.openyurt.io/examplevalue: test-hangzhoustatus:***
