Updating Gremlin
It's important to keep Gremlin up to date, in order to take advantage of new features and important bug fixes. Review Gremlin's relase notes for a full list of releases and associated changes.
Linux Packages
YUM
To upgrade to the latest gremlin packages:
1# You can also use specific versions (e.g. `gremlin-2.16.4 gremlind-2.16.4`).2sudo yum update gremlin gremlind
APT
To upgrade to the latest gremlin packages:
1# You can also use specific versions (e.g. `gremlin@2.16.4 gremlind@2.16.4`).2sudo apt update && sudo apt upgrade gremlin gremlind
Container Images
Gremlin hosts its gremlin/gremlin and gremlin/chao images on Docker Hub. They are tagged according to their release version.
If using the tag value of latest
with a PullPolicy of Always
, be mindful of Docker's image pull rate-limiting.
Kubernetes
1# VERSION=2.17.32# CHAO_VERSION=0.3.03kubectl set image daemonset/gremlin gremlin=gremlin/gremlin:$VERSION4kubectl set image deployment/chao chao=gremlin/chao:$CHAO_VERSION
Helm
1# VERSION=2.17.32# CHAO_VERSION=0.3.03helm upgrade -n gremlin gremlin gremlin/gremlin \4 --set image.tag=$VERSION \5 --set chaoimage.tag=$CHAO_VERSION \6 # NOTE: make sure you supply all helm values relevant to your installation
Other considerations for updating Gremlin
Downloading deb packages
1sudo apt update && sudo apt install --download-only gremlin gremlind
Downloading rpm packages
If you are supplying Gremlin packages to Linux machines outside of Gremlin's yum repository, you can download versions of the packages without installing them. Gremlin recommends using YUM's download-only functionality.
1yum --downloadonly gremlin gremlind
Without Yum Downloader
While Gremlin recommends downloading packages with YUM. You can download any Gremlin version with a BASH script like the one below:
1#!/bin/bash2## Download a Gremlin RPM without using yum3##4## requires: curl, xpath, gzip5##6VERSION=$(curl https://rpm.gremlin.com/noarch/latest | cut -d- -f1)7## Or optionally set a specific version8# VERSION=2.16.39curl -fsSL https://rpm.gremlin.com/noarch/$(\10 curl -fsSL https://rpm.gremlin.com/noarch/$(\11 curl -fsSL https://rpm.gremlin.com/noarch/repodata/repomd.xml \12 | xpath -e 'string(/repomd/data[@type="primary"]/location/@href)' 2>/dev/null) \13 | gunzip \14 | xpath -e 'string(/metadata/package[version/@ver="${VERSION}" and name="gremlin"][last()]/location/@href)' 2>/dev/null) \15 -o gremlin-${VERSION}.x86_64.rpm16curl -fsSL https://rpm.gremlin.com/noarch/$(\17 curl -fsSL https://rpm.gremlin.com/noarch/$(\18 curl -fsSL https://rpm.gremlin.com/noarch/repodata/repomd.xml \19 | xpath -e 'string(/repomd/data[@type="primary"]/location/@href)' 2>/dev/null) \20 | gunzip \21 | xpath -e 'string(/metadata/package[version/@ver="${VERSION}" and name="gremlind"][last()]/location/@href)' 2>/dev/null) \22 -o gremlind-${VERSION}.x86_64.rpm