Cassandra Latest
Scale applications based on Cassandra query results.
Trigger Specification
This specification describes the cassandra
trigger that scales based on the outputs of a Cassandra query.
triggers:
- type: cassandra
metadata:
username: "cassandra"
port: "9042"
clusterIPAddress: "cassandra.default"
consistency: "Quorum"
protocolVersion: "4"
keyspace: "test_keyspace"
query: "SELECT COUNT(*) FROM test_keyspace.test_table;"
targetQueryValue: "1"
activationTargetQueryValue: "10"
Parameter list:
username
- The username credential for connecting to the Cassandra instance.port
- The port number of the Cassandra instance. (Optional, Can be set either here or inclusterIPAddress
)clusterIPAddress
- The IP address or the host name of the Cassandra instance.consistency
- Configuration for a session or per individual read operation. (Values:LOCAL_ONE
,LOCAL_QUORUM
,EACH_QUORUM
,LOCAL_SERIAL
,ONE
,TWO
,THREE
,QUORUM
,SERIAL
,ALL
, Default:ONE
, Optional)protocolVersion
- CQL Binary Protocol. (Default:4
, Optional)keyspace
- The name of the keyspace used in Cassandra.query
- A Cassandra query that should return single numeric value.targetQueryValue
- The threshold value that is provided by the user and used astargetValue
ortargetAverageValue
(depending on the trigger metric type) in the Horizontal Pod Autoscaler (HPA).activationTargetQueryValue
- Target value for activating the scaler. Learn more about activation here. (Default:0
, Optional)
Authentication Parameters
You can authenticate by using a password via TriggerAuthentication
configuration.
Password Authentication:
password
- Password for configured user to log in to the Cassandra instance.
Example
apiVersion: v1
kind: Secret
metadata:
name: cassandra-secrets
type: Opaque
data:
cassandra_password: CASSANDRA_PASSWORD
---
apiVersion: keda.sh/v1alpha1
kind: TriggerAuthentication
metadata:
name: keda-trigger-auth-cassandra-secret
spec:
secretTargetRef:
- parameter: password
name: cassandra-secrets
key: cassandra_password
---
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
name: cassandra-scaledobject
spec:
scaleTargetRef:
name: nginx-deployment
triggers:
- type: cassandra
metadata:
username: "cassandra"
port: "9042"
clusterIPAddress: "cassandra.default"
consistency: "Quorum"
protocolVersion: "4"
query: "SELECT COUNT(*) FROM test_keyspace.test_table;"
targetQueryValue: "1"
authenticationRef:
name: keda-trigger-auth-cassandra-secret