Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 9 Next »

Contents

Document Details

Prepared By

Reviewed By

Date

Document Version

Fernando Cisneros

Artem Kalaitan

21-June-2022

V 1

Fernando Cisneros

Artem Kalaitan

14-July-2022

V 2

Fernando Cisneros

Artem Kalaitan

27-July-2022

V 3

Introduction

This document outlines the steps to install and update K3s servers and how to deploy and backup Synergy services.

Register Server – Reseller 1

In case you use licensing portal to get a license for your customer, or you have an integration with your organisations Order Processing system (i.e. Salesforce or Bitrix) then you must skip this step!

Log in to your Rancher cluster and click on Import Existing and choose Generic:

Choose an unique name for the cluster and configure 2 labels cluster_name=$CLUSTER_NAME cluster_reseller=$RESELLER_NAME.

For example, cluster_name=acmecorp give it a name that would be easy to recognise later when checking the dashboard, for instance, a customer company name.

Cluster_reseller should always be your organisation’s name. In doubt, use getvisibility.

Then press Create:

Copy the registration command

kubectl apply -f https://....k3s.getvisibility.com/v3/import/fr84....yaml

and send it to the client.

K3s Installation - Client

Refer to the following page for the installation details: K3s Installation

Deploy Synergy – Reseller

  1. Go to Rancher dashboard and wait for the new cluster to become Active:



  2. Select the cluster name and go to Apps > Charts and install the GetVisibility Essentials Helm chart:

  3. Go to Apps > Charts and install the GetVisibility Monitoring Helm chart:

Install into Project: Default


4. Go to the global menu Continuous Delivery > Clusters and click on Edit config for the cluster:

5. Add 2 labels  product=synergy environment=prod and press Save.


Update – Client

Synergy backend services

Updates and custom settings are automatically applied to all Synergy backend services as long as the cluster has access to the public internet and can connect to the management server.

In case there’s no internet connection or the management server is down, the cluster agent will keep trying to reach the management server until a connection can be established.

K3s cluster

To upgrade K3s from an older version to a specific version you can run the following command:

curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=vX.Y.Z-rc1 sh -

Stop the old k3s binary (e.g. systemctl stop k3s) and start it again (e.g. systemctl start k3s). For more details please refer to the official documentation.

Certificates

By default, certificates in K3s expire in 12 months. If the certificates are expired or have fewer than 90 days remaining before they expire, the certificates are rotated when K3s is restarted.

Backup - Client

Consul

Find the IP of the server where Consul is running (in case you have a multi-node cluster):

kubectl get pod/gv-essentials-consul-server-0 -o jsonpath='{.spec.nodeName}'

Log into the server using SSH and execute the following command to take a snapshot of Consul:

kubectl exec -it gv-essentials-consul-server-0 -- consul snapshot save /consul/data/backup.snap

Find the path where the snapshot has been save to:

kubectl get pvc/data-default-gv-essentials-consul-server-0 -o jsonpath='{.spec.volumeName}' | xargs -I{} kubectl get pv/{} -o jsonpath='{.spec.hostPath.path}'

Copy the snapshot file to a safe place.

PostgreSQL

Find the IP of the server where the PostgreSQL master is running (in case you have a multi-node cluster):

kubectl get pod/gv-postgresql-0 -o jsonpath='{.spec.nodeName}'

Log into the server using SSH and execute the following command to backup all databases:

kubectl exec -it gv-postgresql-0 -- bash -c "pg_dumpall -U gv | gzip > /home/postgres/pgdata/backup.sql.gz"

Find the path where the backup has been save to:

kubectl get pvc/pgdata-gv-postgresql-0 -o jsonpath='{.spec.volumeName}' | xargs -I{} kubectl get pv/{} -o jsonpath='{.spec.hostPath.path}'

Copy the backup file to a safe place.

End of Document

1 The registration process will be automated through the Customer Management API

  • No labels