В этом посте мы собираемся смонтировать продукты wso2 в реестр удаленного управления. В сценарии по умолчанию реестр управления wso2 указывает на локальную базу данных h2.
Сначала давайте настроим экземпляр реестра управления так, чтобы он указывал на источник данных MsSQL.
- Загрузите продукт WSO2 Governance Registry и распакуйте его.
- Перейдите в / repository / conf / datasources и откройте master-datasources.xml
- Затем измените следующие записи в источнике данных WSO2CARBON.
<datasource> <name>WSO2_CARBON_DB</name> <description>The datasource used for registry and user manager</description> <jndiConfig> <name>jdbc/WSO2CarbonDB</name> </jndiConfig> <definition type="RDBMS"> <configuration> <url>jdbc:sqlserver://127.0.0.1:1433;databaseName=REMOTEDB</url> <username>sa</username> <password>pass#word2</password> <driverClassName>com.microsoft.sqlserver.jdbc.SQLServerDriver</driverClassName> <maxActive>50</maxActive> <maxWait>60000</maxWait> <testOnBorrow>true</testOnBorrow> <validationQuery>SELECT 1</validationQuery> <validationInterval>30000</validationInterval> </configuration> </definition> </datasource>
- Заполните URL, имя пользователя и пароль в соответствии с вашим экземпляром MsSQL.
- Войдите в MSSQL 2012 Management studio и создайте базу данных под названием REMOTEDB
- Затем перейдите в папку / repository / components / lib в извлеченной папке продукта greg и скопируйте загруженный коннектор MsSQL JDBC. Вы можете скачать драйвер sqljdbc по этой ссылке. Скачать
- Затем запустите продукт управления WSO2 с параметром -Dsetup. (Опция -Dsetup заполняет новые схемы во вновь указанном MsSQL REMOTEDB)
D:\blog\wso2greg-4.6.0\bin>wso2server.bat -Dsetup
Теперь давайте смонтируем продукт WSO2 в этот удаленный реестр.
- Давайте использовать WSO2 API Manager для этого примера поста. Сначала загрузите продукт и распакуйте его на жесткий диск.
- Перейдите в папку / repository / conf / datasources и откройте файл master-datasources.xml.
- Затем добавьте новый источник данных следующим образом. Для демонстрации давайте назовем новый источник данных как WSO2_CARBON_DB2.
<datasource> <name>WSO2_CARBON_DB2</name> <description>The datasource used for registry and user manager</description> <jndiConfig> <name>jdbc/WSO2CarbonDB2</name> </jndiConfig> <definition type="RDBMS"> <configuration> <url>jdbc:sqlserver://127.0.0.1:1433;databaseName=REMOTEDB</url> <username>sa</username> <password>pass#word2</password> <driverClassName>com.microsoft.sqlserver.jdbc.SQLServerDriver</driverClassName> <maxActive>50</maxActive> <maxWait>60000</maxWait> <testOnBorrow>true</testOnBorrow> <validationQuery>SELECT 1</validationQuery> <validationInterval>30000</validationInterval> </configuration> </definition> </datasource>
- Обратите внимание, что этот источник данных является совершенно новой записью, и пусть конфигурация по умолчанию переосмысливается.
- Теперь, как мы это делали в продукте управления WSO2, скопируйте драйвер saljdbc в папку / repository / components / lib
- Не открывайте файл / repository / conf registry.xml в продукте WSO2 API Manager и внесите следующие изменения.
- Добавьте новый dbConfig следующим образом
<dbConfig name="remoteRegistry"> <dataSource>jdbc/WSO2CarbonDB2</dataSource> </dbConfig>
- Обратите внимание, что для dataSource задано имя jndiConfig, которое мы использовали в новом источнике данных, определенном в master-datasources.xml менеджера API.
- Теперь найдите следующую конфигурацию, раскомментируйте ее и измените ее на следующие значения конфигурации.
<remoteInstance url="https://localhost:9443/registry"> <id>apimanager</id> <dbConfig>remoteRegistry</dbConfig> <readOnly>false</readOnly> <enableCache>true</enableCache> <registryRoot>/</registryRoot> </remoteInstance>
- Note that the dbConfig name is set to the newly added dbConfig name, which is «remoteRegistry» in this example. Give a unique id value.
- Then we set the remote mounted path using the following configuration.
<mount path="/_system/config" overwrite="true"> <instanceId>apimanager</instanceId> <targetPath>/_system/amnode</targetPath> </mount>
- This configuration is comment by default and you have to uncomment and provide the relevant values. Note that the instanceID value is same as the id value in remoteInstance configuration.
- The target path is set to /_system/amnode if you are using several API Manager nodes you can set all to the same path. If it is a different product it is recommend to use a different path for example ESB node path would be /_system/esbnode
- /_system/config is the path which the product is going to be mounted.
- Now finally if you have followed the above steps correctly start the API Manager with some port Offset if the product is running in the same machine.
D:\blog\wso2am-1.6.0\bin>wso2server.bat -DportOffset=100
- Now log into the API Manager Web UI using the following URL https://192.168.1.2:9543/carbon/
- При просмотре ресурса можно увидеть удаленно смонтированный реестр / _system / config.
Представление ресурса API Manager |
Это все на данный момент. Не стесняйтесь высказывать свои мысли о посте. ?