【问题标题】:migrating wso2 Identity Server to 5.11.0 from 5.7.0将 wso2 身份服务器从 5.7.0 迁移到 5.11.0
【发布时间】:2021-09-16 10:38:29
【问题描述】:

我有几个关于wso2 IS升级的问题-

  1. 我们可以直接将 wso2 IS 5.7.0 升级到 5.11.0 吗?

  2. 我正在为 wso2 IS 5.7.0 使用 Postgres,在准备迁移时,我可以参考我需要在 wso2 配置中进行的更改吗?

  3. 是否需要在 Postgres 中为 5.11.0 创建另一个数据库,然后将其配置为 IS 中的数据源?

更新: 我在执行升级时遇到以下错误- 服务器/ [2021-09-20 12:49:26,279] [] INFO {org.wso2.carbon.core.multitenancy.eager.TenantLoadingConfig} - 使用租户延迟加载策略... [2021-09-20 12:49:26,315] [] 错误 {org.wso2.carbon.core.internal.permission.update.PermissionUpdater} - 更新租户权限缓存时出错:-1234 java.lang.NullPointerException 在 org.wso2.carbon.core.internal.permission.update.PermissionUpdater.update(PermissionUpdater.java:72) 在 org.wso2.carbon.core.internal.permission.update.PermissionUpdateServiceComponent.activate(PermissionUpdateServiceComponent.java:65) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260) 在 org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146) 在 org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:345) 在 org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620) 在 org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197) 在 org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343) 在 org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222) 在 org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:113) 在 org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:985) 在 org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) 在 org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151) 在 org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:866) 在 org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:804) 在 org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130) 在 org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:228) 在 org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:525) 在 org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:544) 在 org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:529) 在 org.wso2.carbon.core.init.CarbonServerManager.removePendingItem(CarbonServerManager.java:305) 在 org.wso2.carbon.core.init.PreAxis2ConfigItemListener.bundleChanged(PreAxis2ConfigItemListener.java:118) 在 org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:973) 在 org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) 在 org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345)

[2021-09-20 12:49:29,790] [] INFO {org.wso2.carbon.identity.core.internal.IdentityCoreServiceComponent} - 执行迁移客户端:org.wso2.carbon.is.migration.MigrationClientImpl [2021-09-20 12:49:29,853] [] INFO {org.wso2.carbon.is.migration.config.Config} - WSO2 产品迁移服务任务:加载迁移配置,PATH:C:\Users\msingh11\下载~1\WSO2IS~1.0\bin..\migration-resources\migration-config.yaml [2021-09-20 12:49:29,951] [] INFO {org.wso2.carbon.is.migration.config.Config} - WSO2 产品迁移服务任务:成功加载配置文件。 [2021-09-20 12:49:29,952] [] 信息 {org.wso2.carbon.is.migration.Mi}

deployemnt.toml 文件是-

    [server]
hostname = "localhost"
node_ip = "127.0.0.1"
base_path = "https://$ref{server.hostname}:${carbon.management.port}"

[super_admin]
username = "wso2admin"
password = "admin"
create_admin_account = false


[user_store]
class="org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager"
connection_url = "ldap://localhost:${Ports.EmbeddedLDAP.LDAPServerPort}"
connection_name = "uid=admin,ou=system"
connection_password = "admin"
user_search_base="ou=Users,dc=wso2,dc=org"
user_name_list_filter="(objectClass\u003dperson)"
user_name_search_filter="(\u0026amp;(objectClass\u003dperson)(uid\u003d?)"
user_name_attribute= "uid"
user_entry_object_class= "identityPerson"
group_entry_object_class= "groupOfNames"
group_name_attribute= "cn"
group_name_search_filter= "(\u0026amp;(objectClass\u003dgroupOfNames)(cn\u003d?))"
group_name_list_filter= "(objectClass\u003dgroupOfNames)"
group_search_base="ou=Groups,dc=wso2,dc=org"
membership_attribute= "member"
anonymous_bind= "false"
display_name_attribute= ""
back_links_enabled= "false"
is_bulk_import_supported= "false"
empty_roles_allowed= "true"
password_hash_method= "PLAIN_TEXT"
kdc_enabled= "false"
default_realm_name= "WSO2.ORG"
connection_pooling_enabled= "true"
lDAP_connection_timeout= "5000"
base_dn = "dc=wso2,dc=org"      #refers the base dn on which the user and group search bases will be generated

[user_store.properties]
TenantManager="org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager"

[database.carbon_db]
type = "RDBMS"
url = "jdbc:postgresql://localhost:5432/wso2"
username = "wso2admin"
password = "admin"
driver="org.postgresql.Driver"


[database.identity_db]
type = "RDBMS"
url = "jdbc:postgresql://localhost:5432/wso2"
username = "wso2admin"
password = "admin"
driver="org.postgresql.Driver"

[database.shared_db]
type = "RDBMS"
url = "jdbc:postgresql://localhost:5432/wso2"
username = "wso2admin"
password = "admin"
driver="org.postgresql.Driver"

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

[truststore]
file_name="client-truststore.jks"
password="wso2carbon"
type="JKS"

[account_recovery.endpoint.auth]
hash= "66cd9688a2ae068244ea01e70f0e230f5623b7fa4cdecb65070a09ec06452262"

[identity.auth_framework.endpoint]
app_password= "dashboard"

[[datasource]]
id="source"
url="jdbc:postgresql://localhost:5432/wso2"
username="wso2admin"
password="admin"
driver="org.postgresql.Driver"
[datasource.pool_options]
maxActive="80"
maxWait="60000"
minIdle="5"
testOnBorrow="true"
validationQuery="SELECT 1"
validationInterval="30000"
defaultAutoCommit="false"

[[datasource]]
id="target"
url="jdbc:postgresql://localhost:5432/wso2_new"
username="wso2admin"
password="admin"
driver="org.postgresql.Driver"
[datasource.pool_options]
maxActive="80"
maxWait="60000"
minIdle="5"
testOnBorrow="true"
validationQuery="SELECT 1"
validationInterval="30000"
defaultAutoCommit="false"
# The KeyStore which is used for encrypting/decrypting internal data. By default the primary keystore is used as the internal keystore.

#[keystore.internal]
#file_name = "$ref{keystore.primary.file_name}"
#type = "$ref{keystore.primary.type}"
#password = "$ref{keystore.primary.password}"
#alias = "$ref{keystore.primary.alias}"
#key_password = "$ref{keystore.primary.key_password}"

# The KeyStore which is used for tls communication. By default the primary keystore is used as the tls keystore.

#[keystore.tls]
#file_name = "$ref{keystore.primary.file_name}"
#type = "$ref{keystore.primary.type}"
#password = "$ref{keystore.primary.password}"
#alias = "$ref{keystore.primary.alias}"
#key_password = "$ref{keystore.primary.key_password}"

#Google reCAPTCHA settings.

#[recaptcha]
#enabled = "true"
#api_url = "https://www.google.com/recaptcha/api.js"
#verify_url = "https://www.google.com/recaptcha/api/siteverify"
#site_key = ""
#secret_key = ""

# SMTP email sender settings.
#[output_adapter.email]
#from_address= "abcd@gmail.com"
#username= "abcd"
#password= "xxxx"
#hostname= "smtp.gmail.com"
#port= 587

我在配置中缺少什么?

【问题讨论】:

    标签: wso2 wso2-am wso2is


    【解决方案1】:

    我们可以直接将wso2is-5.7.0升级为wso2is-5.11.0吗?

    是的,但是您需要执行几个步骤来配置从 wso2is-5.7.0wso2is-5.11.0 的迁移

    1. 确保满足所有先决条件,可以从here 看到先决条件
    2. 接下来按照here 中的详细信息执行迁移前的步骤
    3. 对于自定义组件、自定义库、密钥库管理器、租户等资源,请点击here 中的链接

    我将Postgres 用于wso2is-5.7.0,我可以获得一些参考>在准备迁移时我需要在 wso2 配置中进行的更改吗?

    如果您使用 Postgres,则在迁移过程中,会在数据库中创建uuid-ossp 扩展。为了创建这个扩展,数据库用户应该有superuser 权限。如果用户还不是超级用户,请在开始迁移之前分配权限。

    ALTER USER <user> WITH SUPERUSER;
    

    我是否需要在 Postgres 中为 wso2is-5.11.0 创建另一个数据库,然后 将其配置为 IS 中的数据源?

    不,您不想在Postgres 中为 5.11.0 创建另一个数据库并对其进行配置,但为了安全起见,您可以拥有 5.7.0 数据库的快照并将其插入 5.11。 0

    【讨论】:

    • 以下步骤需要什么,能否请您解释一下-要迁移超级租户,请将内容从 /repository/deployment/server 目录复制到 /repository/部署/服务器目录。
    • 它将包含所有webapps 以及您为超级租户(即carbon.super 租户)所做的所有更改
    • 你能看看更新部分吗
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-22
    • 2012-11-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多