WSO2IS 5.10.0 - 通过 deployment.toml 文件更新配置的问题

WSO2IS 5.10.0 - Issue to update configuration via deployment.toml file

我部署了 docker 的 WSO2IS 5.10.0 并安装了以下卷:

    --volume /root/docker/wso2is/backup:/home/wso2carbon/wso2is-5.10.0/backup 
    --volume /root/docker/wso2is/dbscripts:/home/wso2carbon/wso2is-5.10.0/dbscripts
    --volume /root/docker/wso2is/lib:/home/wso2carbon/wso2is-5.10.0/lib 
    --volume /root/docker/wso2is/solr:/home/wso2carbon/wso2is-5.10.0/solr 
    --volume /root/docker/wso2is/repository:/home/wso2carbon/wso2is-5.10.0/repository
    --volume /root/docker/wso2is/resources:/home/wso2carbon/wso2is-5.10.0/resources
    --volume /root/docker/wso2is/tmp:/home/wso2carbon/wso2is-5.10.0/tmp 
    --volume /root/docker/wso2is/updates:/home/wso2carbon/wso2is-5.10.0/updates

我的文件deployment.toml:

-rw-r--r-- 1 802 802   937  8 mars   2020 deployment.toml
[server]
hostname = "192.168.213.30"
node_ip = "192.168.213.30"
base_path = "https://$ref{server.hostname}:${carbon.management.port}"

[super_admin]
username = "admin"
password = "admin"
create_admin_account = true

[user_store]
type = "read_write_ldap_unique_id"
connection_url = "ldap://localhost:${Ports.EmbeddedLDAP.LDAPServerPort}"
connection_name = "uid=admin,ou=system"
connection_password = "admin"
base_dn = "dc=wso2,dc=org"      #refers the base dn on which the user and group search bases will be generated

[database.identity_db]
type = "h2"
url = "jdbc:h2:./repository/database/WSO2IDENTITY_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000"
username = "wso2carbon"
password = "wso2carbon"

[database.shared_db]
type = "h2"
url = "jdbc:h2:./repository/database/WSO2SHARED_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000"
username = "wso2carbon"
password = "wso2carbon"

[keystore.primary]
file_name = "wso2carbon.jks"
password = "wso2carbon"

当我想通过 deployment.toml 文件更新我的配置时,出现以下错误:

[2020-11-07 18:19:38,953]  WARN {org.wso2.config.mapper.ConfigParser} - Configurations Changed in :repository/conf/deployment.toml
[2020-11-07 18:19:38,957]  WARN {org.wso2.config.mapper.ConfigParser} - Overriding files in configuration directory /home/wso2carbon/wso2is-5.10.0
[2020-11-07 18:19:38,961]  SEVERE {org.wso2.carbon.server.Main handleConfiguration} - Error while performing configuration changes
org.wso2.config.mapper.ConfigParserException: Error while deleting backup
        at org.wso2.config.mapper.util.FileUtils.deleteDirectory(FileUtils.java:118)
        at org.wso2.config.mapper.ConfigParser.backupConfigurations(ConfigParser.java:167)
        at org.wso2.config.mapper.ConfigParser.deployAndStoreMetadata(ConfigParser.java:178)
        at org.wso2.config.mapper.ConfigParser.parse(ConfigParser.java:127)
        at org.wso2.carbon.server.Main.handleConfiguration(Main.java:231)
        at org.wso2.carbon.server.Main.main(Main.java:103)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at org.wso2.carbon.bootstrap.Bootstrap.loadClass(Bootstrap.java:70)
        at org.wso2.carbon.bootstrap.Bootstrap.main(Bootstrap.java:51)

你知道我应该怎么做吗?

感谢您的帮助。

帕斯卡

参考您提供的与堆栈跟踪相关的代码。

https://github.com/wso2/config-mapper/blob/master/src/main/java/org/wso2/config/mapper/util/FileUtils.java#L118

备份文件未删除。因此错误正在抛出。

可能的原因可能是启动 wso2 服务器的用户没有权限。

请检查 /backup 文件夹的权限。该文件夹似乎没有执行备份删除所需的权限。 如果备份文件夹权限设置为 drwxr-xr-x,您将能够进行配置更新并启动服务器而不会出现此错误。