A few things to keep in mind. First a name change. During the 0.X versions the software was called Graylog2. Starting with the release of 1.0 the name was changed go Graylog. I'm pretty happy about the change. Graylog2 was a bit of a mouthful and including version numbers in package names has always annoyed me anyway. However, changing the version number makes the upgrade a bit harder.
I would plan this upgrade for a time when you can expect to not receive logs. During part of the upgrade you will have two instances of Graylog installed which may conflict with each other.
Package Repository
If you followed my previous posts you know I deal with Ubuntu, but modifying the steps to something
more RedHaty should be relatively easy. First thing's first, we have to change where we download
the packages. Edit /etc/apt/sources.list.d/graylog2.list
to look more like this
With this version they changed to HTTPS for package delivery so make sure you also have the
apt-transport-https
package installed.
Install the New Packages
Since the name of the software changed the packages also changed. This one's easy. Just do a
At this point we have both Graylog2 0.{whatever} and Graylog 1.0 installed.
Update Graylog Server Config
The configuration file path is very similar between the two, which makes it easy. Historically
graylog2-server
installed its config files in one of two locations. The primary config file
is /etc/graylog2.conf
and all other files are in /etc/graylog2/server/
. Starting with
Graylog 1.0 all server config files are stored in /etc/graylog/server/
. The quick and dirty
approach is to just
I would actually recommend checking a diff of the files first and make sure you don't need to update anything manually.
There were a few references to graylog2
in file paths that needed to be corrected, but there was
only one setting that desperately needed changed. With Graylog 1.0 there's a new option called
a message journal that is used. If you don't specify a location in the config file it will default
to /data/journal/
which may result in startup errors. I plopped it in the same corresponding
location as the old message cache.
Also make sure to copy over the node-id
. Otherwise your Graylog 1.0 instance will show up as a
new server node which could cause some problems down the road.
Update Graylog Web Config
The default web server configuration file name has changed from graylog2-web-interface.conf
to
web.conf
which better matches Graylog Server. We're going to follow much the same process as
above. First validate the web server configs and copy them over.
On my system no other files needed modification, but you might want to check them out as well.
Recycle Services
Along with everything else the service names also changed. Cycle all the services to get the new instance up and running.
Cleanup
Since the service account user changed we'll go ahead and change ownership to the new user.
Next kill all the old packages.
Now delete all the old config files. Make sure you have backups, just in case.
Now we can kill all the old caches.
Once your local log retention schedule has expired to ahead and wipe the application logs as well.
Now kill the old service accounts. They're completely unecessary at this point and can be removed.
Finalize
At this point we should be totally good to go with our new environment. Log in to the web interface and browse around. Make sure the inputs are listening where they should be. Verify that data is actually accessible. If not, well, I wish you the best of luck in your exciting new troubleshooting endeavors!