From 437a4cd25f77a239cc578f80f32444092ebfed7e Mon Sep 17 00:00:00 2001 From: Chris Estes <106166814+ccestes@users.noreply.github.com> Date: Mon, 20 Jun 2022 09:47:38 -0400 Subject: [PATCH 01/12] code block changes (excluded install topics) --- .../55/08_mtk_command_options.mdx | 31 ++++++++++--------- .../55/11_unsupported_features.mdx | 2 +- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx b/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx index eb022978d11..8029f05eb82 100644 --- a/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx +++ b/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx @@ -399,14 +399,14 @@ Table `tab3` is also loaded in two chunks, `tab3_chunk1` and `tab3_chunk2`. As t Here is the the list of tables and table chunks created: - ```text - tab1_chunk1 (25,000 rows) - tab1_chunk2 (25,000 rows) - tab2 (9500 rows) - tab3_chunk1 (25,001 rows) - tab3_chunk2 (25,000 rows) - tab4 (9999 rows) - ``` +```text +tab1_chunk1 (25,000 rows) +tab1_chunk2 (25,000 rows) +tab2 (9500 rows) +tab3_chunk1 (25,001 rows) +tab3_chunk2 (25,000 rows) +tab4 (9999 rows) +``` Thread pool with the four threads `T1, T2, T3, T4` is created. @@ -570,7 +570,7 @@ The uppercase naming convention is preserved for tables, views, sequences, proce The default behavior of the Migration Toolkit without the `-useOraCase` option is that database object names are extracted from Oracle without enclosing quotation marks unless the database object was explicitly created in Oracle with enclosing quotation marks. The following is a portion of a table command generated by the Migration Toolkit with the `-offlineMigration` option: -```text +```sql CREATE TABLE DEPT ( DEPTNO NUMBER(2) NOT NULL, DNAME VARCHAR2(14), @@ -582,7 +582,7 @@ ALTER TABLE DEPT ADD CONSTRAINT DEPT_DNAME_UQ UNIQUE (DNAME); When you then migrate this table and create it in EDB Postgres Advanced Server, all unquoted object names are converted to lowercase letters, so the table appears in EDB Postgres Advanced Server as follows: -```text +```sql Table "edb.dept" Column | Type | Modifiers --------+-----------------------+----------- @@ -596,7 +596,7 @@ Indexes: If your EDB Postgres Advanced Server applications are referencing the migrated database objects using quoted uppercase identifiers, the applications fail since the database object names are now in lower case. -```text +```sql usepostcase=# SELECT * FROM "DEPT"; ERROR: relation "DEPT" does not exist LINE 1: SELECT * FROM "DEPT"; @@ -604,7 +604,7 @@ LINE 1: SELECT * FROM "DEPT"; If your application uses quoted uppercase identifiers, perform the migration with the `-useOraCase` option. The DDL encloses all database object names in quotes: -```text +```sql CREATE TABLE "DEPT" ( "DEPTNO" NUMBER(2) NOT NULL, "DNAME" VARCHAR2(14), @@ -616,7 +616,7 @@ ALTER TABLE "DEPT" ADD CONSTRAINT "DEPT_DNAME_UQ" UNIQUE ("DNAME"); When you then migrate this table and create it in EDB Postgres Advanced Server, all object names are maintained in uppercase letters, so the table appears in EDB Postgres Advanced Server as follows: -```text +```sql Table "EDB.DEPT" Column | Type | Modifiers --------+-----------------------+----------- @@ -630,8 +630,9 @@ Indexes: Applications can then access the object using quoted uppercase names. -```text +```sql useoracase=# SELECT * FROM "DEPT"; +__OUTPUT__ DEPTNO | DNAME | LOC --------+------------+---------- 10 | ACCOUNTING | NEW YORK @@ -701,7 +702,7 @@ This example performs an Oracle to EDB Postgres Advanced Server migration. The following is the content of the `toolkit.properties` file. -```text +```sql SRC_DB_URL=jdbc:oracle:thin:@192.168.2.6:1521:xe SRC_DB_USER=edb SRC_DB_PASSWORD=password diff --git a/product_docs/docs/migration_toolkit/55/11_unsupported_features.mdx b/product_docs/docs/migration_toolkit/55/11_unsupported_features.mdx index f6b5507076a..ed7be5eb169 100644 --- a/product_docs/docs/migration_toolkit/55/11_unsupported_features.mdx +++ b/product_docs/docs/migration_toolkit/55/11_unsupported_features.mdx @@ -51,7 +51,7 @@ EDB Postgres Advanced Server doesn't currently support the enum data type but wi The following code sample includes a simple example of a check constraint that restricts the value of a column to one of three dept types; `sales`, `admin` or `technical`. -```text +```sql CREATE TABLE emp ( emp_id INT NOT NULL PRIMARY KEY, dept VARCHAR(255) NOT NULL, From d4eaf43ea160c77cc4cd6cbd1421ed09f0cbf76d Mon Sep 17 00:00:00 2001 From: Chris Estes <106166814+ccestes@users.noreply.github.com> Date: Wed, 22 Jun 2022 10:57:28 -0400 Subject: [PATCH 02/12] feedback changes --- .../55/08_mtk_command_options.mdx | 76 +++++++++++++------ 1 file changed, 51 insertions(+), 25 deletions(-) diff --git a/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx b/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx index 8029f05eb82..4e191cd28e3 100644 --- a/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx +++ b/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx @@ -37,27 +37,39 @@ If you specify the `-offlineMigration` option in the command line, Migration Too To perform an offline migration of both schema and data, specify the `‑offlineMigration` keyword, followed by the schema name: -`$ ./runMTK.sh -offlineMigration ` +```shell +$ ./runMTK.sh -offlineMigration +``` Each database object definition is saved in a separate file with a name derived from the schema name and object type in your home folder. To specify an alternative file destination, include a directory name after the `‑offlineMigration` option: -`$ ./runMTK.sh -offlineMigration ` +```shell +$ ./runMTK.sh -offlineMigration +``` To perform an offline migration of schema objects only (creating empty tables), specify the `‑schemaOnly` keyword in addition to the `‑offlineMigration` keyword when invoking Migration Toolkit: -`$ ./runMTK.sh -offlineMigration -schemaOnly ` +```shell +$ ./runMTK.sh -offlineMigration -schemaOnly +``` To perform an offline migration of data only, omitting any schema object definitions, specify the `‑dataOnly` keyword and the `‑offlineMigration` keyword when invoking Migration Toolkit: -`$ ./runMTK.sh -offlineMigration -dataOnly ` +```shell +$ ./runMTK.sh -offlineMigration -dataOnly +``` By default, data is written in COPY format. To write the data in a plain SQL format, include the `‑safeMode` keyword: -`$ ./runMTK.sh -offlineMigration -dataOnly -safeMode ` +```shell +$ ./runMTK.sh -offlineMigration -dataOnly -safeMode +``` By default, when you perform an offline migration that contains table data, a separate file is created for each table. To create a single file that contains the data from multiple tables, specify the `‑singleDataFile` keyword: -`./runMTK.sh -offlineMigration -dataOnly -singleDataFile -safeMode ` +```shell +$ ./runMTK.sh -offlineMigration -dataOnly -singleDataFile -safeMode +``` !!! Note The `-singleDataFile` option is available only when migrating data in a plain SQL format. You must include the `-safeMode` keyword if you include the `‑singleDataFile` option. @@ -70,19 +82,27 @@ You can use the edb-psql or psql command line to execute the scripts generated d 1. Use the `createdb` command to create the acctg database, into which you'll restore the migrated database objects: - `createdb -U enterprisedb acctg` + ```shell + $ createdb -U enterprisedb acctg + ``` 2. Connect to the new database with edb-psql: - `edb-psql -U enterprisedb acctg` + ```shell + $ edb-psql -U enterprisedb acctg + ``` 3. Use the `\i` meta-command to invoke the migration script that creates the object definitions: - `acctg=# \i ./mtk_hr_ddl.sql` + ```shell + $ acctg=# \i ./mtk_hr_ddl.sql + ``` 4. If the `-offlineMigration` command included the `‑singleDataFile` keyword, the `mtk_hr_data.sql` script will contain the commands required to re-create all of the objects in the new target database. Populate the database with the command: - `acctg=# \i ./mtk_hr_data.sql` + ```shell + $ acctg=# \i ./mtk_hr_data.sql + ``` @@ -400,12 +420,12 @@ Table `tab3` is also loaded in two chunks, `tab3_chunk1` and `tab3_chunk2`. As t Here is the the list of tables and table chunks created: ```text -tab1_chunk1 (25,000 rows) -tab1_chunk2 (25,000 rows) -tab2 (9500 rows) -tab3_chunk1 (25,001 rows) -tab3_chunk2 (25,000 rows) -tab4 (9999 rows) +tab1_chunk1 (25,000 rows) +tab1_chunk2 (25,000 rows) +tab2 (9500 rows) +tab3_chunk1 (25,001 rows) +tab3_chunk2 (25,000 rows) +tab4 (9999 rows) ``` Thread pool with the four threads `T1, T2, T3, T4` is created. @@ -454,7 +474,7 @@ T3 → tab3 (50,001 rows) T4 → tab4 (9999 rows) ``` -### System resource recommendations and constraints** +### System resource recommendations and constraints Choose the number of threads depending on the CPU and RAM resources available on the host system running MTK. As there is a certain overhead on the source database in terms of CPU, IO, and disk utilization, exceeding parallel thread count beyond a certain threshold degrades the performance of MTK. @@ -520,7 +540,9 @@ The `dblink_ora` module provides EDB Postgres Advanced Server-to-Oracle connecti This example uses the `dblink_ora` `COPY API` to migrate all tables from the `HR` schema: -`$./runMTK.sh -copyViaDBLinkOra -allTables HR` +```shell +$./runMTK.sh -copyViaDBLinkOra -allTables HR +``` The target EDB Postgres Advanced Server database must have `dblink_ora` installed and configured. For information about `dblink_ora`, see [Database Compatibility for Oracle Developers](../../epas/11/epas_compat_ora_dev_guide/06_dblink_ora). @@ -530,13 +552,17 @@ Choose this option to migrate Oracle database links. The password information fo To migrate all database links using edb as the dummy password for the connected user: -`$./runMTK.sh -allDBLinks HR` +```shell +$./runMTK.sh -allDBLinks HR +``` You can alternatively specify the password for each of the database links through a comma-separated list of name=value pairs with no intervening space characters. Specify the link name on the left side of the pair and the password value on the right side. To migrate all database links with the actual passwords specified on the command line: -`$./runMTK.sh -allDBLinks LINK_NAME1=abc,LINK_NAME2=xyz HR` +```shell +$./runMTK.sh -allDBLinks LINK_NAME1=abc,LINK_NAME2=xyz HR +``` Migration Toolkit migrates only the database link types that are currently supported by EnterpriseDB. This includes fixed user links of public and private type. @@ -582,7 +608,7 @@ ALTER TABLE DEPT ADD CONSTRAINT DEPT_DNAME_UQ UNIQUE (DNAME); When you then migrate this table and create it in EDB Postgres Advanced Server, all unquoted object names are converted to lowercase letters, so the table appears in EDB Postgres Advanced Server as follows: -```sql +```text Table "edb.dept" Column | Type | Modifiers --------+-----------------------+----------- @@ -702,7 +728,7 @@ This example performs an Oracle to EDB Postgres Advanced Server migration. The following is the content of the `toolkit.properties` file. -```sql +```ini SRC_DB_URL=jdbc:oracle:thin:@192.168.2.6:1521:xe SRC_DB_USER=edb SRC_DB_PASSWORD=password @@ -714,9 +740,9 @@ TARGET_DB_PASSWORD=password The following command invokes Migration Toolkit: -`$ ./runMTK.sh EDB` - -```text +```shell +$ ./runMTK.sh EDB +__OUTPUT__ Running EnterpriseDB Migration Toolkit (Build 48.0.0) ... Source database connectivity info... conn =jdbc:oracle:thin:@192.168.2.6:1521:xe From d402071c394668a94fd002d1dc6870721f67adce Mon Sep 17 00:00:00 2001 From: Chris Estes <106166814+ccestes@users.noreply.github.com> Date: Wed, 22 Jun 2022 11:34:38 -0400 Subject: [PATCH 03/12] more changes --- .../docs/migration_toolkit/55/11_unsupported_features.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/product_docs/docs/migration_toolkit/55/11_unsupported_features.mdx b/product_docs/docs/migration_toolkit/55/11_unsupported_features.mdx index ed7be5eb169..193112b2586 100644 --- a/product_docs/docs/migration_toolkit/55/11_unsupported_features.mdx +++ b/product_docs/docs/migration_toolkit/55/11_unsupported_features.mdx @@ -62,7 +62,7 @@ CREATE TABLE emp ( If you test the check constraint by entering a valid dept type, the INSERT statement works without error: -```text +```sql test=# INSERT INTO emp VALUES (7324, 'sales'); INSERT 0 1 @@ -70,7 +70,7 @@ INSERT 0 1 If you try to insert a value not included in the constraint (`support`), EDB Postgres Advanced Server returns an error: -```text +```sql test=# INSERT INTO emp VALUES (7325, 'support'); ERROR: new row for relation "emp" violates check constraint "emp_dept_check" From 71c44980399697d864356616542253a868693a5f Mon Sep 17 00:00:00 2001 From: Dee Dee Rothery <83650384+drothery-edb@users.noreply.github.com> Date: Mon, 27 Jun 2022 07:37:22 -0400 Subject: [PATCH 04/12] consistency changes --- .../docs/migration_toolkit/55/08_mtk_command_options.mdx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx b/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx index 4e191cd28e3..f600b3bbbb8 100644 --- a/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx +++ b/product_docs/docs/migration_toolkit/55/08_mtk_command_options.mdx @@ -608,7 +608,7 @@ ALTER TABLE DEPT ADD CONSTRAINT DEPT_DNAME_UQ UNIQUE (DNAME); When you then migrate this table and create it in EDB Postgres Advanced Server, all unquoted object names are converted to lowercase letters, so the table appears in EDB Postgres Advanced Server as follows: -```text +```sql Table "edb.dept" Column | Type | Modifiers --------+-----------------------+----------- @@ -658,7 +658,6 @@ Applications can then access the object using quoted uppercase names. ```sql useoracase=# SELECT * FROM "DEPT"; -__OUTPUT__ DEPTNO | DNAME | LOC --------+------------+---------- 10 | ACCOUNTING | NEW YORK From 068ed68bb53d1867e28cdbb0559f6823c033a824 Mon Sep 17 00:00:00 2001 From: Chris Estes <106166814+ccestes@users.noreply.github.com> Date: Wed, 29 Jun 2022 16:45:03 -0400 Subject: [PATCH 05/12] PostGIS: code block changes --- .../postgis/3.1/02_creating_extensions.mdx | 10 ++-- .../docs/postgis/3.1/03_upgrading_postgis.mdx | 48 +++++++++---------- .../docs/postgis/3.1/04_using_postgis.mdx | 21 ++++---- .../postgis/3.1/05_uninstalling_postgis.mdx | 12 ++--- 4 files changed, 45 insertions(+), 46 deletions(-) diff --git a/product_docs/docs/postgis/3.1/02_creating_extensions.mdx b/product_docs/docs/postgis/3.1/02_creating_extensions.mdx index 24c53553909..1487d20f301 100644 --- a/product_docs/docs/postgis/3.1/02_creating_extensions.mdx +++ b/product_docs/docs/postgis/3.1/02_creating_extensions.mdx @@ -12,32 +12,32 @@ After installing PostGIS, create a PostGIS database and the extensions in each d 1. Before creating the postgis database, we recommend creating a superuser to administer the database. To create the user, navigate to the bin directory under your EDB Postgres Advanced Server installation and connect to the server with the psql client: - ```text + ```sql ./psql -d edb -U enterprisedb -h 127.0.0.1 ``` 2. Invoke the following command to create a privileged role: - ```text + ```sql CREATE ROLE gisadmin LOGIN PASSWORD 'password' SUPERUSER; ``` 3. Log out of psql and connect as gisadmin: - ```text + ```sql edb=# \q ./psql -d edb -U gisadmin -h 127.0.0.1 ``` 4. Invoke the following command to create the postgis database owned by gisadmin: - ```text + ```sql CREATE DATABASE postgis; ``` 5. Use the `\c` command to switch to the postgis database, and use the `CREATE EXTENSION` command to create the PostGIS extensions: - ```text + ```sql \c postgis CREATE EXTENSION postgis; CREATE EXTENSION postgis_topology; diff --git a/product_docs/docs/postgis/3.1/03_upgrading_postgis.mdx b/product_docs/docs/postgis/3.1/03_upgrading_postgis.mdx index 378eba65654..3e90bce3114 100644 --- a/product_docs/docs/postgis/3.1/03_upgrading_postgis.mdx +++ b/product_docs/docs/postgis/3.1/03_upgrading_postgis.mdx @@ -23,13 +23,13 @@ The following example walks you through the process of upgrading PostGIS version 1. To upgrade PostGIS version 2.4.6 to PostGIS version 3.1.1 for EDB Postgres Advanced Server 9.6, assume the superuser privileges and invoke the following command: - ```text + ```shell yum upgrade edb-as96-postgis-3.1.1 -y ``` 2. To update extensions, switch to `enterprisedb` user, connect to the database (where you have already created extensions) with the psql client application, and execute the following commands: - ```text + ```sql edb=# alter extension postgis update to '3.1.1'; WARNING: unpackaging raster WARNING: PostGIS Raster functionality has been unpackaged @@ -37,12 +37,12 @@ The following example walks you through the process of upgrading PostGIS version ALTER EXTENSION ``` - ```text + ```sql edb=# alter extension address_standardizer update to '3.1.1'; ALTER EXTENSION ``` - ```text + ```sql edb=# SELECT postgis_extensions_upgrade(); NOTICE: Updating extension postgis_sfcgal from 2.4.6 to 3.1.1 NOTICE: Packaging extension postgis_raster @@ -74,13 +74,13 @@ Step 1 - To upgrade PostGIS version 2.4.6 to 3.1.2, you need to upgrade it to 3. 1. Navigate to the bin directory of EDB Advanced Server 9.6: - ```text + ```shell cd /usr/edb/as9.6/bin/ ``` 2. Assume the superuser privileges and invoke the following command to upgrade to PostGIS version 3.1.1: - ```text + ```shell yum upgrade edb-as96-postgis-3.1.1 -y ``` @@ -89,7 +89,7 @@ Step 1 - To upgrade PostGIS version 2.4.6 to 3.1.2, you need to upgrade it to 3. 3. To update extensions, switch to `enterprisedb` user, connect to the database (where you have already created extensions) with the psql client application, and execute the following commands: - ```text + ```sql edb=# alter extension postgis update to '3.1.1'; WARNING: unpackaging raster WARNING: PostGIS Raster functionality has been unpackaged @@ -97,12 +97,12 @@ Step 1 - To upgrade PostGIS version 2.4.6 to 3.1.2, you need to upgrade it to 3. ALTER EXTENSION ``` - ```text + ```sql edb=# alter extension address_standardizer update to '3.1.1'; ALTER EXTENSION ``` - ```text + ```sql edb=# SELECT postgis_extensions_upgrade(); NOTICE: Updating extension postgis_sfcgal from 2.4.6 to 3.1.1 NOTICE: Packaging extension postgis_raster @@ -118,13 +118,13 @@ Step 2 - Upgrade to PostGIS version 3.1.2 1. To upgrade PostGIS version 3.1.1 to 3.1.2, invoke the following command for EDB Postgres Advanced Server 9.6: - ```text + ```shell yum upgrade edb-as96-postgis-3.1.2 -y ``` 2. To update extensions, switch to `enterprisedb` user and execute the following commands: - ```text + ```sql edb=# alter extension postgis update to '3.1.2'; WARNING: unpackaging raster WARNING: PostGIS Raster functionality has been unpackaged @@ -134,12 +134,12 @@ Step 2 - Upgrade to PostGIS version 3.1.2 With PostGIS version 3.1.2, the return type of the raster functions has changed, which requires dropping and creating the raster extension as part of the upgrade process. - ```text + ```sql edb=# drop extension postgis_raster; DROP EXTENSION ``` - ```text + ```sql edb=# SELECT postgis_extensions_upgrade(); NOTICE: Updating extension postgis_sfcgal from 3.1.1 to 3.1.2 NOTICE: Updating extension postgis_topology from 3.1.1 to 3.1.2 @@ -150,19 +150,19 @@ Step 2 - Upgrade to PostGIS version 3.1.2 (1 row) ``` - ```text + ```sql edb=# alter extension address_standardizer update to '3.1.2'; ALTER EXTENSION ``` Quit and re-open the psql client session: - ```text + ```sql edb=# \q ./psql -d edb -p 5444 ``` - ```text + ```sql edb=# create extension postgis_raster; CREATE EXTENSION ``` @@ -171,19 +171,19 @@ Step 3 - Upgrade EDB Postgres Advanced Server version 9.6 to to 13: 1. Assume the superuser privileges to stop the EDB Postgres Advanced Server 9.6 service: - ```text + ```shell systemctl stop edb-as-9.6 ``` 2. Install the EDB Postgres Advanced Server version 13: - ```text + ```shell yum install edb-as13-server -y ``` 3. Navigate to the bin directory of EDB Advanced Server 13 and initialize the cluster: - ```text + ```shell cd /usr/edb/as13/bin/ ./edb-as-13-setup initdb @@ -191,19 +191,19 @@ Step 3 - Upgrade EDB Postgres Advanced Server version 9.6 to to 13: 4. Install the PostGIS version 3.1.2 for EDB Postgres Advanced Server version 13.0: - ```text + ```shell yum install edb-as13-postgis3-3.1.2 -y ``` 5. Assume the superuser privileges to stop the EDB Postgres Advanced Server 13.0 service: - ```text + ```shell systemctl stop edb-as-13 ``` 6. Switch to `enterprisedb` user and create a `temp` folder: - ```text + ```shell su enterprisedb cd $(mktemp -d) ``` @@ -300,7 +300,7 @@ Step 3 - Upgrade EDB Postgres Advanced Server version 9.6 to to 13: 8. Assume the superuser privileges, navigate to the `bin` directory of EDB Postgres Advanced Server 13, and start the service: - ```text + ```shell cd /usr/edb/as13/bin/ systemctl start edb-as-13 @@ -308,7 +308,7 @@ Step 3 - Upgrade EDB Postgres Advanced Server version 9.6 to to 13: 9. To update extensions, switch to `enterprisedb` user, connect to the database (where you have already created extensions) with the psql client application, and execute the following commands: - ```text + ```sql su enterprisedb ./psql -d edb -p 5444 edb=# SELECT PostGIS_Extensions_Upgrade(); diff --git a/product_docs/docs/postgis/3.1/04_using_postgis.mdx b/product_docs/docs/postgis/3.1/04_using_postgis.mdx index 5dea692d7bb..e64d19e85eb 100644 --- a/product_docs/docs/postgis/3.1/04_using_postgis.mdx +++ b/product_docs/docs/postgis/3.1/04_using_postgis.mdx @@ -12,19 +12,19 @@ The following examples use PostGIS functions to create and query spatial objects The following command creates a table named `roads` that holds GIS data and a geometry column. -```text +```sql CREATE TABLE roads ( ID int4, NAME varchar(128) ); ``` Use the PostGIS `AddGeometryColumn` function to add a column to the table: -```text +```sql SELECT AddGeometryColumn( 'roads', 'geom', -1, 'GEOMETRY', 2 ); ``` Use the following SQL commands to insert data into the table `roads`. This data consists of the geometry of the type of `Linestring` (a line between two points): -```text +```sql INSERT INTO ROADS (ID,GEOM,NAME ) VALUES (1,ST_GeomFromText('LINESTRING(0 10,0 0)',-1),'Beacon Road'); INSERT INTO ROADS (ID,GEOM,NAME ) VALUES (2,ST_GeomFromText('LINESTRING(0 0,0 10)',-1),'Violet Road'); INSERT INTO ROADS (ID,GEOM,NAME ) VALUES (3,ST_GeomFromText('LINESTRING(0 0,10 0)',-1),'Skelton Street'); @@ -35,15 +35,15 @@ INSERT INTO ROADS (ID,GEOM,NAME ) VALUES (6,ST_GeomFromText('LINESTRING(10 0,0 0 You can use the `GIST` function to create an index on the geometry column: -```text +```sql CREATE INDEX roads_index ON roads using GIST (geom); ``` `AsText(geometry)` is a PostGIS function that returns a text representation of the geometry: -```text +```sql SELECT id, ST_AsText(geom) AS geom, name FROM ROADS order by id; - +__OUTPUT__ id | geom | name ----+-----------------------+---------------- 1 | LINESTRING(0 10,0 0) | Bacon Road @@ -57,9 +57,9 @@ SELECT id, ST_AsText(geom) AS geom, name FROM ROADS order by id; After an index is created, you can use the `&&` operator in a query: -```text +```sql SELECT NAME, ST_AsText(GEOM) FROM ROADS WHERE GEOM && SetSRID('BOX3D(10 10,10 10)'::box3d,-1); - +__OUTPUT__ name | astext --------------+----------------------- Fifth Avenue | LINESTRING(0 0,10 10) @@ -70,10 +70,9 @@ Use the `BOX3D` function to specify a bounding box. The `&&` operator uses the i You can use the `~=` operator to check if two geometries are geometrically identical: -```text +```sql SELECT ID, NAME FROM roads WHERE GEOM ~= ST_GeomFromText('LINESTRING(0 10,0 0)',-1) order by id; - - +__OUTPUT__ id | name ----+------------- 1 | Bacon Road diff --git a/product_docs/docs/postgis/3.1/05_uninstalling_postgis.mdx b/product_docs/docs/postgis/3.1/05_uninstalling_postgis.mdx index 37e4772c7e7..a84aa5f807c 100644 --- a/product_docs/docs/postgis/3.1/05_uninstalling_postgis.mdx +++ b/product_docs/docs/postgis/3.1/05_uninstalling_postgis.mdx @@ -16,13 +16,13 @@ To uninstall PostGIS on a CentOS/RHEL host, assume the identity of the root user On CentOS/RHEL 7 for EPAS version 13: -```text +```shell yum -y erase edb-as13-postgis3* ``` On CentOS/RHEL 7 for older versions of EPAS: -```text +```shell yum erase edb-as-postgis-* ``` @@ -30,13 +30,13 @@ Where *<xx>* is the Advanced Server version and <y.y.y> is the PostGIS ver On Rocky Linux/AlmaLinux/RHEL 8 for EPAS version 13: -```text +```shell dnf -y erase edb-as13-postgis3* ``` On Rocky Linux/AlmaLinux/RHEL 8 for older versions of EPAS: -```text +```shell dnf erase edb-as-postgis-* ``` @@ -44,7 +44,7 @@ dnf erase edb-as-postgis-* To uninstall PostGIS on a Debian or Ubuntu host, invoke the following command: -```text +```shell apt-get remove edb-as-postgis-* ``` @@ -54,7 +54,7 @@ Where *<xx>* is the Advanced Server version and <y.y> is the PostGIS versi To uninstall PostGIS on a SLES host, assume the identity of the root user and invoke the following command: -```text +```shell zypper remove edb-as12-postgis* ``` From 65b3df653b8296b857ffeb07477e0e8619adfc10 Mon Sep 17 00:00:00 2001 From: kunliuedb <95676424+kunliuedb@users.noreply.github.com> Date: Thu, 7 Jul 2022 16:55:44 +0800 Subject: [PATCH 06/12] Update google.mdx --- .../identity_provider/google.mdx | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/product_docs/docs/biganimal/release/getting_started/identity_provider/google.mdx b/product_docs/docs/biganimal/release/getting_started/identity_provider/google.mdx index 4041d78b1be..3ed74e5a450 100644 --- a/product_docs/docs/biganimal/release/getting_started/identity_provider/google.mdx +++ b/product_docs/docs/biganimal/release/getting_started/identity_provider/google.mdx @@ -1,23 +1,23 @@ --- -title: "Using Google Workplace (G Suite) as your identity provider" +title: "Using Google Workspace (G Suite) as your identity provider" navTitle: "Google Workspace" -description: "Using Google Workplace (G Suite) as your identity provider for your Azure or AWS account" +description: "Using Google Workspace (G Suite) as your identity provider for your Azure or AWS account" --- ## Prerequisites -To connect BigAnimal to Google Workplace's identity provider, you must have: -- A [Super Administrator](https://support.google.com/a/answer/2405986#super_admin) role is assigned to you in Google Workplace. +To connect BigAnimal to Google Workspace's identity provider, you must have: +- A [Super Administrator](https://support.google.com/a/answer/2405986#super_admin) role is assigned to you in Google Workspace. - Unique URL and access code provided in an email from cloudcare@enterprisedb.com. Contact [cloudcare@enterprisedb.com](mailto:cloudcare@enterprisedb.com) if you didn't receive the email or contact [Support](/biganimal/release/overview/support) If you have issues with the code or identity provider setup. -## Set up BigAnimal with Google Workplace's identity provider +## Set up BigAnimal with Google Workspace's identity provider Open the link in the email sent from cloudcare@enterprisedb.com to access the Set Up Identity Provider page in BigAnimal. -1. In a separate browser tab or window, log into the Google Workspace Admin console. +1. In a separate browser tab or window, log into the [Google Workspace Admin console](https://admin.google.com/). 1. Select **Applications**, and then select **Web and mobile apps**: 1. Select **Add App**, and then select **Add custom SAML app**. 1. On the App Details page, enter a name for your application. @@ -40,7 +40,7 @@ Open the link in the email sent from cloudcare@enterprisedb.com to access the Se 1. Check the Signed Response box so that the entire SAML authentication response is signed. -1. From the Name ID menu, select **Primary email**. +1. From the Name ID format menu, select **EMAIL**, from the Name ID menu, select **Primary email**. 1. Select **Continue**. @@ -48,13 +48,13 @@ Open the link in the email sent from cloudcare@enterprisedb.com to access the Se 1. Under Google Directory attributes, use the **Select field** menu to choose the following field names and enter the corresponding App attributes. - | Google Directory Attributes | App attributes | Note | - |----------------------------------|-----------------------------------------------------|------------------| - | Primary email | <assertion_path>/emailaddress | Required claim | - | First Name | <assertion_path>/givenname | Additional claim | - | Last Name | <assertion_path>/surname | Additional claim | + | Google Directory Attributes | App attributes | Note | + |----------------------------------|-----------------------------------------------------|------------------| + | Primary email | <assertion_path>/emailaddress | Required claim | + | First Name | <assertion_path>/givenname | Additional claim | + | Last Name | <assertion_path>/surname | Additional claim | - Where <assertion_path> is http://schemas.xmlsoap.org/ws/2005/05/identity/claims. + Where <assertion_path> is http://schemas.xmlsoap.org/ws/2005/05/identity/claims. 1. Click **Finish**. From 67769a07be0f5aa54de9364b80dc898f0e904bc7 Mon Sep 17 00:00:00 2001 From: drothery-edb Date: Wed, 6 Jul 2022 19:07:08 -0400 Subject: [PATCH 07/12] BigAnimal: new Azure flow adjustments --- .../getting_started/02_azure_market_setup.mdx | 63 +++++++ .../01_connecting_your_own_cloud.mdx | 98 ---------- .../02_azure_market_setup.mdx | 172 ------------------ .../02_connecting_to_your_cloud/index.mdx | 101 +++++++++- .../identity_provider/index.mdx | 1 + .../release/getting_started/index.mdx | 5 + 6 files changed, 163 insertions(+), 277 deletions(-) create mode 100644 product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx delete mode 100644 product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/01_connecting_your_own_cloud.mdx delete mode 100644 product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/02_azure_market_setup.mdx diff --git a/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx b/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx new file mode 100644 index 00000000000..1f3853dc505 --- /dev/null +++ b/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx @@ -0,0 +1,63 @@ +--- +title: "Setting up your Azure Marketplace account" +description: "Applies when you purchased BigAnimal from Azure Marketplace" +redirects: +- /biganimal/latest/getting_started/02_connecting_to_your_cloud/02_azure_market_setup/ +--- + + +Connect your cloud account with your Azure subscription. + +## 1. Select the EDB offer in the Azure portal. + +1. Sign in to the [Azure portal](https://portal.azure.com/) and go to Azure **Marketplace**. + +2. Find an offer from **EnterpriseDB Corporation** and select it. + +3. From the **Select Plan** list, select an available plan. + +4. Select **Set up + subscribe**. + +## 2. Fill out the details for your plan. + +1. In the **Project details** section, enter or create a resource group for your subscription. See [What is a resource group](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resource-groups-portal#what-is-a-resource-group) for more information. + +2. In the **SaaS details** section, enter the SaaS subscription name. + +3. Select **Review + subscribe**. + +## 3. Accept terms of use. + +1. Review the terms of use provided by EDB. + +2. Select **Subscribe**. + +## 4. Configure your account. + +!!! Note + After step 1, you are prompted for approval by an Azure AD administrator with either the Global Administrator or Privileged Role Administrator role. + +1. To configure BigAnimal to use your Azure subscription and your Azure AD Application, select **Configure account now**. + +2. Fill in the **Your BigAnimal Organization Name** parameter with the SaaS Subscription Name you assigned as your BigAnimal Organization. + +3. Select **Submit**. + +## What's next + +You are now able to: + +- [log in to BigAnimal](log-in) +- [invite new users] +- [Set up your cloud service provider](02_connecting_to_your_cloud/01_connecting_your_own_cloud) + +### Log in + +You can now log in to your BigAnimal account using your Azure AD identity. + +### Invite users + +You can invite new users by sharing the link to the BigAnimal portal and having them log in with their Microsoft Azure Active Directory account. New users are not assigned any roles by default. After they log in the first time, you see them in the User list and can assign them a role with permissions to BigAnimal. See [Assign roles to users](/biganimal/release/administering_cluster/01_portal_access/#assign-roles-to-users) for instructions. + +!!! Note + Azure AD email domain is likely different from the email domain regularly used by your organization. diff --git a/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/01_connecting_your_own_cloud.mdx b/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/01_connecting_your_own_cloud.mdx deleted file mode 100644 index de917a4441d..00000000000 --- a/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/01_connecting_your_own_cloud.mdx +++ /dev/null @@ -1,98 +0,0 @@ ---- -title: Connecting your own cloud account -navTitle: Connecting your own cloud -description: "Use BigAnimal with your own cloud account" ---- - -You can connect BigAnimal to your own Azure subscription or AWS account. To connect to your own cloud account, EDB provides a command that automatically sets up your account. - -**Prerequisites**: - -Before connecting to your cloud account, ensure that: - - - **If connecting to an AWS account:** - - You are assigned the following AWS managed policies (or an equivalent custom policy granting full access to resources): - - - arn:aws:iam::aws:policy/IAMFullAccess - - - arn:aws:iam::aws:policy/ServiceQuotasFullAccess - - - **If connecting to an Azure subscription:** - - You are assigned either of the following roles in Azure AD: - - - Global Administrator - - - Privileged Role Administrator - - - In [Azure Cloud Shell](https://shell.azure.com/) or [AWS Cloud Shell](https://console.aws.amazon.com/cloudshell), your environment is running: - - - bash shell version 4.0 or above. - - - [jq](https://stedolan.github.io/jq/) JSON parser. - - BigAnimal CLI version 1.4 or later. For detailed steps, see [Installing the CLI](../../reference/cli/#installing-the-cli). - - - The BigAnimal login user running the CLI is assigned either the owner or the contributor role. - -Perform the following steps: - -1. Open the [Azure Cloud Shell](https://shell.azure.com/) or the [AWS Cloud Shell](https://console.aws.amazon.com/cloudshell) in your browser. - -1. Log in to BigAnimal as a user with either the owner or the contributor role. - - ```shell - biganimal create-credential --name --address portal.biganimal.com --port 443 - ``` - -1. Run the `setup-csp` command to set up your cloud provider. The synatx is: - - ```shell - setup-csp --provider - {--account-id | --subscription-id} - --region - [--instance-type --high-availability --networking | --skip-preflight] - [--run] - ``` - - Here is an example of setting up an AWS account: - - ```shell - biganimal setup-csp --provider aws --account-id 123456789102 --region us-east-1 --instance-type aws:r5.large --high-availability --networking private --run - ``` - - Here is an example if setting up an Azure account: - ```shell - biganimal setup-csp --provider azure --subscription-id abc12345-1234-1234-abcd-12345678901 --region eastus --instance-type azure:Standard_E4s_v3 --high-availability --networking private --run - ``` - - For more information on the command arguments, run the following command: - - ```shell - biganimal setup-csp --help - ``` - - Alternatively, you can enable the CLI interactive mode to have the CLI guide you through the process: - ```shell - biganimal config set interactive_mode on - biganimal setup-csp - ``` - -1. The command checks for cloud account readiness and displays the results. You need to manually increase resource limits or perform required configurations in your cloud, if either of the following readiness checks are not met: - * **If connecting to Azure**: - - Are the necessary Azure resource providers registered for your subscription? - - Is there a restriction on SKUs for the standard Esv3 family and standard D2_v4 VM size? - - Is the limit on the number of vCPU and public IP addresses in your region sufficient for your clusters? - * **If connecting to AWS**: - - Is the AWS CLI configured to access your AWS account? - - Is the limit on the number of vCPUs and Network Load Balancers (NLBs) in your region sufficient for your clusters? - - !!! Important - You need to configure your cloud, if any of the readiness checks are not met, see [Configure your Azure subscription](/biganimal/release/getting_started/preparing_cloud_account/01_preparing_azure#configure-your-azure-subscription) or [Configure your AWS account](/biganimal/release/getting_started/preparing_cloud_account/02_preparing_aws/#configure-your-aws-account). - -1. If the cloud readiness checks pass, your cloud account is successfully set up. Connect your cloud account to BigAnimal with following command. - ```shell - biganimal connect-csp --provider - ``` - -Once your cloud account is successfully connected to BigAnimal, you and other users can log in using your identity provider credentials. \ No newline at end of file diff --git a/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/02_azure_market_setup.mdx b/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/02_azure_market_setup.mdx deleted file mode 100644 index c163bdac6e7..00000000000 --- a/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/02_azure_market_setup.mdx +++ /dev/null @@ -1,172 +0,0 @@ ---- -title: "Connecting your Azure Marketplace account" -description: "Use your Azure Marketplace account to connect to BigAnimal" ---- - -Your Azure subscription for BigAnimal is where you create and manage Postgres clusters. -Set up your BigAnimal account on Azure Marketplace, as follows: - -1. Ensure you have an active Microsoft Azure subscription. If you need to create one, see [Create an additional Azure subscription](https://docs.microsoft.com/en-us/azure/cost-management-billing/manage/create-subscription). - -2. In Azure Active Directory, ensure your role is owner and your user type is member (not guest) for the subscription you are using. - -3. Create an Azure Active Directory Application client to delegate Identity and Access Management functions to Azure Active Directory (AD). You can create the Azure Active Directory Application using the Azure Portal, but a simpler and less error-prone approach is to use the `create-spn` script (see [Create Azure Active Directory Application using `create-spn`](#create-azure-active-directory-application-using-create-spn)). The script approach requires the Azure API. - -!!! Note - Some steps of the subscription process require approval of an Azure AD administrator. - Your Azure role in the Azure AD must be either: - - - Global Administrator - - Privileged Role Administrator - - or you need the cooperation of a user with one of those roles in your organization. - -### Create Azure Active Directory Application using the Azure portal - -!!! Note - Create your Azure AD Application in the same tenant as the subscription you want to associate it with.  - -1. Register an application with Azure AD and create a service principal. See [Register an application with Azure AD and create a service principal](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-create-service-principal-portal#register-an-application-with-azure-ad-and-create-a-service-principal) for instructions. - Take note of the **Application (client) ID**, as you need it to configure your BigAnimal account. Also take note of the **Display name** value of the Azure AD application. You need to enter this value later. - -2. Select *application secret* as an authentication option for the application. See [Create a new Azure AD application secret](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-create-service-principal-portal#option-2-create-a-new-application-secret) for instructions. Take note of the Azure AD App Secret, as you need it to configure your cloud account. - -3. Select *API permissions* to configure API permissions for the application. See [Configure a client application to access Azure Active Directory API](https://docs.microsoft.com/en-us/azure/active-directory/reports-monitoring/howto-configure-prerequisites-for-reporting-api) for instructions. Add Application permissions with Microsoft Graph *Application.ReadWrite.OwnedBy* and *Directory.Read.All* to your application and grant admin consent for your cloud account. - -4. Assign the owner role to the application. See [Assign a role to the application](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-create-service-principal-portal#assign-a-role-to-the-application) for instructions. In the **Select** field of the **Add role assignment** panel, enter the display name of the Azure AD application. See [Open the Add role assignment pane](https://docs.microsoft.com/en-us/azure/role-based-access-control/role-assignments-portal?tabs=current#step-2-open-the-add-role-assignment-page) for instructions. - -### Create Azure Active Directory Application using `create-spn` - -To simplify the process of creating an Azure AD Application, EDB provides the `create-spn` script for Azure API users (available [here](https://github.com/EnterpriseDB/cloud-utilities/blob/main/azure)). The script automates the creation of the Active Directory Application. -Before using the script, ensure that these utilities are installed on your machine: - -- [jq command-line JSON processor](https://stedolan.github.io/jq/) -- [azure cli](https://docs.microsoft.com/en-us/cli/azure/) v2.26 or above - -Alternatively, you can run the script in [Azure Cloud Shell](https://azure.microsoft.com/en-us/features/cloud-shell/?ef_id=CjwKCAiA3L6PBhBvEiwAINlJ9Pj1wF0QH8KpGtC5Z4qIy21h5fcsP7tDYtBPxNLP-UMFaIiQY-EEuhoCppEQAvD_BwE%3AG%3As&OCID=AID2200202_SEM_CjwKCAiA3L6PBhBvEiwAINlJ9Pj1wF0QH8KpGtC5Z4qIy21h5fcsP7tDYtBPxNLP-UMFaIiQY-EEuhoCppEQAvD_BwE%3AG%3As&gclid=CjwKCAiA3L6PBhBvEiwAINlJ9Pj1wF0QH8KpGtC5Z4qIy21h5fcsP7tDYtBPxNLP-UMFaIiQY-EEuhoCppEQAvD_BwE#overview). - -The syntax of the command is: - -```shell -curl -sL https://raw.githubusercontent.com/EnterpriseDB/cloud-utilities/main/azure/create-spn.sh | bash -s -- \ ---display-name \ ---subscription \ ---years -``` - -Flag and option details: - -| Flag/option shortcut | Flag/option long name | Description | -| -------------------- | -------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| -d <display-name> | --display-name <display-name> | Name of Azure AD Application. | -| -s <subscription> | --subscription <subscription> | Azure Subscription ID used by BigAnimal. | -| -y <years> | --years <years> | Integer value specifying the number of years for which the credentials are valid. The default is one year. | -| -h | --help | Displays information on the syntax and usage of the script. | - -The script creates the Azure AD Service Principal and configures its access to Azure resources in the specified subscription. - -The specific output includes the client ID and client secret you use when you configure your account. See [Step 4. Configure your account](#4-configure-your-account). - -#### Example - -To create an Azure AD Application with the subscription ID `c808xxxx-xxxx-xxxx-xxxx-xxxxxxxxb712` and display name `hello-s`: - -``` -curl -sL https://raw.githubusercontent.com/EnterpriseDB/cloud-utilities/main/azure/create-spn.sh | bash -s -- \ ---display-name "hello-s" \ ---subscription c808xxxx-xxxx-xxxx-xxxx-xxxxxxxxb712 \ ---years 2 -Change to use Azure Subscription c808xxxx-xxxx-xxxx-xxxx-xxxxxxxxb712... -{ - "environmentName": "AzureCloud", - "homeTenantId": "fb0cxxxx-xxxx-xxxx-xxxx-xxxxxxxx3d0f", - "id": "c808xxxx-xxxx-xxxx-xxxx-xxxxxxxxb712", - "isDefault": true, - "managedByTenants": [], - "name": "development", - "state": "Enabled", - "tenantId": "fb0cxxxx-xxxx-xxxx-xxxx-xxxxxxxx3d0f", - "user": { - "name": "xxxx", - "type": "user" - } -} -Creating Azure AD Service Principal and configuring its access to Azure resources in subscription c808xxxx-xxxx-xxxx-xxxx-xxxxxxxxb712... -Waiting 15 seconds for Azure AD Service Principal to propagate... -Add Azure AD Service Principal Owners... -{ - "client_id": "a756xxxx-xxxx-xxxx-xxxx-xxxxxxxx84da", - "client_secret": "xxxx", - "subscription": "c808xxxx-xxxx-xxxx-xxxx-xxxxxxxxb712" -} -``` - -If you receive the following error message, you need to request admin consent for your cloud account. Only users with the Azure AD Global Administrator or Privileged Role Administrator role can grant admin consent. - -```text -... -Error: Please request Azure AD Global Administrator or Privileged Role Administrator to grant admin consent permissions for Service Principal hello-s(77bbxxxx-xxxx-xxxx-xxxx-xxxxxxxx7c54) -``` - -To grant admin consent you, or another user with the Azure AD Global Administrator or Privileged Role Administrator role, go to [App registrations](https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade) in the Azure portal and select **API permissions**. - - -## Connect your cloud account - -Connect your cloud account with your Azure subscription. - -#### 1. Select the EDB offer in the Azure portal. - -1. Sign in to the [Azure portal](https://portal.azure.com/) and go to Azure **Marketplace**. - -2. Find an offer from **EnterpriseDB Corporation** and select it. - -3. From the **Select Plan** list, select an available plan. - -4. Select **Set up + subscribe**. - -#### 2. Fill out the details for your plan. - -1. In the **Project details** section, enter or create a resource group for your subscription. See [What is a resource group](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resource-groups-portal#what-is-a-resource-group) for more information. - -2. In the **SaaS details** section, enter the SaaS subscription name. - -3. Select **Review + subscribe**. - -#### 3. Accept terms of use. - -1. Review the terms of use provided by EDB. - -2. Select **Subscribe**. - -#### 4. Configure your account. - -!!! Note - After step 1, you are prompted for approval by an Azure AD administrator with either the Global Administrator or Privileged Role Administrator role. - -1. To configure BigAnimal to use your Azure subscription and your Azure AD Application. select **Configure account now**. - - -2. Fill in the parameters in the form: - - | Parameter | Description | - | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | - | **Azure AD: Application Client ID** | Application client ID you noted when [creating your Azure AD Application](#create-azure-active-directory-application-using-the-azure-portal) or that was generated from the [`create-spn`](#create-azure-active-directory-application-using-create-spn) script. | - | **Azure AD: Application Client Secret Value** | Application client secret value you noted when [creating your Azure AD Application](#create-azure-active-directory-application-using-the-azure-portal) or that was generated from the [`create-spn`](#create-azure-active-directory-application-using-create-spn) script. | - | **Azure Subscription ID** | Azure subscription ID for BigAnimal available from the Subscriptions page of your Azure account. | - | **Your BigAnimal Organization Name** | SaaS Subscription Name you assigned as your BigAnimal Organization (see [Step 2. Fill out the details for your plan.](#2-fill-out-the-details-for-your-plan)). | - -3. Select **Submit**. - -## What's next - -### Log in - -If you filled in the parameters correctly, you can now log in to your BigAnimal account using your Azure AD identity. - -### Invite users - -You can invite new users by sharing the link to the BigAnimal portal and having them log in with their Microsoft Azure Active Directory account. New users are not assigned any roles by default. After they log in the first time, you see them in the User list and can assign them a role with permissions to BigAnimal. See [Assign roles to users](/biganimal/release/administering_cluster/01_portal_access/#assign-roles-to-users) for instructions. - -!!! Note - Azure AD email domain is likely different from the email domain regularly used by your organization. diff --git a/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx b/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx index de9721a3cb0..7b1d670c2b2 100644 --- a/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx +++ b/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx @@ -3,18 +3,105 @@ title: Connecting your cloud indexCards: simple redirects: - ../02_connect_cloud_account/ + - /biganimal/release/getting_started/02_connecting_to_your_cloud/01_connecting_your_own_cloud --- -Before connecting to your cloud, you must set permissions to allow BigAnimal to perform maintenance operations in your cloud. + +Before connecting to your cloud, -* **If connecting to Azure**: - Register an application with Azure AD and create a service principal to delegate Identity and Access Management functions to Azure Active Directory (AD). +- You must set permissions to allow BigAnimal to perform maintenance operations in your cloud. -* **If connecting to AWS**: + - **If connecting to AWS**: Create a role EDBOperations and set its *policy/trust* and *policy/policy* boundaries to * with EDB's AWS account. This allows EDB's IAM users to assume the EDBOperations role in your AWS account. -BigAnimal CLI commands used in the procedures for connecting your cloud to BigAnimal automatically sets these permissions for you. For more information, see EDB cloud utilites in GitHub for [Azure](https://github.com/EnterpriseDB/cloud-utilities/tree/main/azure) and [AWS](https://github.com/EnterpriseDB/cloud-utilities/tree/main/aws). + - **If connecting to Azure**: + Register an application with Azure AD and create a service principal to delegate Identity and Access Management functions to Azure Active Directory (AD). + + BigAnimal CLI commands used in the procedures for connecting your cloud to BigAnimal automatically sets these permissions for you. For more information, see EDB cloud utilites in GitHub for [Azure](https://github.com/EnterpriseDB/cloud-utilities/tree/main/azure) and [AWS](https://github.com/EnterpriseDB/cloud-utilities/tree/main/aws). + + - **If connecting to an AWS account, ensure that:** + + You are assigned the following AWS managed policies (or an equivalent custom policy granting full access to resources): + + - arn:aws:iam::aws:policy/IAMFullAccess + + - arn:aws:iam::aws:policy/ServiceQuotasFullAccess + + - **If connecting to an Azure subscription, ensure that:** + + You are assigned either of the following roles in Azure AD: + + - Global Administrator + + - Privileged Role Administrator + + - In [Azure Cloud Shell](https://shell.azure.com/) or [AWS Cloud Shell](https://console.aws.amazon.com/cloudshell), ensure that your environment is running: + + - bash shell version 4.0 or above. + + - [jq](https://stedolan.github.io/jq/) JSON parser. + - BigAnimal CLI version 1.4 or later. For detailed steps, see [Installing the CLI](../../reference/cli/#installing-the-cli). + + - Ensure that the BigAnimal login user running the CLI is assigned either the owner or the contributor role. + +Perform the following steps: + +1. Open the [Azure Cloud Shell](https://shell.azure.com/) or the [AWS Cloud Shell](https://console.aws.amazon.com/cloudshell) in your browser. + +1. Log in to BigAnimal as a user with either the owner or the contributor role. + + ```shell + biganimal create-credential --name --address portal.biganimal.com --port 443 + ``` + +1. Run the `setup-csp` command to set up your cloud provider. The synatx is: + + ```shell + setup-csp --provider + {--account-id | --subscription-id} + --region + [--instance-type --high-availability --networking | --skip-preflight] + [--run] + ``` + + Here is an example of setting up an AWS account: + + ```shell + biganimal setup-csp --provider aws --account-id 123456789102 --region us-east-1 --instance-type aws:r5.large --high-availability --networking private --run + ``` + + Here is an example if setting up an Azure account: + ```shell + biganimal setup-csp --provider azure --subscription-id abc12345-1234-1234-abcd-12345678901 --region eastus --instance-type azure:Standard_E4s_v3 --high-availability --networking private --run + ``` + + For more information on the command arguments, run the following command: -## Connect your cloud to BigAnimal + ```shell + biganimal setup-csp --help + ``` + + Alternatively, you can enable the CLI interactive mode to have the CLI guide you through the process: + ```shell + biganimal config set interactive_mode on + biganimal setup-csp + ``` + +1. The command checks for cloud account readiness and displays the results. You need to manually increase resource limits or perform required configurations in your cloud, if either of the following readiness checks are not met: + * **If connecting to Azure**: + - Are the necessary Azure resource providers registered for your subscription? + - Is there a restriction on SKUs for the standard Esv3 family and standard D2_v4 VM size? + - Is the limit on the number of vCPU and public IP addresses in your region sufficient for your clusters? + * **If connecting to AWS**: + - Is the AWS CLI configured to access your AWS account? + - Is the limit on the number of vCPUs and Network Load Balancers (NLBs) in your region sufficient for your clusters? + + !!! Important + You need to configure your cloud, if any of the readiness checks are not met, see [Configure your Azure subscription](/biganimal/release/getting_started/preparing_cloud_account/01_preparing_azure#configure-your-azure-subscription) or [Configure your AWS account](/biganimal/release/getting_started/preparing_cloud_account/02_preparing_aws/#configure-your-aws-account). + +1. If the cloud readiness checks pass, your cloud account is successfully set up. Connect your cloud account to BigAnimal with following command. + ```shell + biganimal connect-csp --provider + ``` -How you connect your cloud to BigAnimal depends on if you purchased BigAnimal from the Azure Marketplace or if you purchased it directly from EDB and are connecting your own cloud account. \ No newline at end of file +Once your cloud account is successfully connected to BigAnimal, you and other users can log in using your identity provider credentials. \ No newline at end of file diff --git a/product_docs/docs/biganimal/release/getting_started/identity_provider/index.mdx b/product_docs/docs/biganimal/release/getting_started/identity_provider/index.mdx index bf04e97c5fa..ee46a9d3406 100644 --- a/product_docs/docs/biganimal/release/getting_started/identity_provider/index.mdx +++ b/product_docs/docs/biganimal/release/getting_started/identity_provider/index.mdx @@ -1,6 +1,7 @@ --- title: "Setting up your identity provider" navTitle: "Setting up your identity provider" +description: Applies when you purchased BigAnimal directly from EDB --- If you purchased BigAnimal directly from EDB, you must set up your identity provider (IDP) before accessing BigAnimal for the first time. After setting up your identity provider, you can add users to BigAnimal by adding them to the designated group in your identity provider. Once you've logged into BigAnimal using your identity provider, you can set up your cloud service provider (CSP) in the BigAnimal portal to complete onboarding. If you purchased through Azure Marketplace, BigAnimal authenticates users using Azure Active Directory (AD) and you don't have to complete these steps, as Azure AD is linked during subscription. diff --git a/product_docs/docs/biganimal/release/getting_started/index.mdx b/product_docs/docs/biganimal/release/getting_started/index.mdx index f7b3a1b71ec..c101a343fd3 100644 --- a/product_docs/docs/biganimal/release/getting_started/index.mdx +++ b/product_docs/docs/biganimal/release/getting_started/index.mdx @@ -4,9 +4,14 @@ indexCards: simple navigation: - 00_free_trial - identity_provider + - 02_azure_market_setup - 02_connecting_to_your_cloud - preparing_cloud_account - creating_a_cluster --- As a cloud administrator, you can set up BigAnimal with your existing Azure subscription or AWS account, invite others to join you in exploring what EDB has to offer, and create initial clusters as an account owner so that development can begin. + +If you purchase BigAnimal directly from EDB Sales, you need to [set up your own identity provider]. If you purchased from Azure Marketplace, you need to [set up your Azure account]. + +After setting up your organization, you connect your cloud account to BigAnimal. \ No newline at end of file From 221bc16d4188c30594fe4667666bdeeaaf04fb2e Mon Sep 17 00:00:00 2001 From: drothery-edb Date: Thu, 7 Jul 2022 05:27:56 -0400 Subject: [PATCH 08/12] Clarifying what users can do after setting up their accounts versus connecting --- .../getting_started/02_connecting_to_your_cloud/index.mdx | 2 +- .../release/getting_started/identity_provider/index.mdx | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx b/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx index 7b1d670c2b2..3967fa8fb75 100644 --- a/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx +++ b/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx @@ -104,4 +104,4 @@ Perform the following steps: biganimal connect-csp --provider ``` -Once your cloud account is successfully connected to BigAnimal, you and other users can log in using your identity provider credentials. \ No newline at end of file +Once your cloud account is successfully connected to BigAnimal, you and, other users with the create permissions, can create clusters. \ No newline at end of file diff --git a/product_docs/docs/biganimal/release/getting_started/identity_provider/index.mdx b/product_docs/docs/biganimal/release/getting_started/identity_provider/index.mdx index ee46a9d3406..1d995dd1f3b 100644 --- a/product_docs/docs/biganimal/release/getting_started/identity_provider/index.mdx +++ b/product_docs/docs/biganimal/release/getting_started/identity_provider/index.mdx @@ -83,4 +83,6 @@ For step-by-step instructions for setting up specific identity providers, see: ## Next steps -[Setting up your cloud service provider](02_connecting_to_your_cloud/01_connecting_your_own_cloud) +You and other users can log in to BigAnimal using your identity provider credentials. + +You can [Set up your cloud service provider](02_connecting_to_your_cloud/01_connecting_your_own_cloud) so that you or other users with the correct permissions can create clusters. From 56b3b364f6949d0617addfb1d803a8776a06b84c Mon Sep 17 00:00:00 2001 From: Dee Dee Rothery <83650384+drothery-edb@users.noreply.github.com> Date: Thu, 7 Jul 2022 05:34:49 -0400 Subject: [PATCH 09/12] minor edit --- .../release/getting_started/identity_provider/google.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/product_docs/docs/biganimal/release/getting_started/identity_provider/google.mdx b/product_docs/docs/biganimal/release/getting_started/identity_provider/google.mdx index 3ed74e5a450..7d1e8cc2749 100644 --- a/product_docs/docs/biganimal/release/getting_started/identity_provider/google.mdx +++ b/product_docs/docs/biganimal/release/getting_started/identity_provider/google.mdx @@ -40,7 +40,7 @@ Open the link in the email sent from cloudcare@enterprisedb.com to access the Se 1. Check the Signed Response box so that the entire SAML authentication response is signed. -1. From the Name ID format menu, select **EMAIL**, from the Name ID menu, select **Primary email**. +1. From the Name ID format menu, select **EMAIL**. From the Name ID menu, select **Primary email**. 1. Select **Continue**. From 59e7b321ed2b857984a295597c0bb35367bc02e3 Mon Sep 17 00:00:00 2001 From: drothery-edb Date: Thu, 7 Jul 2022 05:52:47 -0400 Subject: [PATCH 10/12] adding links and adjusting language --- .../getting_started/02_connecting_to_your_cloud/index.mdx | 2 +- product_docs/docs/biganimal/release/getting_started/index.mdx | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx b/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx index 3967fa8fb75..40bf7130d03 100644 --- a/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx +++ b/product_docs/docs/biganimal/release/getting_started/02_connecting_to_your_cloud/index.mdx @@ -104,4 +104,4 @@ Perform the following steps: biganimal connect-csp --provider ``` -Once your cloud account is successfully connected to BigAnimal, you and, other users with the create permissions, can create clusters. \ No newline at end of file +Once your cloud account is successfully connected to BigAnimal, you and, other users with the correct permissions, can create clusters. \ No newline at end of file diff --git a/product_docs/docs/biganimal/release/getting_started/index.mdx b/product_docs/docs/biganimal/release/getting_started/index.mdx index c101a343fd3..65d7845dc25 100644 --- a/product_docs/docs/biganimal/release/getting_started/index.mdx +++ b/product_docs/docs/biganimal/release/getting_started/index.mdx @@ -12,6 +12,6 @@ navigation: As a cloud administrator, you can set up BigAnimal with your existing Azure subscription or AWS account, invite others to join you in exploring what EDB has to offer, and create initial clusters as an account owner so that development can begin. -If you purchase BigAnimal directly from EDB Sales, you need to [set up your own identity provider]. If you purchased from Azure Marketplace, you need to [set up your Azure account]. +If you purchase BigAnimal directly from EDB Sales, you need to [set up your own identity provider](/biganimal/release/getting_started/identity_provider). If you purchased from Azure Marketplace, you need to [set up your Azure account](/biganimal/release/getting_started/02_azure_market_setup). -After setting up your organization, you connect your cloud account to BigAnimal. \ No newline at end of file +After setting up your organization through your identity provider or Azure Marketplace account, you connect your cloud account to BigAnimal. \ No newline at end of file From 81b73cc5ce9bc48ef1a0a8fe35bfa14d0f0f0492 Mon Sep 17 00:00:00 2001 From: drothery-edb Date: Thu, 7 Jul 2022 05:58:35 -0400 Subject: [PATCH 11/12] added note about deprecated process --- .../biganimal/release/getting_started/02_azure_market_setup.mdx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx b/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx index 1f3853dc505..c9dca1eef61 100644 --- a/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx +++ b/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx @@ -5,6 +5,8 @@ redirects: - /biganimal/latest/getting_started/02_connecting_to_your_cloud/02_azure_market_setup/ --- +!!!note + We have deprecated the manual, script-based process for setting up your Azure Marketplace account. For information on the deprecated process, contact [Support](/biganimal/release/overview/support). Connect your cloud account with your Azure subscription. From c176b84d75e94e233dd47106b6fb3227e01ca296 Mon Sep 17 00:00:00 2001 From: moiznalwalla <90263457+moiznalwalla@users.noreply.github.com> Date: Thu, 7 Jul 2022 15:49:27 +0530 Subject: [PATCH 12/12] Fixed links --- .../release/getting_started/02_azure_market_setup.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx b/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx index c9dca1eef61..41c54da108a 100644 --- a/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx +++ b/product_docs/docs/biganimal/release/getting_started/02_azure_market_setup.mdx @@ -49,8 +49,8 @@ Connect your cloud account with your Azure subscription. You are now able to: -- [log in to BigAnimal](log-in) -- [invite new users] +- [Log in to BigAnimal](#log-in) +- [Invite new users](#invite-users) - [Set up your cloud service provider](02_connecting_to_your_cloud/01_connecting_your_own_cloud) ### Log in