7.7. 外部データベースの設定
PostgreSQL データベースは、CodeReady Workspaces の状態に関するデータを永続化させるために、CodeReady Workspaces サーバーによって使用されます。これには、ユーザーアカウント、ワークスペース、設定についての情報、およびその他の詳細情報が含まれます。
デフォルトで、CodeReady Workspaces Operator はデータベースデプロイメントを作成し、管理します。
ただし、CodeReady Workspaces Operator はバックアップやリカバリーなどの完全なライフサイクル機能をサポートしません。
ビジネスに不可欠な環境では、以下の推奨される障害復旧オプションを使用して外部データベースを設定します。
- 高可用性 (HA)
- PITR (Point In Time Recovery)
オンプレミスの外部 PostgreSQL インスタンスを設定するか、または Amazon Relational Database Service (Amazon RDS) などのクラウドサービスを使用します。Amazon RDS を使用すると、通常の、およびオンデマンドのスナップショットを使用して、回復性のある障害復旧ストラテジーの Multi-Availability Zone 設定で実稼働データベースをデプロイできます。
データベースサンプルの設定例は以下のようになります。
パラメーター | 値 |
---|---|
インスタンスクラス | db.t2.small |
vCPU | 1 |
RAM | 2 GB |
Multi-az | true、2 つのレプリカ |
エンジンのバージョン | 9.6.11 |
TLS | enabled |
自動化されたバックアップ | 有効 (30 日) |
7.7.1. 外部 PostgreSQL の設定
外部 PostgreSQL を設定すると、ワークスペースメタデータおよびユーザー情報を永続化できます。
手順
以下のプレースホルダーの値を定義します。
-
<database-user>
は、CodeReady Workspaces サーバーデータベースのユーザー名です。 -
<database-password>
は、CodeReady Workspaces サーバーデータベースのパスワードです。 -
<database>
は、CodeReady Workspaces サーバーデータベースの名前です。
-
以下の SQL スクリプトを使用して、CodeReady Workspaces サーバーのユーザーおよびデータベースを作成し、ワークスペースのメタデータを永続化します。
CREATE USER <database-user> WITH PASSWORD '<database-password>' CREATE DATABASE <database> GRANT ALL PRIVILEGES ON DATABASE <database> TO <database-user> ALTER USER <database-user> WITH SUPERUSER
以下のプレースホルダーの値を定義します。
-
<identity-database-password>
は RH-SSO データベースのパスワードです。
-
以下の SQL スクリプトを使用して、RH-SSO バックエンドのデータベースを作成して、ユーザー情報を永続化します。
CREATE USER keycloak WITH PASSWORD '<identity-database-password>' CREATE DATABASE keycloak GRANT ALL PRIVILEGES ON DATABASE keycloak TO keycloak