以前のバージョンからのアップグレード
Space On-Premises は前方更新のみをサポートしており、以前のバージョンにダウングレードすることはできません。Space インスタンスを更新する方法は、それがマイナー更新であるかメジャー更新であるかによって異なります。
マイナーアップデート
これらの更新により、Space のマイナーバージョンが変更されます (たとえば、2023.1.0
から 2023.1.1
)。このような更新には重大な変更はなく、通常はバグ修正やセキュリティパッチが含まれます。
この手順では、Space On-Premises インスタンスが space-on-premises
ディレクトリにインストールされることを暗示しています。
Space インストールディレクトリを開きます。
cd space-on-premisesdocker-compose.yml
ファイルの最新バージョンを https://assets.on-premises.service.jetbrains.space/(英語) からダウンロードします。例: 最新バージョンが 2024.2.1 の場合:export SPACE_RELEASE_NAME="2024.2.1" curl -O "https://assets.on-premises.service.jetbrains.space/${SPACE_RELEASE_NAME}/docker-compose.yml"以前の Space バージョン用に
docker-compose.yml
をカスタマイズした場合は、対応する変更を新しいdocker-compose.yml
に適用します。Space インスタンスを再起動します。
docker-compose -p space-on-premises up
チャートリポジトリのローカルデータを更新します。
helm repo updateHelm リリースをアップグレードします。
helm -n ${KUBE_NAMESPACE} upgrade ${SPACE_RELEASE_NAME} ${HELM_REPO}/${CHART_NAME} -f values.yamlここで、
values.yaml
は、現在の Space On-Premises インスタンスの値ファイルです。
主要なアップデート
これらの更新により、Space のメジャーバージョンが変更されます (たとえば、2023.1.1
から 2023.2.0
、または 2024.2.1
から 2024.2.1
)。このような更新により新しい機能が追加され、データベースやインフラストラクチャ構成の変更が必要になる場合があります。メジャーアップデートを実行するには、このセクションの説明に従って Space データを移行する必要があります。
新しいバージョンを実行する前に古いバージョンを完全にシャットダウンする必要があるため、ダウンタイムなしで移行を実行することはできません。必ずメンテナンス期間を計画し、今後のアクティビティについてユーザーに通知してください。
移行前
移行を開始する前に、Space データをバックアップすることを強くお勧めします。ここにでは、何をバックアップする必要があるかについての主な考慮事項を見つけることができます。
移行方法
データ移行プロセスは、Docker Compose インストールと Kubernetes インストールでは異なります。
わかりやすくするために、この手順では、現在の Space On-Premises インスタンスが space-on-premises-oldversion
ディレクトリにインストールされていることを示しています。新しい Space On-Premises インスタンスは space-on-premises-newversion
ディレクトリにインストールされます。
新しい Space インスタンスのインストールディレクトリを作成して開きます。
mkdir -p space-on-premises-newversion && cd space-on-premises-newversiondocker-compose.yml
ファイルの最新バージョンを https://assets.on-premises.service.jetbrains.space/(英語) からダウンロードします。例: 最新バージョンが 2024.2.1 の場合:export SPACE_RELEASE_NAME="2024.2.1" curl -O "https://assets.on-premises.service.jetbrains.space/${SPACE_RELEASE_NAME}/docker-compose.yml"以前の Space バージョン用に
docker-compose.yml
をカスタマイズした場合は、対応する変更を新しいdocker-compose.yml
に適用します。移行には Space 構成ファイルの編集が必要です。つまり、ファイルを Space コンテナーからホストマシンにコピーする必要があります。以前に既存の Space インスタンスをカスタマイズしたことがある場合、これはすでに完了しています。そうでない場合は、
space-on-premises-oldversion
ディレクトリを開いて次を実行します。docker-compose -p space-on-premises run --entrypoint=cp -v {absolute_path_to_config_folder_on_host}:/home/copy-config init-configs -a /home/init-config/config/. /home/copy-configここで、
{absolute_path_to_config_folder_on_host}
は、ホストマシン上の構成ファイルの宛先ディレクトリへのパスです。ここに従って、新しい Space インスタンス (
space-on-premises-newversion
ディレクトリ内のインスタンス) のカスタマイズを有効にします。space-on-premises-newversion
ディレクトリを開き、新しい Space バージョンの構成ファイルを作成します。docker-compose -p space-on-premises run --entrypoint=sh init-configs /prepare_default_configs.shパラメーター値を古いバージョンの構成ファイルから新しい Space バージョンのファイルにコピーします。値をコピーする必要があるファイルとパラメーターのリストは次のとおりです。
space.on-premises.conf
:circlet.masterSecret
circlet.oauth.accessToken.rsa.public
circlet.oauth.accessToken.rsa.private
circlet.oauth.message.encoding.key
circlet.oauth.twoFactor.encryptionKey
circlet.oauth.encryptionKey
circlet.oauth.messageSigning.rsa.public
circlet.oauth.messageSigning.rsa.private
circlet.vcs.secret
circlet.vcs.identity.email
circlet.vcs.identity.secretKey_base64
circlet.webhooks.key
circlet.packages.oauth.clientSecret
packages.on-premises.conf
:circlet.packages.oauth.clientSecret
vcs.on-premises.conf
:circlet.key
vcs.ssh.server.key.rsa.base64
Vcs.gpg.public_key.base64
新しい Space バージョンの
packages.on-premises.conf
ファイルに、circlet.masterSecret
パラメーターを追加します。その値はspace.on-premises.conf
ファイル内の値と同じである必要があります。(この手順は、最初に Space On-Premises 2022.1.0-BETA でインスタンスを作成した場合にのみ関係します。Space On-Premises 2022.1.0 以降でインスタンスを作成した場合は、この手順をスキップしてください)。
space-on-premises-newversion
ディレクトリ内のdocker-compose.yml
ファイルを開きます。Space サービスの Java オプションを定義する行を見つけます。JAVA_OPTS: "-Dconfig.file=/home/space/circlet-server-onprem/config/space.on-premises.conf"さらにオプションを 1 つ追加します。JAVA_OPTS: "-Dconfig.file=/home/space/circlet-server-onprem/config/space.on-premises.conf -Dcirclet.organization.domain=jetbrains"space-on-premises-oldversion
ディレクトリで次のコマンドを実行して、Space の現在のインスタンス (古いバージョン) を停止します。docker-compose -p space-on-premises downspace-on-premises-newversion
ディレクトリで次のコマンドを実行して、新しい Space インスタンスを開始します。docker-compose -p space-on-premises up -d
Kubernetes インストールでは、PostgreSQL、MinIO/S3 互換ストレージ、Elasticsearch、Redis が外部サービスとして構成されます。これらは、新しい Space On-Premises インスタンスで引き続き使用できます。
現在の Space インスタンスのバージョンを古いバージョンと呼び、アップグレードする予定の Space バージョンを新しいバージョンと呼びます。
Space デプロイオブジェクトの名前を取得します。
kubectl -n ${KUBE_NAMESPACE} get deployments -l app.kubernetes.io/name=space --output=jsonpath={..metadata.name}手順 1 のオブジェクトに関連するすべての pods を正常にシャットダウンします。
for deployment in $(kubectl -n ${KUBE_NAMESPACE} get deployments -l app.kubernetes.io/name=space --output=jsonpath={..metadata.name}); do kubectl -n ${KUBE_NAMESPACE} scale deploy ${deployment} --replicas=0 done古いバージョンの Space On-Premises に関連するすべてのデプロイオブジェクトを削除します。
for deployment in $(kubectl -n ${KUBE_NAMESPACE} get deployments -l app.kubernetes.io/name=space --output=jsonpath={..metadata.name}); do kubectl -n ${KUBE_NAMESPACE} delete deploy ${deployment} donehelm install
(Kubernetes のインストールを参照) を使用して Space On-Premises インスタンスをインストールした場合は、Helm リリースをアップグレードします。helm -n ${KUBE_NAMESPACE} upgrade ${SPACE_RELEASE_NAME} ${HELM_REPO}/${CHART_NAME} -f values.yamlここで、
values.yaml
は、現在の Space On-Premises インスタンスの値ファイルです。あるいは、現在の Space インスタンスのマニフェストを生成し、
kubectl
で適用することもできます。helm -n ${KUBE_NAMESPACE} template ${SPACE_RELEASE_NAME} ${HELM_REPO}/${CHART_NAME} -f values.yaml | kubectl -n ${KUBE_NAMESPACE} apply -f-
関連ページ:
![](https://resources.jetbrains.com/help/img/space/K8sWorkersStructure.png)
Kubernetes クラスターに Space をインストールする
このガイドでは、Helm を使用してローカル Kubernetes クラスターに Space On-Premises をインストールする方法を説明します。インストール要件:Kubernetes バージョン 1.21 以降 Helm バージョン 3.6.0 以降クラスターワーカークラスターには少なくとも 5 つのワーカーがあります。OS: Linux、プラットフォーム: x86_64/amd64、推奨される最小リソース: 4 つの CPU コアと 8GB のメモリ、名前空間専用の Kubernetes...
![](https://pleiades.io/icons/jetbrains_logo.png)
Docker Compose 実稼働環境用の Space の構成
Space オンプレミスインスタンスのカスタマイズを有効にする:Space On-Premises の Docker Compose インストールには、すぐに使用できる事前定義された構成が付属しています。ただし、Space On-Premises を運用環境で動作させるには、追加の構成を実行する必要があります。Space オンプレミス構成は、Space アプリケーションコンテナーに保存されるファイルのセットです。Space オンプレミスを構成するには、ファイルをホストマシンにコピーして変更し、...
![](https://resources.jetbrains.com/help/img/space/onpremK8sCluster.png)
Kubernetes のインストール
Space On-Premises の Kubernetes インストールは、より大きなワークロードの処理に適したスケーラブルなソリューションを提供します。クラスター自体は、独自の環境、Amazon Elastic Kubernetes Service、Google Kubernetes Engine、または Kubernetes をサポートするその他のクラウドサービスで実行できます。サポートされる Kubernetes の最小バージョンは 1.21 です。概要:ユーザーは、モバイルアプリ、W...
![](https://resources.jetbrains.com/help/img/space/onpremUploadUsageReport.png)
Space オンプレミスライセンスを更新または変更する
次の手順に従ってください。ライセンスの有効期限が切れた場合、または期限が近づいている場合は、サブスクリプションを更新してください。ハイエンドのサブスクリプションプランにアップグレードしてください。より安価な、または無料のサブスクリプションプランにダウングレードします。JetBrains アカウントページに移動します。Space オンプレミスインスタンスの登録に使用したユーザー名 / メールを使用して JetBrains アカウントにサインインしていることを確認してください。左側のパネルで、組織名...