SAP HANA系统管理

启动和停止 SAP HANA 系统

作为操作系统管理员,您可能需要停止、启动和重新启动 SAP HANA系统。

操作系统管理员(adm 用户)可以停止、启动和 使用以下任一选项重新启动 SAP HANA 系统:<sid>

  • 数据库目录页中的 SAP HANA 主控室

  • “系统”视图中的 SAP HANA Studio

  • 使用 SAPControl 程序启动系统或横向扩展的 SAP HANA 系统中的所有主机

当系统重新启动时,各个服务将逐个启动;重启的详细信息 序列在下面的单独主题中给出。启动系统数据库也会启动所有租户数据库 尽管租户数据库也可以单独管理。

使用 SAPControl 启动和停止系统

您可以使用 SAPControl 程序从命令启动或停止 SAP HANA 系统 线。

注意

您必须以用户 adm 或具有 root 权限的用户身份登录到 SAP 系统主机。<sid>

行动命令
启动系统/usr/sap/hostctrl/exe/sapcontrol -nr <instance_number> -function StartSystem HDB
停止系统/usr/sap/hostctrl/exe/sapcontrol -nr <instance_number> -function StopSystem HDB
查询系统中所有主机的当前状态/usr/sap/hostctrl/exe/sapcontrol -nr <instance_number> -function GetSystemInstanceList

重新启动序列

SAP HANA 系统重新启动序列将系统还原到完全运行状态 迅速。

重新启动 SAP HANA 系统时,重新启动代理将执行以下活动 持久性层。

  1. 访问每个服务的数据量以读取和加载重新启动 记录。
  2. 未结事务列表将读入内存。
  3. 行表将加载到内存中。
  4. 使用重做日志处理未结事务:
    1. 数据库停止时打开的写入事务将被滚动 返回。
    2. 未写入数据区域的已提交事务的更改是 向前滚动。

      第一列表开始重新加载到内存中 当它们被访问以进行前滚时。

    注意

    由于常规或“软”关闭会写入保存点,因此没有 在这种情况下,要处理的重播日志条目。

    完成此步骤后, 数据库在技术上是可用的,并且可以登录。

  5. 已确定并回滚已中止的事务。
  6. 保存点是在数据库的还原一致性状态下执行的。
  7. 标记为预加载的列表及其属性将异步加载到 背景(如果它们尚未作为日志重播的一部分加载)。

    这 preload 参数在表的元数据中配置。此功能是 例如,使重要业务使用的某些表和列很有用 流程可用速度更快。

  8. 在重新启动之前加载的列表及其属性开始重新加载 在后台异步(如果它们尚未作为 日志重播,或者因为它们被标记为预加载)。

    在正常运行期间, 系统跟踪当前正在使用的表。此列表用作 重新启动后重新加载表。

如步骤 7 和 8 中所述重新加载列表会将数据库还原到完全 运行状态更快。但是,它确实会产生性能开销,并且可能不会 在非生产系统中是必要的。您可以通过在 sql 部分中设置 reload_tables 参数来停用 indexserver.ini 文件中的重新加载功能 自。此外,您还可以配置表的数量 其属性使用 indexserver.ini 的并行部分中的 tables_preloaded_in_parallel 参数并行加载。这 参数还确定并行预加载的表数。false

管理租户数据库

作为租户数据库系统的管理员,您负责创建和 配置新的租户数据库,随后监视可用性和性能 的数据库,以及执行某些数据库管理任务。

注意

可以使用 SAP HANA 管理租户数据库 驾驶舱。然而 某些任务需要命令行工具。

注意

如果安装了 SAP HANA 选项,请查看 相应管理指南中有关租户数据库的部分 在继续之前,可以选择其他信息。请注意,您需要 SAP HANA 选项和功能的其他许可证。有关详细信息,请参阅 SAP HANA Platform 中功能的重要免责声明、选项和 能力。

管理审核策略

您可以更改或删除一个或多个租户数据库的审核策略。

有关详细信息,请参阅安全管理和用户管理中的管理租户数据库的审核策略。

创建和配置租户数据库

如果未创建初始租户,则在安装后创建租户数据库,在 从单容器系统转换为多容器系统,或随时将新的 数据库是必需的。

作为系统管理员,您可以从系统数据库创建租户数据库。然后你可以 根据需要配置新数据库:

  • 提高数据库隔离级别
  • 禁用租户数据库中不需要的某些功能(例如,备份 操作)。租户数据库中禁用的功能仍可通过 系统数据库。
  • 如果租户数据库之间的只读查询是 必填
  • 编辑配置更改黑名单,使关键系统属性无法 由租户数据库管理员更改
  • 如果 HTTP 客户端将通过 SAP HANA XS 经典服务器

注意

可以使用 SAP HANA 管理租户数据库 驾驶舱。然而 某些任务需要命令行工具。

转换SAP HANA支持租户数据库的系统

可以使用 SAP HANA 数据库生命周期管理器将 SAP HANA 系统转换为支持租户数据库 (HDBLCM)居民 程序。将 SAP HANA 系统转换为租户数据库系统是 永久且不可逆转。

如果系统是在单容器模式下安装的,则仍可以实现租户数据库 通过将系统转换为租户数据库系统。在转换过程中, 创建系统数据库和一个租户数据库。租户数据库包含所有 原始系统的数据,包括用户、系统配置、连接 属性(端口配置)和系统许可证。但是,它包含备份历史记录。

转换后,您可以根据需要创建和配置更多租户数据库。

注意

转换后,端口偏移值 100 用于为系统保留端口 复制通信。在转换之前定义的端口偏移量不是 改变。

使用图形用户界面转换为租户数据库

可以使用 SAP HANA 数据库生命周期管理器将 SAP HANA 系统转换为支持租户数据库 (HDBLCM)居民 图形用户界面中的程序。将 SAP HANA 系统转换为 租户数据库系统是永久性的,不能撤消。

先决条件

  • SAP HANA系统已将其服务器软件安装在共享文件上 系统(导出选项、 )。rwno_root_squash
  • 主机有权访问安装目录和 /。<sapmnt><sapmnt><SID>
  • SAP HANA 系统已随 SAP HANA 数据库生命周期管理器一起安装 (HDBLCM)。
  • SAP HANA 数据库服务器已启动并运行。
  • 您以 root 用户或系统管理员用户 <sid>adm) 身份登录。

程序

  1. 更改为 SAP HANA 驻留的 HDBLCM 目录:
    
    cd <sapmnt>/<SID>/hdblcm
    默认情况下,为 /hana/shared/<sapmnt>
  2. 在图形用户界面中以交互方式启动 SAP HANA 数据库生命周期管理器:
    ./hdblcmgui
    SAP HANA 数据库生命周期管理器图形化 此时将显示用户界面。
    注意

    在以下情况下激活本地安全 (LSS) 存储 安装,使用参数 运行。hdblcmguisecure_store=localsecurestore

  3. 从活动选项中选择“转换为租户数据库”。然后 选择“下一步”。
  4. 提供 <sid>adm 用户的密码,并 SYSTEMDB 的 SYSTEM 用户,然后选择“下一步”。
  5. 查看 摘要,然后选择“运行”以完成 配置。

结果

SAP HANA 系统是一个租户数据库系统,具有一个系统数据库和 一个租户数据库,这两个数据库都在运行。您可以通过添加两者来验证这一点 数据库到 SAP HANA 驾驶舱M_DATABASES,并从 系统数据库。结果将如下所示:

| DATABASE_NAME   |DESCRIPTION                       | ACTIVE_STATUS |
|-----------------|----------------------------------|---------------|
| SYSTEMDB        | SystemDB-<SID>-<INSTANCE>        | YES           |
| <SID>           | SingleDB-<SID>-<INSTANCE>        | YES           |

请注意有关租户数据库的以下内容:

  • 它包含所有数据(包括用户、配置和连接属性) 原始系统(但不是原始备份历史记录)。
  • 特定于租户的配置文件(例如 indexserver.ini、xsengine.ini、 等)现在存储在以下位置: /usr/sap//SYS/global/hdb/custom/config/DB_。<SID><database_name>
  • 其跟踪文件现在存储在以下位置:/usr/sap/<SID>/HDB<instance>/<host>/trace/DB_<database_name>。
    注意

    任何 在转换系统之前,trace 目录中的跟踪文件是 不为所动。

后续步骤

  • 创建和配置任何其他必需的租户数据库。有关详细信息,请参阅创建租户数据库。
    注意

    如果配置了属性 原始索引服务器、脚本服务器或 XSengine 服务器 系统,这些设置最初适用于所有新的 租户数据库。如果需要,必须显式配置租户数据库。 有关详细信息,请参阅租户数据库中的系统属性 SAP HANA 管理中的系统 指南。

  • 使用命令行界面转换为租户数据库

    可以使用 SAP HANA 数据库生命周期管理器将 SAP HANA 系统转换为支持租户数据库 (HDBLCM)居民 程序。将 SAP HANA 系统转换为 租户数据库系统是永久性的,不能撤消。

    先决条件

    • SAP HANA系统已将其服务器软件安装在共享文件上 系统(导出选项、 )。rwno_root_squash
    • 主机有权访问安装目录和 /。<sapmnt><sapmnt><SID>
    • SAP HANA 系统已随 SAP HANA 数据库生命周期管理器一起安装 (HDBLCM)。
    • SAP HANA 数据库服务器已启动并运行。
    • 您以 root 用户或系统管理员用户 <sid>adm) 身份登录。

    程序

    1. 更改为 SAP HANA 驻留的 HDBLCM 目录:
      cd <sapmnt>/<SID>/hdblcm
      默认情况下,为 /hana/shared。<sapmnt>
    2. 以交互方式启动 SAP HANA 数据库生命周期管理器 命令行:
      ./hdblcm --action=convert_to_multidb
    3. 提供 <sid>adm 用户的密码和 SYSTEMDB 用户的 SYSTEM 用户。
    4. 查看摘要,然后选择 y 以完成 配置。

    结果

    SAP HANA 系统是一个租户数据库系统,具有一个系统数据库和 一个租户数据库,这两个数据库都在运行。您可以通过添加两者来验证这一点 数据库到 SAP HANA 驾驶舱M_DATABASES,并从 系统数据库。结果将如下所示:

    | DATABASE_NAME   |DESCRIPTION                       | ACTIVE_STATUS |
    |-----------------|----------------------------------|---------------|
    | SYSTEMDB        | SystemDB-<SID>-<INSTANCE>        | YES           |
    | <SID>           | SingleDB-<SID>-<INSTANCE>        | YES           |

    请注意有关租户数据库的以下内容:

    • 它包含所有数据(包括用户、配置和连接属性) 原始系统(但不是原始备份历史记录)。
    • 特定于租户的配置文件(例如 indexserver.ini、xsengine.ini、 等)现在存储在以下位置: /usr/sap//SYS/global/hdb/custom/config/DB_。<SID><database_name>
    • 其跟踪文件现在存储在以下位置:/usr/sap/<SID>/HDB<instance>/<host>/trace/DB_<database_name>。
      注意

      任何 在转换系统之前,trace 目录中的跟踪文件是 不为所动。

    后续步骤

    • 创建和配置任何其他必需的租户数据库。有关详细信息,请参阅创建租户数据库。
      注意

      如果配置了属性 原始索引服务器、脚本服务器或 XSengine 服务器 系统,这些设置最初适用于所有新的 租户数据库。如果需要,必须显式配置租户数据库。 有关详细信息,请参阅租户数据库中的系统属性 SAP HANA 管理中的系统 指南。

参数参考:将 SAP HANA 系统转换为支持租户数据库

将 SAP HANA 系统转换为租户时,可以指定参数 数据库,以便自定义配置任务。

SAP HANA 数据库 Lifecycle Manager 转换为 MultiDB Action 还支持以下参数:
  • batch
  • configfile
  • dump_configfile_template
  • help
  • list_systems
  • read_password_from_stdin
  • version
有关这些参数的详细信息,请参阅 SAP HANA 服务器 安装和更新指南

有关参数的完整列表,请调用 convert to multidb 任务的帮助 使用以下命令:

./hdblcm --action=convert_to_multidb --help

import_content

进付单位。

语法

在命令行中,使用以下语法:

--import_content[=off]

此参数的默认值为 。--import_content

无开始

防止 SAP HANA 系统 开始。

语法

在命令行中,使用以下语法:

--nostart

nostart_tenant_db

阻止 SAP HANA 租户 数据库从启动开始。

语法

在命令行中,使用以下语法:

--nostart_tenant_db

转换系统复制环境以支持租户数据库

可以将 SAP HANA 系统复制环境转换为支持 处于脱机或接近零停机时间方法的租户数据库。

可以转换属于 系统复制配置以支持租户数据库。您可以选择 将所有站点脱机后,将 SAP HANA 系统转换为 以接近零的停机时间方法进行转换,以最大程度地减少系统停机时间。

离线转换

要执行脱机转换,必须首先停止所有站点的所有系统。然后 从主站点开始,执行转换脚本。一旦主站点 转换并再次联机,继续下一个站点的转换过程, 遵循复制链。

接近零停机时间转换

为了执行接近零的停机时间转换,请在 辅助站点。一旦此站点的转换完成,请执行接管。 停止所有其他系统后,在主站点上执行转换脚本 并重新注册主系统。

执行离线转换

您可以执行 SAP HANA 系统复制的脱机转换 横向支持租户数据库。将 SAP HANA 系统转换为 租户数据库系统是永久性的,不能撤消。

先决条件

  • 统计服务器作为单独的服务器运行 进程 (StatisticsServer),而是改为 作为主索引服务器中的嵌入式服务。如果不是这种情况, 将 Statistics Server 迁移到嵌入式 Statistics Service,如 SAP 说明 1917938.
  • SAP HANA系统已将其服务器软件安装在共享文件上 系统(导出选项、 )。rwno_root_squash
  • SAP HANA 系统已随 SAP HANA 数据库生命周期管理器一起安装 (HDBLCM)。
  • 您将以系统管理员用户 <sid>adm.

程序

  1. 停止所有站点上的所有 SAP HANA 系统。
  2. 在主系统的主主机上运行以下命令:
    <sapmnt>/<SID>/hdblcm/hdblcm --action=convert_to_multidb

    默认情况下,为 /hana/shared。<sapmnt>

  3. 指定新的系统用户密码。
  4. 等到转换完成,系统再次处于活动状态。
  5. 创建系统数据库的数据备份。
  6. 复制后,在所有剩余的辅助系统上重复步骤 2 到 4 链。

执行接近零停机时间的转换

您可以对 SAP HANA 系统执行近乎零停机时间的转换 支持租户数据库的复制环境。将 SAP HANA 系统转换为租户数据库系统是永久性的,无法撤消。

先决条件

  • 统计服务器作为单独的服务器运行 进程 (StatisticsServer),而是改为 作为主索引服务器中的嵌入式服务。如果不是这种情况, 将 Statistics Server 迁移到嵌入式 Statistics Service,如 SAP 说明 1917938.
  • SAP HANA系统已将其服务器软件安装在共享文件上 系统(导出选项、 )。rwno_root_squash
  • SAP HANA 系统已随 SAP HANA 数据库生命周期管理器一起安装 (HDBLCM)。
  • 您将以系统管理员用户 <sid>adm.

程序

  1. 在辅助系统的主主机上运行以下命令:
    <sapmnt>/<SID>/hdblcm/hdblcm --action=convert_to_multidb

    默认情况下,为 /hana/shared。<sapmnt>

  2. 指定新的系统用户密码。
  3. 等到转换完成,所有系统再次同步。
  4. 停止除刚刚转换的系统之外的所有系统。
  5. 由转换后的系统执行接管。
  6. 在主系统的主主机上运行以下命令:
    <sapmnt>/<SID>/hdblcm/hdblcm --action=convert_to_multidb --nostart
  7. 将原始主系统重新注册为新的辅助系统。

租户数据库中的默认黑名单系统属性

在支持租户数据库的系统中,存在配置更改黑名单multidb.ini,该黑名单以默认值提供 配置。

下表列出了默认情况下包含在 multidb.ini 文件中的系统属性。因此,租户数据库 管理员无法更改这些属性。系统管理员仍然可以更改 这些属性在所有层的系统数据库中。

您可以通过更改 multidb.ini文件并添加新文件。更多信息 有关如何防止对租户数据库中的特定系统属性进行更改的信息,请参阅《SAP HANA 管理指南》中的防止更改租户数据库中的系统属性。

文件/部分性能描述
审核配置
  • default_audit_trail_type
  • emergency_audit_trail_type
  • alert_audit_trail_type
  • critical_audit_trail_type
  • audit_statement_length
阻止配置审计跟踪目标和最大审计语句 长度
auditing_csvtextfile
  • max_file_size
  • max_files
阻止配置 CSV 文本文件审核跟踪 文件
通信*阻止配置默认密钥和信任存储以及其他关键 通信设置
global.ini/customizable_functionalities*防止禁用受限功能
global.ini/extended_storage*阻止配置扩展存储 (SAP HANA 动态分层)
global.ini/持久性
  • basepath_datavolumes_es
  • basepath_logvolumes_es
  • basepath_databackup_es
  • basepath_logbackup_es
global.ini/system_replication
  • keep_old_style_alert
  • enable_full_sync
  • operation_mode
阻止配置某些系统复制设置
global.ini/system_replication_communication* 
global.ini/system_replication_hostname_resolution* 
global.ini/xb_messaging*阻止配置消息传递
multidb.ini/readonly_parameters*阻止multidb.ini文件本身的配置
indexserver.ini/身份验证SapLogonTicketTrustStore阻止配置信任存储以进行用户身份验证 使用登录/断言票证
内存管理器
  • 分配限制
  • minallocationlimit
  • global_allocation_limit
  • async_free_threshold
  • async_free_target
阻止配置内存分配参数
执行max_concurrency阻止配置线程和 并行化参数
会期
  • maximum_connections
  • maximum_external_connections
sqlsql_executors

通过 SAP HANA XS Classic 配置对租户数据库的 HTTP(S) 访问

要使基于 Web 的应用程序能够通过 SAP HANA XS 经典服务器,必须配置内部 SAP Web Dispatcher,以便它知道 根据 DNS 别名主机名请求调度到哪个数据库。是吗 这是通过在xsengine.ini配置文件中指定每个租户数据库的公共 URL 来实现的。

先决条件

  • 您已登录到系统数据库。
  • 您具有系统权限 INIFILE ADMIN。
  • 网络管理员已在组织的域名中定义了别名主机名 SAP HANA 系统中每个租户数据库的系统 (DNS)。别名 hostname 必须引用用于 HTTP(S) 的计算机的主机名 访问租户数据库。
  • 您有一个基于角色模板 sap.hana.xs.wdisp.admin::WebDispatcherAdmin 的角色。 这是访问 SAP HANA Web Dispatcher 管理工具所必需的 配置 HTTPS。

上下文

XS 经典服务器允许基于 Web 的应用程序访问 SAP 通过 HTTP(S) 的 HANA。SAP HANA 系统的内部 Web 调度程序管理这些内容 传入的 HTTP(S) 请求。允许应用程序向特定 数据库,每个租户数据库都需要一个别名主机名。对别名的请求 然后,可以将主机名转发到相应租户的 XS 服务器 数据库。转发 HTTP 主机头中具有物理主机名的请求 到系统数据库上运行的 XS 服务器。

默认 HTTP 端口在所有情况下都使用,即 80 (HTTP) 和 43 (HTTPS)。 别名主机名映射到内部 HTTP(S) 端口,以便传入请求可以 路由到正确的数据库。<instance><instance>

可以通过在 xsengine.ini文件,每个租户数据库所在的 URL 可公开访问。然后,系统通过以下方式自动配置 Web Dispatcher 在webdispatcher.ini配置文件中生成所需的配置文件条目。没有必要 要指定系统数据库的 URL,则会自动完成此操作。

注意

Web Dispatcher 的此自动配置是 由参数 [profile] 控制 wdisp/system_auto_configuration 在 webdispatcher.ini 配置文件中。如果此参数是 设置为 ,您需要手动配置 webdispatcher.ini 文件。false

对于 HTTPS 访问,随后必须配置所需的客户端证书和信任 使用 SAP Web Dispatcher 管理工具的存储。以下方法 支持:

  • 在单个信任存储中使用单个“通配符”服务器证书,该证书覆盖 系统中的所有数据库

    通配符证书在以下情况下更加灵活 租户数据库经常被添加和删除。但是,如果您使用 通配符证书,要么服务器需要自己的子域,要么需要你 必须确保证书不会被其他证书滥用 服务器。

    谨慎

    如果出现以下情况,请勿使用通配符服务器证书 租户数据库之间需要严格隔离。如果身份验证依赖于 通配符证书和共享信任存储,一个租户数据库的用户将 能够登录到系统中的其他数据库。

  • 在每个数据库的各个信任存储中使用单个证书

    个人 每个数据库的证书更适合于扁平域结构 对于单个服务器。它们还确保租户之间的严格隔离 数据库。但是,它们需要更多的管理工作来 保持。

程序

  1. 将 xsengine.ini 文件中所有租户数据库的公用 URL 指定为一个 以下方式:
    选择描述
    SAP HANA 工作室
    1. 打开“管理”编辑器,然后选择“配置”选项卡。
    2. 导航到 xsengine.ini 文件,然后 展开“public_urls”部分。
    3. 对于系统中的每个租户数据库,在数据库中添加新属性 http_url 和 https_url 图层,并输入其公共 URL 作为值:
      • http://<virtual_hostname>:80<instance>
      • https://<virtual_hostname>:43<instance>
      注意

      方案 (/) 必须是 包含在 URL 中。httphttps

    SQL的对于每个租户数据库,执行以下语句:
    • ALTER SYSTEM ALTER CONFIGURATION ('xsengine.ini', 'DATABASE', '') SET ('public_urls', 'http_url') = “http://:80” 使用 RECONFIGURE;<tenant_DB_name><virtual_hostname><instance>
    • ALTER SYSTEM ALTER CONFIGURATION ('xsengine.ini', 'DATABASE', ') SET ('public_urls', 'https_url') = “https://:43” 使用 RECONFIGURE;<tenant_DB_name><virtual_hostname><instance>
    注意

    默认层设置以下值,表示系统数据库的 URL:

    • http://$(SAPLOCALHOST):80$(SAPSYSTEM)
    • https://$(SAPLOCALHOST):43$(SAPSYSTEM)

    默认情况下,系统数据库最初检索任何请求时都使用 端口 80。但是,只要您配置 租户数据库的 URL,可在 仅限 http://:80,而不是完全限定的域名 (FQDN)。本地主机是 没有 FQDN 的 SAP HANA 已知。<instance_no><localhost><instance>

    如果要更改此默认行为并配置其他 URL 对于系统数据库,可以通过执行以下命令来执行此操作 陈述:

    ALTER SYSTEM ALTER CONFIGURATION ('nameserver.ini', 'system') SET('public_urls', 'http_url') = 'http://<virtual_hostname>:80<instance>' WITH RECONFIGURE;

    现在,在主机层的 webdispatcher.ini 文件中为每个数据库创建新条目。您可以通过执行以下命令来验证这一点 以下语句(来自系统数据库):

    SELECT KEY, VALUE, LAYER_NAME FROM SYS.M_INIFILE_CONTENTS WHERE FILE_NAME = 'webdispatcher.ini' AND SECTION = 'profile' AND KEY LIKE 'wdisp/system%'

    这将返回以下结果,例如:

    
    <span style="color:#333333"><span style="background-color:#eeeeee"><span style="color:#000000">KEY 		</span><span style="color:#666600">|</span><span style="color:#000000"> VALUE											</span><span style="color:#666600">|</span><span style="color:#000000"> LAYER_NAME
    wdisp</span><span style="color:#666600">/</span><span style="color:#000000">system_0 	</span><span style="color:#666600">|</span><span style="color:#000000"> GENERATED</span><span style="color:#666600">,</span><span style="color:#000000"> SID</span><span style="color:#666600">=</span><span style="color:#000000">SYS</span><span style="color:#666600">,</span><span style="color:#000000"> EXTSRV</span><span style="color:#666600">=</span><span style="color:#000000">http</span><span style="color:#666600">:</span><span style="color:#555555">//localhost:30014, SRCVHOST='myhost' 			| DEFAULT</span><span style="color:#000000">
    wdisp</span><span style="color:#666600">/</span><span style="color:#000000">system_1 	</span><span style="color:#666600">|</span><span style="color:#000000"> GENERATED</span><span style="color:#666600">,</span><span style="color:#000000"> SID</span><span style="color:#666600">=</span><span style="color:#000000">MYD</span><span style="color:#666600">,</span><span style="color:#000000"> EXTSRV</span><span style="color:#666600">=</span><span style="color:#000000">http</span><span style="color:#666600">:</span><span style="color:#555555">//localhost:30042, SRCVHOST='mydatabase.example.com'	| HOST</span></span></span>
  2. 可选:通过配置 HTTPS 来保护传入通信。
    OptionDescription
    所有数据库的单个证书
    1. Start the SAP HANA Web Dispatcher Administration tool at http://:80/sap/hana/xs/wdisp/admin/.<localhost><instance>
    2. For the default SAPSSLS.pse trust store, create a new SSL key pair and certificate request:
      1. From the main menu, choose SSL and Trust Configuration  PSE Management.

      2. From the Manage PSE menu, choose SAPSSLS.pse.
      3. Choose Recreate PSE.
      4. Enter a distinguished name that matches the host name of all tenant databases.
        Example
        • Physical host name: myhost.example.com
        • Tenant host name 1: mydatabase1.example.com
        • Tenant host name 2: mydatabase2.example.com

        In this case, you specify as the DN, thus creating a server certificate that matches all tenant databases and the system database.CN=*.example.com

      5. 选择 Create (创建)。
      6. 创建证书请求并提交给您的 用于签名的证书颁发机构 (CA) (创建 CA 响应)。
    3. 导入签名证书

    有关详细信息,请参阅为客户端配置 HTTPS (SSL) 应用程序访问。

    每个数据库的单独证书
    1. 启动 SAP HANA Web Dispatcher 管理工具,网址为 http://:80/sap/hana/xs/wdisp/admin/。<localhost><instance>
    2. 对于每个租户数据库和系统数据库,创建一个具有唯一 证书:
      1. 从主菜单中,选择 SSL 和信任配置 PSE 管理

      2. 在 PSE 管理屏幕上,选择创建 新 PSE
      3. 输入新文件的文件名 PSE。

        例子.pse

      4. 输入可分辨名称:

        CN=<host name used for the tenant database in the public_urls section of the xsengine.ini file>

      5. 选择 Create (创建)。
      6. 对于新的 PSE,请创建证书请求并提交给 CA 进行签名 (创建 CA 响应)。
      7. 将签名证书导入到新的 PSE 中 (导入 CA 响应)。
    3. 将 Web Dispatcher 配置为使用多个证书:
      1. 在 webdispatcher.ini 文件中, 创建或更改参数[配置文件] icm/ssl_config_0,指定为 价值:

        ID=ssl_config_main, CRED=SAPSSLS.pse, SNI_CREDS=<semicolon (';') separated list of database PSE files>

      2. 搭 HTTPS 端口的 icm/server_port 参数值(默认为 icm/server_port_1)。,SSLCONFIG=ssl_config_main

        icm/server_port_1 = PROT=HTTPS,PORT=4443$(SAPSYSTEM),PROCTIMEOUT=600, SSLCONFIG=ssl_config_main

结果

您可以通过配置的 URL 访问租户数据库的 XS 服务器。

提示

如果在访问租户数据库的 XS 服务器时遇到响应时间较慢(对于 例如,在租户数据库上运行的基于 Web 的应用程序),这表明 服务器无法使用 DNS 正确解析主机名,并且 重复重试。如果是这种情况,请与网络管理员联系 详细的问题分析。

解决方法是,您可以手动覆盖计算机上的虚拟主机名解析,其中 通过修改 /etc/hosts 文件来运行浏览器 本地计算机。在此文件中,追加一个新行,从静态 IP 开始 服务器的地址,后跟租户的虚拟主机名 数据库,例如“10.20.30.40 mydatabase.example.com”。编辑此文件 您需要管理员或 root 权限。

后续步骤

可选:允许从 SAP HANA Studio 访问基于 Web 的应用程序。

一些 基于 Web 的工具可从 SAP HANA 工作室访问,例如 SAP HANA 驾驶舱和 SAP HANA 生命周期管理工具。如果您希望能够访问 这些工具来自在工作室中注册的租户数据库,您必须指定 别名。您可以按如下方式执行此操作:

  1. “系统”视图中,右键单击租户数据库,然后 选择 Properties(属性)。
  2. 打开“XS 属性”页,然后输入别名主机名 在 XS Host 字段中。

配置独立于主机的租户地址

可以将对租户数据库的访问配置为独立于 SAP HANA 通过将其他端口映射到租户数据库来获取系统 ID 号。

上下文

客户端与租户数据库的连接是通过端口建立的 系统数据库的313。如果租户数据库 移动到另一个系统,系统的实例号,因此 连接端口将更改。建立独立于其电流的连接 host,您可以指定其他端口号并将其映射到租户。<instance_no>

通过映射 IP 来配置独立于实际主机 IP 地址的连接 操作系统级别的每个租户数据库的地址。添加一个额外的端口 系统数据库侦听传入连接。客户端连接是 然后通过调用租户的 IP 地址、租户的名称来建立 数据库和额外的侦听端口。

A tenant is moved from the source system to the target system without changing the client connection string

示例代码
ALTER SYSTEM ALTER CONFIGURATION ('nameserver.ini' , 'system') SET ('multidb' , 'listenports' ) = '<port1>[,<port2>...]' WITH RECONFIGURE;

将租户移动到目标系统后,额外的侦听端口必须是 在源系统上删除,在目标系统上添加。特定于租户的 IP 必须在操作系统级别为目标主机添加地址。客户 仍然可以使用相同的信息建立与租户数据库的连接 和搬家之前一样。

After moving the tenant, the additional listen port must be set on the target system

程序

配置系统数据库侦听的其他端口,以及 端口 3<instance_no>13。除 0 外的任何可用端口号都是 允许。

为此,您可以执行以下 SQL 语句:


<span style="color:#333333"><span style="background-color:#eeeeee"><span style="color:#000000">ALTER SYSTEM ALTER CONFIGURATION </span><span style="color:#666600">(</span><span style="color:#008800">'nameserver.ini'</span> <span style="color:#666600">,</span> <span style="color:#008800">'system'</span><span style="color:#666600">)</span><span style="color:#000000"> SET </span><span style="color:#666600">(</span><span style="color:#008800">'multidb'</span> <span style="color:#666600">,</span> <span style="color:#008800">'listenports'</span> <span style="color:#666600">)</span> <span style="color:#666600">=</span> <span style="color:#008800">'</span><span style="color:#008800"><port1></span><span style="color:#008800">[,</span><span style="color:#008800"><port2></span><span style="color:#008800">...]'</span><span style="color:#000000"> WITH RECONFIGURE</span><span style="color:#666600">;</span></span></span>

后续步骤

若要删除租户数据库的所有其他端口,请执行以下 SQL 语句:

ALTER SYSTEM ALTER CONFIGURATION ('nameserver.ini' , 'system') UNSET ('multidb' , 'listenports' ) WITH RECONFIGURE;

使用主控室重置租户的 SYSTEM 密码

如果租户数据库中 SYSTEM 用户的密码未知,可以重置 从系统数据库。

先决条件

  • 您已导航到要管理的数据库的“数据库概述”页。请参阅进入数据库概述页

  • 没有具有系统权限 USER ADMIN 的用户可以重置 SYSTEM 用户密码。
    注意

    如果您可以以 SYSTEM 或其他用户身份登录系统 privilege USER ADMIN,请勿使用此处描述的过程更改 SYSTEM 用户的密码。相反,请使用 SAP HANA 主控室中的“用户”编辑器更改密码

  • 您已连接到系统数据库,并具有系统权限 DATABASE ADMIN。

程序

  1. “数据库概述”页面顶部,单击“数据库管理”
  2. 选择租户,然后单击“停止”

    停止后,其状态将更改为“未运行”。

  3. 单击“租户操作”,然后单击“重置系统” 密码
  4. 输入并确认 SYSTEM 用户的新临时密码。
  5. 选择重置密码并重新启动

结果

  • 重置 SYSTEM 用户的密码并重新启动租户数据库。
  • 下次使用 SYSTEM 用户登录时,系统将提示您更改密码 符合租户数据库的密码策略
  • 如果 SYSTEM 用户之前已停用、锁定或过期,则现在将再次激活该用户。 在这种情况下,我们建议您将其恢复到停用状态。
  • 如果启用了审核,则密码更改会自动记录在以下两个 系统和租户数据库审核跟踪。

监视和管理租户数据库

为了确保SAP HANA系统的整体性能和稳定性,您作为系统 管理员可以使用系统数据库监视系统中的所有租户数据库。你 还可以执行管理任务,例如停止和启动租户数据库,或者 添加和删除服务。

注意

可以使用 SAP HANA 管理租户数据库 驾驶舱。然而 某些任务需要命令行工具。

支持模型

以下是分析和解决租户问题的一般方法 数据库:

  1. 租户数据库管理员使用 可用的诊断和跟踪文件。
  2. 如果租户数据库管理员发现他们无法分析的问题 诊断和跟踪文件,他们联系系统管理员。
  3. 系统管理员可以首先检查租户数据库的运行状况 系统数据库通过分析 SYS_DATABASES架构。
  4. 如果系统管理员无法从系统中看到问题所在 数据库,租户数据库管理员需要为他提供 直接访问租户数据库所需的权限,以便系统 管理员可以在那里分析问题。

监视 SAP HANA Cockpit 中的租户数据库

作为租户数据库管理员,您可以监控可用性、资源使用情况、 以及 SAP HANA 中租户数据库的性能 来自系统的驾驶舱 数据库。

聚合数据库信息可在系统数据库的“数据库概述”页上找到。单击“数据库管理”链接将显示有关系统中所有数据库的信息,并允许您监视 并管理租户数据库。还可以在此基础上创建新的租户数据库 页。

您可以使用驾驶舱来监控和管理多个 数据库,每个运行版本 SAP HANA 1.0 SPS 12 或更高版本。任何正在运行的数据库 默认情况下,SAP HANA 2.0 SPS 01 或更高版本设置为多容器模式。 驾驶舱还可以监控运行早期版本的单容器系统 SAP HANA.当您访问“管理服务”应用程序时, 您可以选择执行的操作取决于您是否显示 租户或系统数据库。

注意

若要对租户数据库执行操作,需要具有系统权限 数据库管理员。

租户数据库中的默认黑名单系统属性

在支持租户数据库的系统中,存在配置更改黑名单multidb.ini,该黑名单以默认值提供 配置。

下表列出了默认情况下包含在 multidb.ini 文件中的系统属性。因此,租户数据库 管理员无法更改这些属性。系统管理员仍然可以更改 这些属性在所有层的系统数据库中。

您可以通过更改 multidb.ini文件并添加新文件。更多信息 有关如何防止对租户数据库中的特定系统属性进行更改的信息,请参阅《SAP HANA 管理指南》中的防止更改租户数据库中的系统属性。

文件/部分性能描述
审核配置
  • default_audit_trail_type
  • emergency_audit_trail_type
  • alert_audit_trail_type
  • critical_audit_trail_type
  • audit_statement_length
阻止配置审计跟踪目标和最大审计语句 长度
auditing_csvtextfile
  • max_file_size
  • max_files
阻止配置 CSV 文本文件审核跟踪 文件
通信*阻止配置默认密钥和信任存储以及其他关键 通信设置
global.ini/customizable_functionalities*防止禁用受限功能
global.ini/extended_storage*阻止配置扩展存储 (SAP HANA 动态分层)
global.ini/持久性
  • basepath_datavolumes_es
  • basepath_logvolumes_es
  • basepath_databackup_es
  • basepath_logbackup_es
global.ini/system_replication
  • keep_old_style_alert
  • enable_full_sync
  • operation_mode
阻止配置某些系统复制设置
global.ini/system_replication_communication* 
global.ini/system_replication_hostname_resolution* 
global.ini/xb_messaging*阻止配置消息传递
multidb.ini/readonly_parameters*阻止multidb.ini文件本身的配置
indexserver.ini/身份验证SapLogonTicketTrustStore阻止配置信任存储以进行用户身份验证 使用登录/断言票证
内存管理器
  • 分配限制
  • minallocationlimit
  • global_allocation_limit
  • async_free_threshold
  • async_free_target
阻止配置内存分配参数
执行max_concurrency阻止配置线程和 并行化参数
会期
  • maximum_connections
  • maximum_external_connections
sqlsql_executors

解锁列入黑名单的参数

从租户数据库的阻止列表中删除参数,以便该参数可以 编辑。

先决条件

  • 您已导航到要管理的数据库的“数据库概述”页。请参阅进入数据库概述页

  • 您具有系统权限 INIFILE ADMIN。
  • 您已连接到系统数据库。

上下文

通过从阻止列表中删除参数,您可以对其进行编辑。但是,您可以 仅删除您或其他用户已添加到黑名单的参数,您不能 默认情况下,删除阻止列表中的参数。默认参数为 显示时不对“列入黑名单的参数”进行删除或编辑控件 对于“租户”页面。

程序

  1. 在“数据库概述”页面顶部,单击“数据库管理”。
  2. 在“数据库管理”屏幕上,单击“已列入黑名单” 参数(右上角)。
  3. 在“租户的黑名单参数”页上,活动租户为 在左窗格中突出显示。单击另一个租户的名称以管理其 参数。
  4. 要删除阻止列表中的参数,请单击红色 X 到要删除的参数右侧并确认删除。

    驾驶舱显示的阻止列表不显示您删除的参数。

查看不可用的租户数据库的诊断文件

如果租户数据库不可用,例如,因为它已停止或遇到 主要性能问题,租户数据库管理员无法访问诊断文件。 在这种情况下,您作为系统管理员可以访问租户的诊断文件 使用 SAP HANA 数据库资源管理器从系统数据库中的数据库。

程序

打开驾驶舱数据库的“主机诊断文件”文件夹,然后打开 单击要检查的诊断文件以在编辑器中将其打开。“主机诊断文件”文件夹包含所有诊断信息 已为 SAP Host Agent 配置的文件。

注意

您不能在 数据库资源管理器。您只能下载二进制跟踪文件。

有关配置 SAP Host Agent 的详细信息,请参阅 SAP Host Agent 文档。

驾驶舱数据库必须在驾驶舱中设置有效的 SAP 控制凭据。如果用户 未设置有效的 SAP 控制凭据,则返回错误。

将显示系统数据库的诊断文件。

租户数据库系统中的系统和统计信息视图

每个数据库都有自己的 SYS 和 _SYS_STATISTICS 架构 仅包含有关该数据库的信息。对于系统级监控, 在系统数据库中可以访问其他视图:M_DATABASES (SYS) 视图和 SYS_DATABASES 架构中的视图。

  • M_DATABASES

    此视图在系统数据库的 SYS 模式中可用 多容器系统。它提供了所有租户数据库的概述 在系统中。只有具有系统权限 DATABASE ADMIN 的用户才能查看 此视图的内容。

  • SYS_DATABASES架构

    SYS_DATABASES架构中的视图提供聚合 来自 系统中所有租户数据库的 SYS 和 _SYS_STATISTICS 架构。这些 联合视图具有附加的列DATABASE_NAME,以便能够 确定信息来自哪个数据库。系统 SYS_DATABASES架构中的视图只能从系统访问 数据库。为了能够查看这些视图中的信息,您需要系统 权限 DATABASE ADMIN 或 CATALOG READ。

SAP HANA 等工具 驾驶舱使用这些视图 支持系统级监控。

系统和统计信息视图

租户数据库的内存和 CPU 使用率

通过配置限制来管理和控制系统的内存和 CPU 使用率 单个租户数据库。如有必要,您还可以为系统保留内存 数据库。

管理租户数据库的资源使用情况

多个系统属性允许您影响内存和 CPU 的分配 SAP HANA 系统中的资源。系统属性 (INI) 文件具有数据库层 以便于为各个租户数据库配置属性。

以下属性可用于影响租户的资源消耗 数据库。

  • [memorymanager] global.ini文件中的 allocationlimit

    使用此属性可限制最大内存量(以 MB 为单位) 可以单独分配给租户数据库的进程。每 租户数据库的进程可以分配指定的值。将 分配限制过低可能会导致租户数据库变为 在可以分配更多内存之前无法访问。

    从系统数据库执行:

    ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'DATABASE', 'MYDB') 
    SET ('memorymanager','allocationlimit') = '8192' WITH RECONFIGURE;
    注意

    内存对齐是动态进行的 因此可能需要一些时间。要立即实现它,您可以 重新启动数据库。

  • [执行] max_concurrency global.ini文件中

    使用此属性可影响 CPU 内核的最大数目 可以通过限制并发数量来用于每个租户数据库 运行 JobExecutor 子系统使用的线程。合理的违约 value 是核心数除以租户数据库数。 不要指定值 。此值的更改 立即生效。0

    从系统执行 数据库:

    ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'DATABASE', 'MYDB') 
    SET ('execution', 'max_concurrency') = '4' WITH RECONFIGURE;
    注意

    在 NUMA 体系结构中,设置 max_concurrency参数不足以实现 所需的性能提升,因此还要绑定共享内存的套接字 关联设置。有关详细信息,请参阅控制 CPU 消费。

管理系统数据库的内存使用情况

安装后,系统数据库仅包含监视和管理 系统,以及与自身相关的统计数据。该系统的平均值 内存消耗为 15 GB。

如果系统数据库遇到性能问题,例如内存不足 情况下,您可以为系统数据库保留最小内存量 (MB) 通过在global.ini文件中配置参数 [multidb] systemdb_reserved_memory。

使用 SAP Web Dispatcher 对租户数据库进行负载平衡

如果 SAP HANA 系统具有多个 SAP HANA 扩展服务实例,则经典 模型 (SAP HANA XS classic) 并分布在多个主机上,您可以实现 外部 SAP Web Dispatcher,用于分配入站 HTTP 请求的负载并保护 高可用性。

以下部分介绍如何配置用于 SAP HANA 的外部 SAP Web Dispatcher 具有租户数据库的系统。

准备工作

请注意以下几点:

  • 外部 SAP Web Dispatcher 是单独的安装,不构成 SAP 的一部分 HANA系统。它的最低版本必须为 745 补丁级别 21.
  • SAP Web Dispatcher 进程还运行在 SAP 实例所在的所有 SAP HANA 主机上 HANA XS 处于活动状态。此内部 SAP Web 调度程序是 SAP 的固定部分 HANA系统。在具有租户数据库的系统中,此内部 SAP Web 调度程序 还必须配置为启用对单个数据库的 HTTP 访问。查看更多 信息,请参阅配置对租户数据库的 HTTP(S) 访问。
  • SAP 注释1855097​编辑中描述的所有信息和配置步骤仍然有效。具体而言,必须在 SAP HANA 系统的webdispatcher.ini配置文件中将参数 wdisp/filter_xs_internal_uri 设置为。false
  • 以下各节中描述的配置描述了对租户数据库的访问。 但是,它对系统数据库也有效。对于 Web Dispatcher,有 租户数据库和系统数据库之间没有区别。
  • SAP Web Dispatcher 仅处理对 SAP HANA 的 HTTP(S) 访问。
  • 有关配置安全 HTTPS 访问的详细信息,请参阅配置 HTTP(S) 访问租户数据库(内部 Web 调度程序配置) 以及将 SAP Web Dispatcher 配置为在 SAP HANA 中支持 SSL Web Dispatcher 文档。

基于虚拟主机的路由

示例介绍了基于虚拟主机的路由的基础知识。

本网站 travelapp.com 提供基于网络的信息服务 关于热门旅游目的地。服务作为单独的应用程序实现, 它们在一台主机 (travelapp.com) 上的单独 Web 服务器上运行。 虚拟主机名用于区分可用服务:london.travelapp.com 和 paris.travelapp.com。这两个虚拟主机名都是 travelapp.com 的别名。这可以说明如下:

Virtual-host-based routing

基于虚拟主机的路由

约翰想阅读有关伦敦的信息。因此,他在浏览器中输入 london.travelapp.com。由于 london.travelapp.com 是 travelapp.com 的别名,因此浏览器将 HTTP 请求发送给 travelapp.com,但它使用 london.travelapp.com 作为此请求的主机标头。这 请求到达 travelapp.com 上的控制器或调度程序进程。此调度程序进程决定是否 将请求转发到负责显示以下信息的 Web 服务器 伦敦或负责显示有关巴黎信息的 Web 服务器。这 决策基于主机标头,即用户的主机名 最初输入到浏览器中。london.travelapp.com 是 分配给伦敦和 paris.travelapp.com 的应用程序是 分配给巴黎的申请。

简需要有关巴黎的信息,并 paris.travelapp.com 进入 她的浏览器。此请求也会到达调度程序进程,并被分派给 基于请求的主机标头的 Paris 应用程序。

负载均衡

travelapp.com 已被证明是一项成功的服务,拥有许多用户。作为 结果,一台主机不再足够,应用程序已安装在 第二个主机。此外,还需要负载均衡器来在 两位主持人。必须更改别名 london.travelapp.com 和 paris.travelapp.com 以指向主机 ,以保证所有请求都由负载均衡器处理 (dmz.travelapp.com)。这可以说明为 遵循:

Virtual-Host-Based Routing with Load Balancing

具有负载平衡功能的基于虚拟主机的路由

约翰再次想阅读有关伦敦的信息。因此,他在浏览器中输入 london.travelapp.com。由于 london.travelapp.com 是 dmz.travelapp.com 的别名,因此浏览器将 HTTP 请求发送给 dmz.travelapp.com,但它使用 london.travelapp.com 作为此请求的主机标头。 此请求到达负载均衡器,负载均衡器只是根据当前负载将请求转发给 hosta.travelapp.com 或 hostb.travelapp.com。它一定不能 更改请求的主机标头,因为稍后需要此请求 调度。之后,调度程序处理请求,就好像没有负载均衡器一样 涉及,而不管主机标头中的主机名实际上 指向另一台主机。

SAP HANA 租户数据库

转换为 SAP HANA 租户数据库的上下文,负载均衡器是外部 SAP Web Dispatcher,并且调度程序是系统内部的 SAP Web Dispatcher,因为 如下图所示:

Virtual-host-based routing for SAP HANA Tenant Databases

SAP HANA 租户数据库的基于虚拟主机的路由

为租户数据库配置外部 SAP Web 调度程序

用于对租户数据库进行差异化 HTTP 访问的虚拟主机名在 系统内部 SAP Web 调度程序。如果使用外部 SAP Web Dispatcher 负载平衡时,您还必须配置外部 Web Dispatcher。否则,信息 关于所选虚拟主机无法传输到 SAP HANA 系统。

记得

此处提到的所有配置设置都是在外部 Web Dispatcher 中完成的,而不是在内部 Web Dispatcher 中完成的 这是SAP HANA系统的一部分。外部 Web 调度程序是单独的 安装,但不构成 SAP HANA 系统的一部分。在你之前 配置外部 Web Dispatcher,内部 Web Dispatcher 必须已经 已配置为启用对单个数据库的 HTTP 访问。查看更多 信息,请参阅配置对租户的 HTTP(S) 访问 数据库。

通过外部 Web 调度程序进行单租户访问与多租户访问

需要通过外部 Web 调度程序访问的每个租户数据库都需要在外部 Web 中输入 wdisp/system_<XX> 参数 调度程序配置文件 (sapwebdisp.pfl)。XSSRV 子参数指定要连接到的 XS 服务器, XSVHOST 子参数指定 租户数据库。

wdisp/system_<xx> = SID=<3-digit ID>, XSSRV=http://<physical host name of SAP HANA server>:<port>, XSVHOST=<virtual host name of the tenant>

注意

虚拟主机名在xsengine.ini配置文件的 public_urls 部分(或webdispatcher.ini)中配置。是内部 Web Dispatcher 配置的一部分。查看更多 信息,请参阅配置对租户数据库的 HTTP(S) 访问。

如果只需要通过外部 Web 访问一个租户数据库 Dispatcher,单个 wdisp/system_<XX> 条目 具有上述配置的租户数据库就足够了,如 下图:

Access to a Single Tenant Database

注意

该图显示了简化的 Web Dispatcher 配置文件 (sapwebdisp.pfl) 的描述。 在实际配置中,XSSRV 子参数需要 不允许使用端口号和换行符。

访问单个租户数据库
注意

外部 Web 调度程序不是访问单个租户的必要条件。但也有场景 其中需要外部 Web 调度程序,例如复杂的 应用程序(例如,某些 SAP Fiori 方案)或出于安全目的。为 有关详细信息,请参阅相关应用程序文档和 SAP Web 调度程序文档。

虚拟主机名用于配置租户差异化。有两种可能的情况:

  • 选项 1:通过外部的 HTTP 访问租户数据库 仅限 Web 调度程序;没有对租户数据库的直接 HTTP 访问 (推荐)
  • 选项 2:租户数据库通过 HTTP 访问 外部 Web 调度程序,并直接绕过外部 Web 调度

    此配置需要其他虚拟主机名和 比选项 1 更复杂。但是,如果 外部 Web 调度程序正在添加到现有环境中。

选项 1:仅通过外部 Web 调度程序配置对多个(或所有)租户数据库的访问

如果希望通过外部访问租户数据库,请使用此配置 仅限 Web 调度程序。使用此配置时,无法直接对租户进行 HTTP 访问 数据库。

此配置的主要部分涉及设置租户数据库的虚拟主机名 在外部 Web 调度程序配置文件中配置为指向外部的主机 Web Dispatcher,而不是 SAP HANA 系统的主机。因此,所有请求 租户数据库的虚拟主机名首先转到外部 Web Dispatcher,然后 然后转发到 SAP HANA 系统中的内部 Web 调度程序。

记得

在你之前 配置外部 Web Dispatcher,内部 Web Dispatcher 必须已经 已配置为启用对单个数据库的 HTTP 访问。查看更多 信息,请参阅配置对租户的 HTTP(S) 访问 数据库。

单主机系统

每个租户数据库的 wdisp/system_<xx> 条目为 在外部 Web 调度程序配置文件中配置如下:

  • XSSRV 指定实际的物理 SAP HANA 主机名和 向其发送请求的端口。
  • XSVHOST 指定租户的虚拟主机名 将请求发送到的数据库。
    注意

    如果租户数据库有多个 分配的虚拟主机名,只需在 XSVHOST 中输入一个。

  • SRCVHOST 指定用于 将传入的 HTTP 请求映射到 wdisp/system 条目 表示特定租户。
注意

使用此配置选项时,XSVHOST 和 SRCVHOST 始终相同。

下图描述了单主机系统中的此配置:

Access to Multiple Tenant Databases (Single Host)

访问多个租户数据库(单主机)
注意

该图显示了简化的 Web Dispatcher 配置文件 (sapwebdisp.pfl) 的描述。 在实际配置中,XSSRV 子参数需要 不允许使用端口号和换行符。

在上面描述的示例中,当用户进入她的浏览器时会发生什么?london.example.com

  1. 浏览器打开与 webdispatcher.example.com 的 TCP/IP 连接 london.example.com 因为它只是 webdispatcher.example.com 的别名。
  2. 浏览器通过此连接发送 HTTP 请求。此的主机标头 HTTP 请求是 london.example.com,这是 用户输入。
  3. 外部 Web 调度程序接收 HTTP 请求,检查主机标头 并使用它来将请求映射到 WDISP/System 条目。 由于 london.example.com 是 wdisp/system_0 的 SRCVHOST 值,因此请求与 wdisp/system_0 相关联。
  4. 外部 Web 调度程序打开与 XSSRV 值 wdisp/system_0 () 的 TCP/IP 连接。hdb.example.com
  5. 外部 Web Dispatcher 将请求的目标设置为租户 在 wdisp/system_0 () 的 XSVHOST 子参数中指定的数据库,通过注入专有 HTTP 标头添加到请求中。london.example.com
  6. 内部 SAP HANA Web Dispatcher 接收请求。由于注入的 HTTP header 字段,它标识请求是发往租户数据库 1 并将其转发到租户数据库 1 的 XS 服务器。

多主机系统

在多主机系统中,必须将外部 Web 调度程序配置为连接到所有 主机。这意味着所有具有正在运行的 XS 服务器(或可能具有 XS 的主机) server)必须作为XSSRV的值输入为分号(分隔列表;)。即使租户数据库未在 host,无论如何您都应该将主机添加到列表中。这将使移动平稳 租户数据库,而无需更改外部 Web Dispatcher 配置。

记得

在内部 Web Dispatcher 配置中,XSVHOST 子参数中的虚拟主机名必须分配给租户 所有主机上的数据库。

下图描述了多主机系统中的配置:

访问多个租户数据库(多个主机)

注意

该图显示了简化的 Web Dispatcher 配置文件 (sapwebdisp.pfl) 的描述。 在实际配置中,XSSRV 子参数需要 不允许使用端口号和换行符。

访问多个租户数据库(多个主机)

现在,当用户进入 她的浏览器?london.example.com

该过程与单主机方案相同,但有一个例外:外部 Web Dispatcher 会定期检查租户数据库实际所在的主机 继续运行。如果租户数据库在多个主机上运行,则外部 Web Dispatcher 在这些主机之间执行负载平衡。

选项 2:通过外部 Web 调度程序配置对多个(或所有)租户数据库的访问,并直接配置对多个(或所有)租户数据库的访问

如果希望通过 外部 Web Dispatcher,并直接绕过外部 Web Dispatcher。

使用此配置时,每个租户数据库都需要其他虚拟主机名。 这些虚拟主机名指向外部 Web 调度程序的物理主机名。 分配给租户数据库的虚拟主机名仍指向主机 SAP HANA系统。

记得

在你之前 配置外部 Web Dispatcher,内部 Web Dispatcher 必须已经 已配置为启用对单个数据库的 HTTP 访问。查看更多 信息,请参阅配置对租户的 HTTP(S) 访问 数据库。

单主机系统

每个租户数据库的 wdisp/system_<xx> 条目为 然后在外部 Web Dispatcher 配置文件中配置,如下所示:

  • XSSRV 指定实际的物理主机名和端口 发送请求。
  • XSVHOST 指定租户的虚拟主机名 将请求发送到的数据库。
    注意

    如果租户数据库有多个 分配的虚拟主机名,只需在 XSVHOST 中输入一个。

  • SRCVHOST 指定用于 将传入的 HTTP 请求映射到表示特定租户的 wdisp/system_<xx>。

下图描述了单主机系统中的此配置:

Access to Multiple Tenant Databases (Single Host)

访问单主机系统中的多个租户数据库
注意

该图显示了简化的 Web Dispatcher 配置文件 (sapwebdisp.pfl) 的描述。 在实际配置中,XSSRV 子参数需要 不允许使用端口号和换行符。

在上面描述的示例中,当用户进入他的浏览器时会发生什么?uk.example.com

  1. 浏览器打开与 webdispatcher.example.com 的 TCP/IP 连接 uk.example.com 因为它只是 webdispatcher.example.com 的别名。
  2. 浏览器通过此连接发送 HTTP 请求。此的主机标头 HTTP 请求是 uk.example.com 的,这是 用户输入。
  3. 外部 Web 调度程序接收 HTTP 请求,检查主机标头 并使用它来将请求映射到 WDISP/System 条目。由于 uk.example.com 是 wdisp/system_0 的 SRCVHOST 值,因此请求与 wdisp/system_0 相关联。
  4. 外部 Web 调度程序打开与 XSSRV 值 wdisp/system_0 (hdb.example.com) 的 TCP/IP 连接。
  5. 外部 Web Dispatcher 将请求的目标设置为租户 在 wdisp/system_0 (london.example.com) 的 XSVHOST 参数中指定的数据库,通过注入专有 HTTP 标头 添加到请求中。
  6. 内部 SAP HANA Web Dispatcher 接收请求。由于注入的 HTTP header 字段,它标识请求是发往租户数据库 1 并将其转发到租户数据库 1 的 XS 服务器。

多主机系统

在多主机系统中,必须将外部 Web 调度程序配置为连接到所有 主机。这意味着所有具有正在运行的 XS 服务器(或可能具有 XS 的主机) server)必须作为XSSRV的值输入为分号(分隔列表;)。即使租户数据库未在 host,无论如何您都应该将主机添加到列表中。这将使移动平稳 租户数据库,而无需更改外部 Web Dispatcher 配置。

记得

在内部 Web Dispatcher 配置中,虚拟主机 XSVHOST 子参数中的名称必须分配给 所有主机上的租户。

下图描述了多主机系统中的配置:

Access to Multiple Tenant Databases (Multiple Hosts)

注意

该图显示了简化的 Web Dispatcher 配置文件 (sapwebdisp.pfl) 的描述。 在实际配置中,XSSRV 子参数需要 不允许使用端口号和换行符。

访问多主机系统中的多个租户数据库

用户进入他的 浏览器?uk.example.com

该过程与单主机方案相同,但有一个例外:外部 Web Dispatcher 会定期检查租户数据库实际位于哪些主机上 运行。如果租户数据库在多个主机上运行,则外部 Web Dispatcher 在这些主机之间执行负载平衡。

  • 13
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值