Skip to content

使用peerfinder扩容插件

pader edited this page Feb 24, 2020 · 3 revisions

peerfinder 是一个k8s的扩容实验性项目,具体可以参考peer-finder

镜像版本解释

目前Nacos K8S演示的例子里面,有两个版本的peerfinder镜像

  • latest
  • 1.0

建议都使用1.0版本的镜像,里面增加了可以自定义填写k8s的cluster域名,latest版本默认都是cluster.local

插件参数

DOMAIN_NAME:自定义域名参数,可以参考nacos-pvc-nfs例子,这个参数仅仅在peerfinder镜像有用. SERVICE_NAME:nacos在k8s里面的service名称,可以参考nacos-pvc-nfs例子

注意事项

  1. service 一定要添加注解或者设置PublishNotReadyAddresses为true
## 这个注解是为了在所有pod未启动之前可以获取到dns节点信息
annotations:
    service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"

注意:在Kubernetes 1.13或者更高版本被弃用,后续只使用.Spec.PublishNotReadyAddresses Field

---
apiVersion: v1
kind: Service
metadata:
  name: nacos-headless
spec:
  selector:
    k8s-app: nacos
## 1.13以后请使用publishNotReadyAddresses代替tolerate-unready-endpoints注解
  publishNotReadyAddresses: true 
  ports:
    - name: nacosPort
      port: 8848
      targetPort: 8848
  clusterIP: None
  1. clusterIP 必须设置成NONE
spec:
  ports:
    - port: 8848
      name: server
      targetPort: 8848
## 如果不设置None会导致插件获取到的是集群ip,无法获取到下面节点的IP,如果不想设置成None目前只能移除peer-finder插件
  clusterIP: None
  selector:
    app: nacos
Clone this wiki locally