8.6 在分散式伺服器上部署容器

NetIQ 建議您為 Identity Manager 引擎容器使用主機網路模式,為所有其他 Identity Manager 容器使用重疊網路。在本指南使用的範例中,我們將在 Docker 主機 A 上部署 Identity Manager 容器,在 Docker 主機 B 上部署其他 Identity Manager 容器。

設定重疊網路需要執行的步驟如下:

  1. 在 Docker 主機 A 上執行以下指令:

    docker run -d -p <host port>:8500 -h consul --name <container name> progrium/consul -server -bootstrap

    例如:

    docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrap

  2. 在 Docker 主機 B 上編輯 /etc/sysconfig/ 目錄中的 docker 檔案,新增下面一行:

    DOCKER_OPTS="-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock --cluster-advertise <Master Server Network Interface>:2375 --cluster-store consul://<Docker Host A IP Address>:<Docker Host A Port>"

    例如:

    DOCKER_OPTS="-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock --cluster-advertise eth0:2375 --cluster-store consul://172.120.0.1:8500"

  3. 在 Docker 主機 B 上重新啟動 Docker 服務:

    systemctl restart docker

  4. 在 Docker 主機 B 中,執行以下指令來檢查 Docker 主機 B 是否已新增至叢集中:

    docker info

    範例輸出將如下所示:

    Cluster store: consul://<Docker HOST A IP Address>:8500

    Cluster advertise: <Docker HOST B IP Address>:2375

  5. 在 Docker 主機 B 上建立覆蓋網路:

    docker network create -d overlay --subnet=<subnet in CID format that represents a network segment> --gateway=<ipv4 gateway> <name of the overlay network>

    例如:

    docker network create -d overlay --subnet=192.168.0.0/24 --gateway=192.168.0.1 idmoverlaynetwork

  6. 執行以下指令來驗證是否已建立覆蓋網路:

    docker network ls

8.6.1 先決條件

  • 對於 Docker 部署中的所有 Docker 主機,必須使用主機上執行的所有容器的詳細資料來更新該主機的 /etc/hosts 檔案。確定所有容器的主機名稱僅採用完全合格的網域名稱 (FQDN) 格式。

    所有元件的主機檔案項目可採用以下格式:

    <容器的 IP> <FQDN> <簡短名稱>

    在本指南使用的範例部署中,於 /etc/hosts 檔案中新增以下項目:

    172.120.0.1     identityengine.example.com       identityengine
    192.168.0.2     remoteloader.example.com         remoteloader
    192.168.0.3     fanoutagent.example.com          fanoutagent
    192.168.0.4     imanager.example.com             imanager
    192.168.0.5     osp.example.com                  osp
    192.168.0.6     postgresql.example.com           postgresql
    192.168.0.7     identityapps.example.com         identityapps
    192.168.0.8     formrenderer.example.com         formrenderer
    192.168.0.9     activemq.example.com             activemq
    192.168.0.10    identityreporting.example.com    identityreporting   
    192.168.0.11    sspr.example.com                 sspr
  • 確定協力廠商 jar 檔案為已掛接的磁碟區,這樣每次啟動容器時這些檔案才可用。例如,如果容器的 /opt/netiq/idm/apps/tomcat/lib 目錄中存在 ojdbc.jar,則您必須使用如下範例指令對 jar 檔案進行磁碟區掛接操作:

    -v /host/ojdbc.jar:/opt/netiq/idm/apps/tomcat/lib/ojdbc.jar

  • 必須在部署容器之前產生靜默內容檔案。如需產生靜默內容檔案的詳細資訊,請參閱建立靜默內容檔案

8.6.2 公開容器存取的連接埠

做為先決條件,您必須知道要用於容器的連接埠。您必須公開所需的連接埠,並將容器連接埠對應至 Docker 主機上的連接埠。下表依據指南中的範例提供了您必須在 Docker 主機上公開的連接埠資訊。

容器

假定根據範例部署使用的預設連接埠

遠端載入器

8090

擴送代理程式

不適用

iManager

8743

OSP

8543

Identity Applications

18543

Identity Reporting

28543

表單轉譯器

8600

ActiveMQ

  • 8161

  • 61616

PostgreSQL

5432

SSPR

8443

附註:SSRP 容器僅可在 8443 連接埠上執行。

不過,您可以依據自己的需要自訂連接埠。在公開連接埠時,請遵循以下注意事項:

  • 確定您要公開的並非使用中的連接埠。

  • 必須將容器連接埠對應至 Docker 主機上的相同連接埠。例如,必須將容器上的 8543 連接埠對應至 Docker 主機上的 8543 連接埠。

必須依以下順序部署容器:

8.6.3 部署 Identity Manager 引擎容器

  1. 產生靜默內容檔案。如需詳細資訊,請參閱 建立靜默內容檔案

  2. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  3. 執行以下指令以載入影像:

    docker load --input IDM_48_identityengine.tar.gz

  4. 使用以下指令部署容器:

    docker run -d --network=host --name=engine-container -v /etc/hosts:/etc/hosts -v /data:/config -e SILENT_INSTALL_FILE=/config/silent.properties identityengine:idm-4.8.0

  5. 若要驗證是否已成功部署容器,請執行以下指令來檢查記錄檔案:

    tail -f /data/idm/log/idmconfigure.log

  6. 若要登入容器,請執行以下指令:

    docker exec -it <容器> <指令>

    例如,

    docker exec -it engine-container bash

附註:若要執行 ndstracendsrepair 等 Identity Vault 公用程式,請以非 root 使用者 nds 的身分登入容器。如果您以 root 使用者身分登入,則無法執行這些公用程式。若要以 nds 使用者身分登入容器,請執行 docker exec -it engine-container sudo nds 指令。

8.6.4 部署遠端載入器容器

  1. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  2. 執行以下指令以載入影像:

    docker load --input IDM_48_remoteloader.tar.gz

  3. 使用以下指令部署容器:

    docker run -d --ip=192.168.0.2 --network=idmoverlaynetwork --hostname=remoteloader.example.com -p 8090:8090 --name=rl-container -v /etc/hosts:/etc/hosts -v /data:/config remoteloader:idm-4.8.0

    此指令會部署 64 位元和 32 位元版本的遠端載入器。容器的 /opt/novell/eDirectory/lib/dirxml/classes/ 目錄中提供了驅動程式檔案。

  4. 若要登入容器,請執行以下指令:

    docker exec -it <容器> <指令>

    例如,

    docker exec -it rl-container bash

  5. 設定遠端載入器。如需詳細資訊,請參閱《NetIQ Identity Manager Driver Administration Guide》(NetIQ Identity Manager 驅動程式管理指南) 中的「Configuring the Remote Loader and Drivers」(設定遠端載入器和驅動程式)。

8.6.5 部署擴送代理程式容器

  1. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  2. 執行以下指令以載入影像:

    docker load --input IDM_48_fanoutagent.tar.gz

  3. 使用以下指令部署容器:

    docker run -d --ip=192.168.0.3 --network=idmoverlaynetwork --hostname=fanoutagent.example.com --name=foa-container -v /etc/hosts:/etc/hosts -v /data:/config fanoutagent:idm-4.8.0

  4. 若要登入容器,請執行以下指令:

    docker exec -it <容器> <指令>

    例如,

    docker exec -it foa-container bash

  5. 設定擴送代理程式。如需詳細資訊,請參閱《NetIQ Identity Manager Driver for JDBC Fanout Implementation Guide》(NetIQ Identity Manager Driver for JDBC Fanout 實作指南) 中的「Configuring the Fanout Agent」(設定擴送代理程式)。

8.6.6 部署 iManager 容器

  1. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  2. 執行以下指令以載入影像:

    docker load --input IDM_48_iManager320.tar

  3. 使用符合您環境要求的所需組態建立 .env 檔案。例如,在 /data 目錄中建立 iManager.env

    # Certificate Public Key Algorithm
    # Allowed Values: RSA, ECDSA256, ECDSA384
    CERTIFICATE_ALGORITHM=RSA
    # Cipher Suite
    # Allowed Values:
    # For RSA - NONE, LOW, MEDIUM HIGH
    # For ECDSA256 - SUITEB128ONLY
    # For ECDSA384 - SUITEB128, SUITEB192
    CIPHER_SUITE=NONE
    # Tomcat Server HTTP Port
    TOMCAT_HTTP_PORT=8080
    # Tomcat Server SSL Port
    TOMCAT_SSL_PORT=8743
    # iManager Authorized User (admin_name.container_name.tree_name)
    AUTHORIZED_USER=
  4. 在共用磁碟區 data 下建立一個子目錄,例如 iManager

  5. 使用以下指令部署容器:

    docker run -d --ip=192.168.0.4 --name=iman-container --network=idmoverlaynetwork --hostname=imanager.example.com -v /etc/hosts:/etc/hosts -v /data:/config -v /data/iManager.env:/etc/opt/novell/iManager/conf/iManager.env -p 8743:8743 imanager:3.2.0

  6. 若要安裝 Identity Manager 外掛程式,請執行以下步驟:

    1. 登入 iManager。

      https://imanager.example.com:8743/nps/

    2. 按一下「設定」。

    3. 依次按一下外掛程式安裝可用的 NetIQ 外掛程式模組

    4. NetIQ 外掛程式模組清單中選取所有外掛程式,然後按一下安裝

    若要離線獲取外掛程式,請執行以下步驟:

    1. 從 NetIQ 下載網站下載 Identity_Manager_4.8_Linux.iso

    2. 掛接下載的 .iso

    3. 從掛接位置導覽至 /iManager/plugins 目錄,然後獲取所需外掛程式。

    您也可以從 iManager 外掛程式網站上安裝外掛程式。

  7. 重新啟動 iManager 容器。

    docker restart iman-container

  8. 若要登入容器,請執行以下指令:

    docker exec -it <容器> <指令>

    例如,

    docker exec -it iman-container bash

如需部署 iManager 容器的詳細資訊,請參閱《NetIQ iManager Installation Guide》(NetIQ iManager 安裝指南) 中的「Deploying iManager Using Docker Container」(使用 Docker 容器部署 iManager)。

8.6.7 透過 Identity Vault 證書管理中心產生證書

(視情況而定) 僅當您使用 Identity Vault 做為證書管理中心時,本節內容才適用。

下列元件需要您先產生證書才能部署。在為下列元件產生證書前,請務必先部署 Identity Manager 引擎iManager 容器。

產生 OSP 的證書

產生證書需要執行的步驟如下:

  1. 登入 iManager 容器。

    docker exec -it <容器> <指令>

    例如,

    docker exec -it iman-container bash

  2. 請務必設定 Java 路徑。例如,執行以下指令:

    export PATH=<java 安裝位置>/bin:$PATH

    例如,

    export PATH=/opt/netiq/common/jre/bin/:$PATH

    附註:確定安裝的 Java 版本是 Azul Zulu 1.80_222 或更新版本。

  3. 產生 PKCS 金鑰儲存區:

    keytool -genkey -alias osp -keyalg RSA -storetype pkcs12 -keystore /config/tomcat-osp.ks -validity 3650 -keysize 2048 -dname "CN=osp.example.com" -keypass <password> -storepass <password>

  4. 產生證書簽署申請:

    keytool -certreq -v -alias osp -file /config/osp.csr -keypass <password> -keystore /config/tomcat-osp.ks -storepass <password>

  5. 產生自行簽署的證書:

    1. 在 Docker 主機上啟動 iManager,並以管理員身分登入。

    2. 導覽至角色和任務 > NetIQ 證書伺服器 > 核發證書

    3. 瀏覽至在步驟 3 中建立的 .csr 檔案。例如 osp.csr

    4. 下一步

    5. 指定金鑰使用方法,然後按下一步

    6. 對於證書類型,請選取未指定

    7. 下一步

    8. 指定證書的有效期,然後按下一步

    9. 選取二進位 DER 格式的檔案選項圓鈕。

    10. 下一步

    11. 按一下完成

    12. 下載證書並將其複製到 /data 目錄。

  6. 輸出 .der 格式的根證書:

    1. 在 Docker 主機上啟動 iManager,並以管理員身分登入。

    2. 導覽至角色和任務 > NetIQ 證書存取 > 伺服器證書

    3. 選取 SSL 證書 DNS 核取方塊並按一下輸出

    4. 證書下拉式清單中選取「組織 CA」。

    5. 輸出格式下拉式清單中選取 DER

    6. 下一步

    7. 下載證書並將其複製到 /data 目錄。

  7. 將證書輸入至您在步驟 2 中建立的 PKCS 金鑰儲存區中:

    keytool -import -trustcacerts -alias root -keystore /config/tomcat-osp.ks -file /config/cert.der -storepass <password> -noprompt

    keytool -import -alias osp -keystore /config/tomcat-osp.ks -file /config/osp.der -storepass <password> -noprompt

附註:請確定指定為部署輸入的路徑中有金鑰儲存區。

產生 Identity Applications 的證書

產生證書需要執行的步驟如下:

  1. 登入 iManager 容器。

    docker exec -it <容器> <指令>

    例如,

    docker exec -it iman-container bash

  2. 請務必設定 Java 路徑。例如,執行以下指令:

    export PATH=<java 安裝位置>/bin:$PATH

    例如,

    export PATH=/opt/netiq/common/jre/bin/:$PATH

    附註:確定安裝的 Java 版本是 Azul Zulu 1.80_222 或更新版本。

  3. 產生 PKCS 金鑰儲存區:

    keytool -genkey -alias ua -keyalg RSA -storetype pkcs12 -keystore /config/tomcat-ua.ks -validity 3650 -keysize 2048 -dname "CN=identityapps.example.com" -keypass <password> -storepass <password>

  4. 產生證書簽署申請:

    keytool -certreq -v -alias ua -file /config/ua.csr -keypass <password> -keystore /config/tomcat-ua.ks -storepass <password>

  5. 產生自行簽署的證書:

    1. 以管理員身分登入 iManager。

    2. 導覽至角色和任務 > NetIQ 證書伺服器 > 核發證書

    3. 瀏覽至在步驟 3 中建立的 .csr 檔案。例如 ua.csr

    4. 下一步

    5. 指定金鑰使用方法,然後按下一步

    6. 對於證書類型,請選取未指定

    7. 下一步

    8. 指定證書的有效期,然後按下一步

    9. 選取二進位 DER 格式的檔案選項圓鈕。

    10. 下一步

    11. 按一下完成

    12. 下載證書並將其複製到 /data 目錄。

  6. 輸出 .der 格式的根證書:

    1. 以管理員身分登入 iManager。

    2. 導覽至角色和任務 > NetIQ 證書存取 > 伺服器證書

    3. 選取 SSL 證書 DNS 核取方塊並按一下輸出

    4. 證書下拉式清單中選取「組織 CA」。

    5. 在「輸出格式」下拉式清單中選取 DER

    6. 下一步

    7. 下載證書並將其複製到 /data 目錄。

  7. 將證書輸入至步驟 2 中的 PKCS 金鑰儲存區:

    keytool -import -trustcacerts -alias root -keystore /config/tomcat-ua.ks -file /config/cert.der -storepass <password> -noprompt

    keytool -import -alias ua -keystore /config/tomcat-ua.ks -file /config/ua.der -storepass <password> -noprompt

附註:請確定指定為部署輸入的路徑中有證書。

產生 Identity Reporting 的證書

產生證書需要執行的步驟如下:

  1. 登入 iManager 容器。

    docker exec -it <容器> <指令>

    例如,

    docker exec -it iman-container bash

  2. 請務必設定 Java 路徑。例如,執行以下指令:

    export PATH=<java 安裝位置>/bin:$PATH

    例如,

    export PATH=/opt/netiq/common/jre/bin/:$PATH

    附註:確定安裝的 Java 版本是 Azul Zulu 1.80_222 或更新版本。

  3. 產生 PKCS 金鑰儲存區:

    keytool -genkey -alias rpt -keyalg RSA -storetype pkcs12 -keystore /config/tomcat-rpt.ks -validity 3650 -keysize 2048 -dname "CN=identityreporting.example.com" -keypass <password> -storepass <password>

  4. 產生證書簽署申請:

    keytool -certreq -v -alias rpt -file /config/rpt.csr -keypass <password> -keystore /config/tomcat-rpt.ks -storepass <password>

  5. 產生自行簽署的證書:

    1. 以管理員身分登入 iManager。

    2. 導覽至角色和任務 > NetIQ 證書伺服器 > 核發證書

    3. 瀏覽至在步驟 3 中建立的 .csr 檔案。例如 rpt.csr

    4. 下一步

    5. 指定金鑰使用方法,然後按下一步

    6. 對於證書類型,請選取未指定

    7. 下一步

    8. 指定證書的有效期,然後按下一步

    9. 選取二進位 DER 格式的檔案選項圓鈕。

    10. 下一步

    11. 按一下完成

    12. 下載證書並將其複製到 /data 目錄。

  6. 輸出 .der 格式的根證書:

    1. 以管理員身分登入 iManager。

    2. 導覽至角色和任務 > NetIQ 證書存取 > 伺服器證書

    3. 選取 SSL 證書 DNS 核取方塊並按一下輸出

    4. 證書下拉式清單中選取「組織 CA」。

    5. 在「輸出格式」下拉式清單中選取 DER

    6. 下一步

    7. 下載證書並將其複製到 /data 目錄。

  7. 將證書輸入至您在步驟 2 中建立的 PKCS 金鑰儲存區中:

    keytool -import -trustcacerts -alias root -keystore /config/tomcat-rpt.ks -file /config/cert.der -storepass <password> -noprompt

    keytool -import -alias rpt -keystore /config/tomcat-rpt.ks -file /config/rpt.der -storepass <password> -noprompt

附註:請確定指定為部署輸入的路徑中有證書。

8.6.8 部署 OSP 容器

附註:在部署 OSP 容器之前,請務必產生所需的證書。如需詳細資訊,請參閱 產生 OSP 的證書

  1. 產生靜默內容檔案。如需詳細資訊,請參閱 建立靜默內容檔案

  2. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  3. 執行以下指令以載入影像:

    docker load --input IDM_48_osp.tar.gz

  4. 使用以下指令部署容器:

    docker run -d --ip=192.168.0.5 --network=idmoverlaynetwork --hostname=osp.example.com -p 8543:8543 --name=osp-container -v /etc/hosts:/etc/hosts -v /data:/config -e SILENT_INSTALL_FILE=/config/silent.properties osp:idm-4.8.0

  5. 若要驗證是否已成功部署容器,請執行以下指令來檢查記錄檔案:

    tail -f /data/osp/log/idmconfigure.log

  6. 若要登入容器,請執行以下指令:

    docker exec -it <容器> <指令>

    例如,

    docker exec -it osp-container bash

8.6.9 部署 PostgreSQL 容器

  1. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  2. 執行以下指令以載入影像:

    docker load --input IDM_48_postgres.tar.gz

  3. 在共用磁碟區 data 下建立一個子目錄,例如 postgres

    mkdir postgres

  4. 使用以下範例指令部署容器:

    docker run -d --ip=192.168.0.6 --network=idmoverlaynetwork --hostname=postgresql.example.com --name=postgresql-container -p 5432:5432 -e POSTGRES_PASSWORD=<密碼> -v /data/postgres:/var/lib/postgresql/data -v /etc/hosts:/etc/hosts -v /data:/config postgres:9.6.12-alpine

    例如,

    docker run -d --ip=192.168.0.6 --network=idmoverlaynetwork --hostname=postgresql.example.com --name=postgresql-container -p 5432:5432 -e POSTGRES_PASSWORD=novell -v /data/postgres:/var/lib/postgresql/data -v /etc/hosts:/etc/hosts -v /data:/config postgres:9.6.12-alpine

  5. 建立 Identity Applications 的 idmdamin 使用者。

    docker exec -it postgresql-container psql -U postgres -c "CREATE USER idmadmin WITH ENCRYPTED PASSWORD '<password>'"

  6. 建立 Identity Applications、工作流程和 Identity Reporting 資料庫。

    docker exec -it postgresql-container psql -U postgres -c "CREATE DATABASE idmuserappdb"

    docker exec -it postgresql-container psql -U postgres -c "CREATE DATABASE igaworkflowdb"

    docker exec -it postgresql-container psql -U postgres -c "CREATE DATABASE idmrptdb"

    附註:當您設定 Identity Applications 和 Identity Reporting 容器時,會用到這些資料庫。

  7. idmadmin 使用者授予對資料庫的所有特權:

    docker exec -it postgresql-container psql -U postgres -c "GRANT ALL PRIVILEGES ON DATABASE idmuserappdb TO idmadmin"

    docker exec -it postgresql-container psql -U postgres -c "GRANT ALL PRIVILEGES ON DATABASE igaworkflowdb TO idmadmin"

  8. 若要登入容器,請執行以下指令:

    docker exec -it <容器> <指令>

    例如,

    docker exec -it postgresql-container bash

8.6.10 部署 Identity Applications 容器

附註:在部署 Identity Applications 容器之前,請務必產生所需的證書。如需詳細資訊,請參閱 產生 Identity Applications 的證書

  1. 產生靜默內容檔案。如需詳細資訊,請參閱 建立靜默內容檔案

    附註:將應用程式伺服器連接埠的值指定為公開的連接埠 18543。

  2. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  3. 執行以下指令以載入影像:

    docker load --input IDM_48_identityapplication.tar.gz

  4. 使用以下指令部署容器:

    docker run -d --ip=192.168.0.7 --network=idmoverlaynetwork --hostname=identityapps.example.com -p 18543:18543 --name=idapps-container -v /etc/hosts:/etc/hosts -v /data:/config -e SILENT_INSTALL_FILE=/config/silent.properties identityapplication:idm-4.8.0

  5. 若要驗證是否已成功部署容器,請執行以下指令來檢查記錄檔案:

    tail -f /data/userapp/log/idmconfigure.log

  6. 若要登入容器,請執行以下指令:

    docker exec -it <容器> <指令>

    例如,

    docker exec -it idapps-container bash

  7. 執行以下指令:

    附註:在執行此步驟之前,請確定容器已成功部署。

    /opt/netiq/common/jre/bin/keytool -importkeystore -srckeystore /config/tomcat-osp.ks -srcstorepass <密碼> -destkeystore /opt/netiq/idm/apps/tomcat/conf/idm.jks -deststorepass <密碼>

  8. 輸入 yes 以覆寫 root 別名的項目。

  9. 重新啟動 Identity Applications 容器。

    docker restart idapps-container

附註:若要在組態更新公用程式中修改任何設定,請從 Identity Applications 容器的 /opt/netiq/idm/apps/configupdate/ 目錄啟動 configupdate.sh。只能在主控台模式下啟動組態更新公用程式。

8.6.11 部署表單轉譯器容器

  1. 產生靜默內容檔案。如需詳細資訊,請參閱 建立靜默內容檔案

  2. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  3. 執行以下指令以載入影像:

    docker load --input IDM_48_formrenderer.tar.gz

  4. 使用以下指令部署容器:

    docker run -d --ip=192.168.0.8 --network=idmoverlaynetwork --hostname=formrenderer.example.com -p 8600:8600 --name=fr-container -v /etc/hosts:/etc/hosts -v /data:/config -e SILENT_INSTALL_FILE=/config/silent.properties formrenderer:idm-4.8.0

  5. 若要登入容器,請執行以下指令:

    docker exec -it <容器> <指令>

    例如,

    docker exec -it fr-container bash

8.6.12 部署 ActiveMQ 容器

  1. 產生靜默內容檔案。如需詳細資訊,請參閱 建立靜默內容檔案

  2. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  3. 執行以下指令以載入影像:

    docker load --input IDM_48_activemq.tar.gz

  4. 使用以下指令部署容器:

    docker run -d --ip=192.168.0.9 --network=idmoverlaynetwork --hostname=activemq.example.com -p 8161:8161 -p 61616:61616 --name=amq-container -v /etc/hosts:/etc/hosts -v /data:/config --env-file /data/silent.properties activemq:idm-4.8.0

  5. 若要登入容器,請執行以下指令:

    docker exec -it <容器> <指令>

    例如,

    docker exec -it amq-container bash

  6. 設定 ActiveMQ。如需詳細資訊,請參閱《NetIQ Identity Manager Driver for JDBC Fanout Implementation Guide》(NetIQ Identity Manager Driver for JDBC Fanout 實作指南) 中的「Setting Up ActiveMQ Startup Service 」(設定 ActiveMQ 啟動服務)。

8.6.13 部署 Identity Reporting 容器

附註:在部署 Identity Reporting 容器之前,請務必產生所需的證書。如需詳細資訊,請參閱 產生 Identity Reporting 的證書

  1. 產生靜默內容檔案。如需詳細資訊,請參閱 建立靜默內容檔案

    附註:將應用程式伺服器連接埠的值指定為公開的連接埠 28543。

  2. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  3. 執行以下指令以載入影像:

    docker load --input IDM_48_identityreporting.tar.gz

  4. 使用以下指令部署容器:

    docker run -d --ip=192.168.0.10 --network=idmoverlaynetwork --hostname=identityreporting.example.com -p 28543:28543 --name=rpt-container -v /etc/hosts:/etc/hosts -v /data:/config -e SILENT_INSTALL_FILE=/config/silent.properties identityreporting:idm-4.8.0

  5. 若要驗證是否已成功部署容器,請執行以下指令來檢查記錄檔案:

    tail -f /data/reporting/log/idmconfigure.log

  6. 若要登入容器,請執行以下指令:

    docker exec -it <容器> <指令>

    例如,

    docker exec -it rpt-container bash

  7. 執行以下指令:

    附註:在執行此步驟之前,請確定容器已成功部署。

    /opt/netiq/common/jre/bin/keytool -importkeystore -srckeystore /config/tomcat-osp.ks -srcstorepass <密碼> -destkeystore /opt/netiq/idm/apps/tomcat/conf/idm.jks -deststorepass <密碼>

  8. 輸入 yes 以覆寫 root 別名的項目。

  9. 重新啟動 Identity Reporting 容器。

    docker restart rpt-container

8.6.14 部署 SSPR 容器

部署 SSPR 容器需要執行的任務如下:

  1. 產生 SSPR 的靜默內容檔案。在產生靜默內容檔案時選取 Identity Applications。如需詳細資訊,請參閱 建立靜默內容檔案

  2. 在共用磁碟區 data 下建立一個子目錄,例如 sspr

    mkdir sspr

  3. 在解壓縮 Identity_Manager_4.8_Containers.tar.gz 檔案的位置,導覽至 Identity_Manager_4.8_Containers 目錄。

  4. 執行以下指令以載入影像:

    docker load --input IDM_48_sspr.tar.gz

  5. 使用以下範例指令部署容器:

    docker run -d --ip=192.168.0.11 --network=idmoverlaynetwork --hostname=sspr.example.com --name=sspr-container -v /etc/hosts:/etc/hosts -v /data/sspr:/config -p 8443:8443 sspr/sspr-webapp:latest

  6. 在 Docker 主機上執行以下指令,以將 Docker 主機中的 silent.properties 檔案複製到 SSPR 容器:

    docker cp /data/silent.properties sspr-container:/tmp

  7. 將靜默內容檔案載入到 SSPR 容器。

    docker exec -it sspr-container /app/command.sh ImportPropertyConfig /tmp/silent.properties

    附註:檢查是否在 SSPR 容器的 /config 目錄下建立了 SSPRConfiguration.xml,並驗證該檔案的內容。

  8. 將 OAuth 證書輸入至 SSPR 中:

    1. 在 Docker 主機上編輯 /data/sspr 目錄中的 SSPRConfiguration.xml 檔案,將 configIsEditable 旗標的值設定為 true 並儲存變更。

    2. 啟動瀏覽器並輸入 https://sspr.example.com:8443/sspr URL。

    3. 使用管理員身分證明 (例如 uaadmin) 登入。

    4. 按一下右上角的使用者 (例如 uaadmin),然後按一下組態編輯器

    5. 指定組態密碼,然後按一下登入

    6. 按一下設定 > 單一登入 (SSO) 用戶端 > OAuth,確定所有 URL 都使用 HTTPS 通訊協定和正確的連接埠。

    7. OAuth 伺服器證書下,按一下從伺服器輸入以輸入新證書,然後按一下確定

    8. 按一下右上角的 以儲存證書。

    9. 檢視變更並按一下確定

    10. SSPR 應用程式重新啟動之後,編輯 SSPRConfiguration.xml 檔案,將 configIsEditable 旗標的值設定為 true 並儲存變更。