I need your guidance on how to upgrade Kong from v0.10.1 to latest version (currently it is on v0.14.1). I need to do the steps on testing server before deploying it to production server. I can’t install v0.10.1, v0.10.4, v0.11.1, v0.11.2, v0.12.0, v0.12.1, v0.12.2 and v0.12.3. I settle down on version v0.13.0.
What I have done to the testing server is installing Kong v0.13.0 and add some data to Cassandra. I am now stuck on how to upgrade it. Here is the steps that I have done:
Create a Docker network. docker network create kong-net
Start database using Cassandra container. docker run -d --name kong-database --network=kong-net -p 9042:9042 cassandra:latest
Prepare database. docker run --rm --network=kong-net -e "KONG_DATABASE=cassandra" -e "KONG_PG_HOST=kong-database" -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" -e "KONG_DB_UPDATE_PROPAGATION=5" kong:0.13.0 kong migrations up
Can’t spend a lot of time going into tons of detail because you are a good many versions behind but I will do my best.
First and foremost read over this update path doc. It outlines every change from major version to major version you you understand the logic and behavior that has changed, it also gives great detail and insight to the changes you may have to make to your custom templates or plugins if you have any:
I would not recommend attempting that. I would upgrade version to version personally.
My answer to 4 is yes, generally the upgrade steps at a mile high level are this for me:
a. Existing Kong should be running with cache “warm” so it already has all vital resources stored in case the
db does not play nice with the running
b. Run kong migrations command on existing DB with newer version of Kong on your DB
c. Swap out the running older version of Kong for newer version of Kong on your environment. Depending
on how you deploy Kong(we use OpenShift Cloud platform which makes it crazy easy (dockerized) your
results and ability to do this smoothly may vary.
Yes, changes to the template files if you use custom templates. Like I mentioned at the beginning read the upgrade path documentation a few times before attempting to tackle an upgrade, worst thing you could do is rush through it and manage to break a Kong cluster in production without a good backout plan because I was not prepared haha, that would be my worst nightmare .