GitLab relocation service
Foreword
Please note the general information about our relocation service.
To migrate an existing GitLab instance, it is necessary that we have a current backup and the authentication file gitlab-secrets.json
. These are used to successfully migrate your entire GitLab instance.
We provide two different options for the migration:
1. migration via provision of the GitLab backup
This option is particularly suitable for GitLab servers that are operated locally on the intranet, for example, and are not accessible externally. In this variant, the backup and the authentication file are provided by you and transferred to the new GitLab server using the scp
/ rsync
command.
2. relocation via access to the GitLab server by our support
In this variant, our support gets access to your current GitLab instance and creates a daily backup at the time of the move. Our support team then transfers the backup and the authentication file to your new creoline server.
Both options are described in detail below so that you can decide which option is right for you. Please let our support team know which option you choose in the migration form.
Relocation via provision of the GitLab backup
To prepare the move, a current backup and the authentication file gitlab-secrets.json are required. Please also determine the GitLab version used in this process so that we can prepare the target server in the best possible way, as the exact same GitLab version is also required on both servers. If the GitLab version used is already known, this step can be skipped.
Preparation and backup creation
The GitLab version used can be determined with the following command:
gitlab-rake gitlab:env:info
Output:
GitLab information
Version: 17.10.0
The backup of the entire instance can then be created. Use the following command for this:
gitlab-backup create
After completion, the backup is stored under the following path:
/var/opt/gitlab/backups/
Deployment via scp
Deployment of the GitLab server backup:
scp /var/opt/gitlab/backups/17085XXXXX_XXXX_XX_XX_XX.X.X_gitlab_backup.tar benutzername@sXXXXX.creolineserver.com:/home/benutzername/
Provision of the GitLab secrets:
scp /etc/gitlab/gitlab-secrets.json benutzername@sXXXXX.creolineserver.com:/home/benutzername/
Replace the user name with that of your SSH system user and the host name with the host name of your new GitLab server. Please note that the user name must also be added to the path specification.
If the connection is rejected by the target server with the error message Connection refused
, check the cloud firewall of the target server to ensure that incoming connections from the source server to port 22 are explicitly permitted. For more information, see Cloud firewall.
Deployment via rsync
Provision of the GitLab server backup:
rsync -a /var/opt/gitlab/backups/17085XXXXX_XXXX_XX_XX_XX_XX.X.X_gitlab_backup.tar benutzername@sXXXXX.creolineserver.com:/home/benutzername/
Provision of the GitLab secrets:
rsync -a /etc/gitlab/gitlab-secrets.json benutzername@sXXXXX.creolineserver.com:/home/benutzername/
Replace the user name with that of your SSH system user and the host name with the host name of your new GitLab server. Please note that the user name must also be added to the path specification.
If the connection is rejected by the target server with the error message Connection refused
, check the cloud firewall of the target server to ensure that incoming connections from the source server to port 22 are explicitly permitted. For more information, see Cloud firewall.
Move via access to the GitLab server
For the move by our support, an SSH root access or alternatively an SSH access (at least read access to /var/opt/gitlab/backups/
and /etc/gitlab/
) is required, which allows the creation of a GitLab backup, as well as the transfer of this and the authentication file. You can store this in the associated migration form and send the password to our support team in encrypted form via a sharing link. Use secret.creoline.com for this purpose.
Our support team will then also check the GitLab version used and transfer the backup and the corresponding authentication file at the desired time.
To give our support access to your server, please store the following public SSH-RSA key in your authorized_keys
file:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQClyrj3vqTf2c194K3P7rW/ANSlV4899qg6M1nU7WJ3fDZ0muML9jTbG0ypbeMrWRu3EgtYPOo63llykt5daBaY9upUGJPNWPuwsLXiz3a5yQncWWHNNVez/H2Drcl4lqc8KyqkvvyBVEYMmtLfpjG/WagsC3LH/jiuEV7/f/0PMczBBFG8SvDtrx6B5huOkS6IERtYsNbzpeTJWk0B0qn/kafZe1nEg+9qVtL0UUXDDH2tJ+GGBXZOGNChTBh3rig5Vmn4VGJEVWu4za+Mv5dI8xAyTXzvfdLv0iQvRqVIpyBDhRMGP1uFBoSO5P2kzrIK9wJv5y7AUZkLbusVMsvFeCbpshhV5vPqNdGWpYsrIv3jOfF4h4ibD2JSYib6qQLiePwZzJFZAZskuJgWXb+8u84d7M5kuxaCsU/RRlZx6n6ODyqWhwWDZD9PEpuYrtWlg3tGkLIVBre14CAzuZ/CrQCIpZQ38lXHYDDpuulN/aTz7GOvJwrSgxGiF3koR0CMWfVWbflSZzTTab+jmyvBE/mHQhUUjmuTT2gqpW4tjHHcW8BPxMg0D1Rt8chbkav61EfwzvMn1NpVJCRodCqk1VPx2OQ6/XHJOZJ0RYPHhybgi5HY9tZIBqvYQtq/4Y/5Ut2IcIXV9cUDMHlq44ADq43XGZnP+/GSqqacEaJ0YQ== support@creoline.com
Please let us know in the relocation form if you would like our support team to relocate the entire GitLab instance.