XS Advanced和FQDN

2020-08-19 05:55发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我安装了带有Rev ...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我安装了带有Rev 110和XS Advanced的HANA数据库。

计算机的主机名是hdb。

完全限定的主机名是hdb.domain.tld(出于保密目的,仅对其进行了替换)。 这也是操作系统级别的"主机名-f"返回的内容。

在XS Advanced中,除了默认域hdb外,我还创建了域hdb.domain.tld,并且还为此新域设置了(签名)证书。

通过这种方式,我可以通过调用 https://hdb.domain.tld:51011访问我的XS Advanced应用程序之一 在我的浏览器中。 但是,当我要使用uaa服务时,会遇到很多问题。 第一个明显的问题是浏览器将我重定向到 https://hdb:30032/uaa-security/login ,因为缺少域名,因此无法从客户端获得。

虽然可以为应用程序指定域,但是服务代理似乎具有固定的URL? 我尝试了xs update-service-broker,但这只是给我一个"未实现"消息。 另外,我需要为此命令指定一个用户名和密码-但是哪个? 我尝试了SYS_XS_UAA,但没有任何关系,因为它没有像前面提到的那样实现。

另一个问题是,我不能只手动访问 https://hdb.domain .tld:30032/uaa-security/login ,因为它随后给了我404错误。 看来uaa服务器正在使用SNI,并且仅提供启动期间指定的url。

尽管/usr/sap/hana/shared/HDB/xs/bin中的启动脚本xs-uaa-server明确说明了用法[端口] [标准主机名] [ssl-enable 或ssl-disable] [启动或运行] [router-port],该参数由同一目录中的hdbxsuaaserver脚本检索

 如果[" $ USE_DEFAULT_DOMAIN"!=""]; 然后
    HOSTNAME_TO_USE = $ USE_DEFAULT_DOMAIN
 其他
    HOSTNAME_TO_USE =`cat $ SAP_RETRIEVAL_PATH/sapprofile.ini |  sed -n's/SAPLOCALHOST * = *//p'`
 科幻
 

因此,基本上,它仅读取sapprofile.ini的参数SAPLOCALHOST,而不是标准主机名。 sapprofile.ini甚至不包含参数SAPLOCALHOSTFULL,就像ABAP系统一样。

通过查看跟踪目录中的xsuaaserver.out,您可以轻松查看导致此问题的原因:

 硬盘
 -Dcom.sap.xs.scenario = hana -Duaaserver.port = 30031
 UAA_PORT 30031
 FULL_QUALIFIED_HOSTNAME hdb
 SSL_ENABLE是
 STARTMODE运行
 JAVA_OPTS -Dcom.sap.xs.scenario = hana -Duaaserver.port = 30031 -Duaaserver.logdir =/usr/sap/hana/shared/HDB/xs/bin/../uaaserver/tomcat/logs -Duaaserver.host =  hdb -Duaaserver.ssl.enable = true -Duaaserver.ssl.keystore =/usr/sap/hana/shared/HDB/xs/bin/../uaaserver/tomcat/ssl_key_store.jks -Duaaserver.ssl.keystore.pass =  iBoi8mKKJfzL6wx-HI7WokKUvjCJs9hqGRX -Duaaserver.port = 30031 -Dcom.sap.sapjvm.vmtag = xsuaaserver
 内部UAA URL  https://hdb:30031/uaa-security 
 外部UAA URL  https://hdb:30032/uaa-security  



 

因为启动脚本正在寻找xsa_startup_properties文件,该文件在开始之前就已获得,所以我也尝试创建包含内容的文件

 #!/bin/bash
 USE_DEFAULT_DOMAIN = hdb.domain.tld
 

然后用作完全限定的主机名。 您可以在xsuaaserver.out中看到效果,然后404也消失了,但是输入xs service-brokers仍然仅提供内部URL。 重定向仍然是本地主机名。 重新启动hana实例时(可能是xs控制器服务需要进行更改),xs控制器服务启动失败(因为它找不到uaa服务器)。

所以我的问题是,是否有任何变通办法,并且会出现使用fqdn的官方解决方案吗?

(7.2 kB)
4条回答
粗暴的香蕉
2020-08-19 06:58 .采纳回答

Fabian,

当前,XSA控制器和UAA服务器使用HANA本地主机名作为主机名来设置整个系统。 基本上您是对的,您需要将" hdb"主机名更改为FQDN。

当前唯一的解决方案是重新安装系统,当HDBLCM询问"输入本地主机名"时,输入FQDN。 然后,所有XSA服务都将使用此正确的主机名。

将来,您将有机会为HANA本地主机名和XSA默认域指定不同的主机名。 在即将发布的版本中,XSA还将提供系统重命名功能,这也可以解决此问题。

最诚挚的问候,

Marc

一周热门 更多>