Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for Cassandra 3.x #831

Closed
mikesparr opened this issue Dec 29, 2015 · 6 comments
Closed

Support for Cassandra 3.x #831

mikesparr opened this issue Dec 29, 2015 · 6 comments
Milestone

Comments

@mikesparr
Copy link

Using the latest Kong 0.5.4 and connecting to a 4-node Cassandra cluster fails on startup. In reading on the error it implies that the database client driver is not up-to-date to support latest version(s) of db. Is there support for Cassandra 3.x or how can this be resolved?

Console with error upon startup

ubuntu@app1:~$ sudo kong start
[INFO] Using configuration: /etc/kong/kong.yml
[INFO] Kong version.......0.5.4
       Proxy HTTP port....8000
       Proxy HTTPS port...8443
       Admin API port.....8001
       dnsmasq port.......8053
       Database...........cassandra data_centers= strategy_class=NetworkTopologyStrategy timeout=1000 contact_points=db1:9042,db2:9042,db3:9042,db4:9042 keepalive=60000 keyspace=kong
[INFO] Connecting to the database...
[ERR] Cassandra error: Failed to prepare statement: "SELECT * FROM system.schema_keyspaces WHERE keyspace_name = ?;". Cassandra returned error (Invalid): unconfigured table schema_keyspaces

Cassandra versions:

ubuntu@db2:~$ cqlsh db2
Connected to my-cluster-name at db2:9042.
[cqlsh 5.0.1 | Cassandra 3.1.1 | CQL spec 3.3.1 | Native protocol v4]
Use HELP for help.

Kong config (database section):

## Specify the DAO to use
database: cassandra

## Databases configuration
databases_available:
  cassandra:
    properties:
      contact_points:
        - "db1:9042"
        - "db2:9042"
        - "db3:9042"
        - "db4:9042"
      timeout: 1000
      keyspace: kong
      keepalive: 60000 # in milliseconds
      strategy_class: NetworkTopologyStrategy
      data_centers:
        DC1: 2
      # ssl: false
      # ssl_verify: false
      # ssl_certificate: "/path/to/cluster-ca-certificate.pem"
      # user: cassandra
      # password: cassandra

Any tips are appreciated. I moved from local db instance on app server to centralized cluster so installed latest db versions and now it fails. I don't want to downgrade db to 2.x versions.

@thibaultcha
Copy link
Member

The driver needs to be tested against 3.0 and eventually updated to support it. Ideally it would also have to support the binary protocol v4. Then, Kong needs to be tested and eventually updated to support 3.0 too, if any change is necessary.

Since Cassandra 2 is currently considered the most stable version, we have not considered supporting 3.0 because of other priorities. In the future, we might still consider supporting other databases such as Postgres a higher priority than supporting Cassandra 3.0.

@mikesparr
Copy link
Author

Thanks for quick reply. It looks like I can downgrade and pin 2.2.4 for now until 3.x support is available. Serves me right for wanting the latest and greatest but realized our local dev is on 2.2.3 anyway so will be in sync. ;-)

@mikesparr
Copy link
Author

Ansible playbook tweak to deb version and pins and re-run... we are back in business in 20 minutes. Thanks again and whenever 3.x supported we'll upgrade here too.

@SandeshSarfare
Copy link

I cant see kong config anywhere

@thibaultcha
Copy link
Member

thibaultcha commented Oct 18, 2016

#1709 has been merged! This will land in 0.10.

@thibaultcha thibaultcha added this to the 0.10 RC milestone Oct 18, 2016
@jaylinwang
Copy link

😈 i have a same problem, but find this issue now. expect for 0.10 publish

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants