Add node selectors

If you created multiple node pools in your cluster as recommended in the cluster setup prerequisites, then you must add the Cassandra and Message Processor nodes to their respective node pools. How you do this depends on whether you are using a GKE cluster or a non-GKE cluster.

For additional information, see Configure dedicated node pools.

Add node selectors for a GKE cluster

To add node selectors for a GKE cluster, add the following properties to your overrides.yaml file:

Property Value
cassandra.nodeSelector.key cloud.google.com/gke-nodepool
cassandra.nodeSelector.value stateful_nodepool_name
mp.nodeSelector.key cloud.google.com/gke-nodepool
mp.nodeSelector.value stateless_nodepool_name

The following example shows the GKE configuration for node selectors in which the stateful node pool for Cassandra nodes is named apigee-data and the stateless node pool for MP nodes is named apigee-runtime:

cassandra:
  nodeSelector:
    key: cloud.google.com/gke-nodepool
    value: apigee-data

mp:
  nodeSelector:
    key: cloud.google.com/gke-nodepool
    value: apigee-runtime

Add node selectors for a non-GKE cluster

For CNCF-conformant versions of Kubernetes (but not GKE or OpenShift), you must explicitly assign each worker node to the node pool, in addition to configuring the Message Process and Cassandra services in overrides.yaml.

To add node selectors for a non-GKE cluster:

  1. Assign Cassandra worker nodes to the stateful node pool by using kubectl, as the following example shows:
    kubectl label node cassandra_node_name node-pool=stateful_nodepool_name

    For example:

    kubectl label node ip-10-50-99-225.ec2.internal node-pool=apigee-data

    Repeat this step for each Cassandra worker node in the cluster.

  2. Assign Message Processor (MP) worker nodes to the stateless node pool by using kubectl, as the following example shows:
    kubectl label node mp_node_name node-pool=stateless_nodepool_name

    For example:

    kubectl label node ip-10-50-56-83.ec2.internal node-pool=apigee-runtime

    Repeat this step for each MP worker node in the cluster.

  3. Add the following properties to your overrides.yaml file:
    Property Value
    cassandra.nodeSelector.key cloud.google.com/gke-nodepool
    cassandra.nodeSelector.value stateful_nodepool_name
    mp.nodeSelector.key cloud.google.com/gke-nodepool
    mp.nodeSelector.value stateless_nodepool_name

    The following example shows the non-GKE configuration for node selectors in which the stateful node pool for Cassandra nodes is named apigee-data and the stateles node pool for MP nodes is named apigee-runtime:

    cassandra:
      nodeSelector:
        key: node-pool
        value: apigee-data
    
    mp:
      nodeSelector:
        key: node-pool
        value: apigee-runtime
    

Next step

1 2 3 4 5 6 7 Next: Logging 9 10 11