Manuelles Hinzufügen einer Instanz zu „ Db2 Data Management Console “

Sie können eine Instanz manuell zu „ Db2® Data Management Console “ hinzufügen.

Symptome

  • Db2 Data Management Console Db2 -Instanz nicht hinzugefügt. Die folgende Meldung wird angezeigt, wenn Sie die Instanz „ Db2 “ öffnen:
    This profile does not exist.

Problemlösung

Um dieses Problem zu beheben, führen Sie die folgenden Schritte aus, um eine Instanz manuell zu „ Db2 Data Management Console “ hinzuzufügen:

  1. Holen Sie sich den Token.
    Führen Sie den folgenden Befehl aus:
    curl --location --request POST 'https://${CPD_ROUTE}/v1/preauth/signin' \ --header 'Content-Type: application/json' \ --data-raw '{"username":"admin","password":"password"}'
    Ergebnis:
    {
        "privateCloudCookie": "ibm-private-cloud-session=<session_id>; Path=/; HttpOnly; Secure; SameSite=Lax",
        "token": "<token_value>",
        "csrf_token": "<csrf_token>",
        "_messageCode_": "success",
        "message": "success"
    }

    Ersetzen Sie „admin” und „password” durch den Cloud Pak for Data Benutzernamen und das Passwort.

    Holen Sie sich das Token aus dem Ergebnis:
    "token": "<token_value>"
    
  2. Überprüfen Sie die State der Instanz „ Db2 Data Management Console “ und stellen Sie bei Bedarf eine neue Instanz bereit.
    Füge den Token-Wert zu „Bearer“ mit dem Schlüssel „Authorization“ in den Header ein.
    curl --location --request POST 'https://${CPD_ROUTE}/zen-data/v1/addOn/query' \
    --header 'Authorization: Bearer <token_value>' \
    --header 'Content-Type: application/json' \
    --data-raw '{
        "type": "dmc"
    }'
    Wenn der State Status der Instanz „ Db2 Data Management Console “ im Ergebnis „installiert“, aber nicht „aktiviert“ ist, löschen Sie diese Instanz und stellen Sie eine andere Instanz auf der Instanzseite „ Db2 Data Management Console “ bereit.
  3. Die Datenbankinstanz-ID abrufen:
    curl --location --request GET 'https://${CPD_ROUTE}/zen-data/v3/service_instances?fetch_all_instances=true' \
    --header 'Authorization: Bearer <token_value>' \
    Beispielsweise lautet die 1648557675098841Instanz-ID.
  4. Fügen Sie die Datenbank zu „ Db2 Data Management Console “ hinzu. Überprüfen Sie das Ergebnis in Schritt 3 und geben Sie die folgenden Informationen ein:
    curl --location --request POST 'https://${CPD_INSTANCE}/addon-dmc/v1/profiles' \
    --header 'Authorization: Bearer <token_value>' \
    --header 'Content-Type: application/json' \
    --data-raw '{
      "CollectionCred": {
        "password": "<password>",
        "securityMechanism": "9",
        "user": "db2inst1"
      },
      "databaseName": "BLUDB",
      "dbInstanceId": "1648557675098841",
      "dbType": "db2oltp",
      "display_name": "db2oltp-1648557675098841",
      "dmcInstanceId": "1653029836233754",
      "host": "c-db2oltp-1648557675098841-db2u-engn-svc",
      "plan": "smp",
      "port": 50001,
      "sslCertLocation": "/opt/ibm-datasrvrmgr/Config/cpd-internal-tls/ca.crt",
      "sslConnection": true
    }'
    CollectionCred: default user name is db2inst1, securityMechanism is 9Um das Passwort zu erhalten, gehen Sie wie folgt vor:
    Beispiel:
    1. Führen Sie „oc get secret -A |grep <db instance id>“ aus und suchen Sie unten nach einem Ende mit „instancepassword“. c-db2oltp-1648557675098841-instancepassword'
    2. Führen Sie „oc get secret c-db2oltp-1648557675098841-instancepassword -o yaml” aus und überprüfen Sie „password”
      apiVersion: v1
      
      data: password: abcdefg
      
      kind: Secret metadata: creationTimestamp: "2022-03-04T13:26:10Z" labels: formation_id: db2oltp-1648557675098841 role: none name: c-db2oltp-1648557675098841-instancepassword namespace: cpd-instance ownerReferences: - apiVersion: db2u.databases.ibm.com/v1 kind: Formation name: db2oltp-1648557675098841 uid: ec1be91b-4234-4d20-9d58-8a8038b66a62 resourceVersion: "304047" uid: e52e3e9a-69d6-41c6-8979-cae341e6427d
      
    3. Passwort entschlüsseln mit „echo 'abcdefg' |base64 “ -d'
    Überprüfen Sie Schritt c im obigen Ergebnis. Rufen Sie die Datenbankinstanz-ID ab, um die Informationen zu „ Db2 Data Management Console “ und zur Datenbankinstanz zu finden, und geben Sie die folgenden Informationen ein:
    databaseName: check 'database-name'
    dbInstanceId: check 'id'
    dbType: check 'type'
    display_name: check 'instance-id'
    host: run 'oc get svc |grep ${DB_INSTANCE_ID}-db2u-engn-svc' , check 'c-${DB2_TYPE}-db2u-engn-svc'
    plan: check 'sub-type'
    port: default is 50001, run 'oc get svc |grep ' to check port of 'c-db2oltp--db2u-engn-svc'
    sslCertLocation: default is /opt/ibm-datasrvrmgr/Config/cpd-internal-tls/ca.crt
    sslConnection : default is true
    dmcInstanceId: check 'id' belong to DMC {"addon_type": "dmc"}
  5. Warten Sie ein paar Minuten. Nachdem der Thread „ Db2 Data Management Console “ die Datenbank erfolgreich hinzugefügt hat, aktualisieren Sie die Datenbankseiten und überprüfen Sie, ob die Pods „ Redis “ gestartet sind.