license常见问题

1、导入license后租户端页面还是报“没有License”错误

  • license从导入到生效最多有60秒的延迟,如果用户是导入完马上使用的,让他静待一会儿
  • 检查license是否已导入,通过列表接口查看已导入的license,并查看返回的license的status:1是等待生效、2是已生效、3是已过期、4是已作废、5是无效
curl -i -m 3 -k 'https://localhost:7100/license/list'
  • 当且仅当导入请求返回{"code":0}时表示导入成功,否则将错误贴给研发,领一张新license,导入成功后不允许重启license-server
  • 检查license生效状态,在license-server机器上执行以下命令(私有云的appid为common),当返回中有"active":true时表示license已激活
 curl -i -m 3 -k 'https://localhost:7100/license/status?product=tsf&appid=[appid]'
  • 检查license-server注册地址,在license-server机器上执行curl 'localhost:8500/v1/health/service/license-server?passing&pretty',查看返回的Service.Address,是否为有效的内网可达的地址,如果不是,将ip a的结果贴给研发适配,并指导用户在config/license.yml的配置server.netinterface: [有效网口名]解决,以网口名eth0为例:
 server:

     netinterface: eth0
  • 检查tsf-dispatch最近的日志是否有抛SSLHandshakeException异常,有则表示CA证书安装失败。公有云和TCE环境不应当出现该问题,需要研发介入检查。若是独立版环境,需检查所在机器是否有安装tsf-infrastructure,若有,则将其deploy.log内容贴给研发检查,若无,则需要用root手动执行安装,安装成功后再重启该机器上所有tsf-oss模块

2、如何手动导入新license

在取得新license后,新license通常长这个样子:

-----BEGIN QCLOUD LICENSE-----

signature: ETGr4PZOAUz/VkUHkS6R7z83QXAC2edxgFvq9HrTFfpmmLb4hQ/XekM8yx+MKa1L6B11Eq5K19KdX/cws4Pe+fe21AZe5tLECfO56Sd672RsB/we9e5cDPcal9WFLsJzzC/0ml2sfvifoz/roPY8H5BHn+Gpl+D5i3EGSQ0li3pOc6du5c8ePwwBM+zncia0qUeY/dNX0EJUl/R5hPwnJiL16b3ic4950xj0qp+MIaDo6lPeTXj0UiEUoi9k28shWbqfqNJBbjHeCDFL0WJ0hngZ9cJ1TDYFL19gzyyMUGphfmm4lEI7yOMrd+s/Cbn7jOKOHvWvL+9Jcr/9HpW3Jg==

 version: 0.1





 eyJWZXJzaW9uIjoiMC4xIiwicHJvZHVjZXIiOnsib3BlcmF0b3IiOiIifSwiZ3Jh

 bnRlZSI6eyJuYW1lIjoieWlxaV96aGlsaWFuIn0sImJpcnRodGltZSI6MTU0Mjk2

NjM2MCwicGVyaW9kIjoiMzBkIiwiYWN0aXZlYmVmb3JlIjoxNTQyOTg4Nzk5LCJw

cm9kdWN0IjpbeyJuYW1lIjoidHNmIiwicmVzb3VyY2UiOlt7Im5hbWUiOiJpbnN0

YW5jZSIsInF1b3RhIjoxMDB9XX1dfQ==

-----END QCLOUD LICENSE-----

从TSF 1.12版本开始在运营端页面上上传license即可,即license-server版本高于0.0.3,版本可通过执行以下命令来观察:

 $ ./license-server -version

 server version: 0.0.3 # server程序版本号

 license version: 0.3  # 其所支持的license文件版本

TSF**独立版1.12.0以前集成的 license-server,需要在 每台** license-server主机上执行以下命令完成导入,注意要把license content中的换行替换成\n,当且仅当返回{"code":0}时表示导入成功:

curl -i -k -m 3 -X POST "https://localhost:7100/license/upload" -d '{"content":"[license content]"}'

例如:

 curl -i -k -m 3 -X POST "https://localhost:7100/license/upload" -d '{"content":"-----BEGIN QCLOUD LICENSE-----\nsignature: o+d4Q42ladm4Cbd+alc6LMgftTx/BzlSnJiDoP9i0TD34DXWqsJ5yCP75+d9siohdjpMrr8G3aTOISPg9HTorM7xtH3YPskjFVHFGIm26X1L8qpYN9mbZ481fGljuBFVCmxKOrQ9AMLgS6oSeyO6L8HbU21YvSQOc5QLggTqLr6DITouvEdJL4AGk2+XZbN1Koj5IxsRDLGiJVAtiGVX6wBR+SfXbCAvqdvE8mwp1tblT6yOtMrJen/ZUP1gINoXi58y5Er30tlXTX47s5f1KP1sJTpNEeL3sFXQ41M5RrJPzcs5JPiXo+5Kb73cYDjCK4G4O4wHnBEyV0lxVWX+ng==\nversion: 0.1\n\neyJWZXJzaW9uIjoiMC4xIiwicHJvZHVjZXIiOnsib3BlcmF0b3IiOiIifSwiZ3Jh\nbnRlZSI6eyJuYW1lIjoiYmxhY2tzdG9uZSJ9LCJiaXJ0aHRpbWUiOjE1NDM4Mzgx\nMDAsInBlcmlvZCI6IjYwZCIsImFjdGl2ZWJlZm9yZSI6MTU0MzkzOTE5OSwicHJv\nZHVjdCI6W3sibmFtZSI6InRzZiIsInJlc291cmNlIjpbeyJuYW1lIjoiaW5zdGFu\nY2UiLCJxdW90YSI6NTB9XX1dfQ==\n-----END QCLOUD LICENSE-----\n"}'

3、license-server启动不起来

如果ps -ef | grep license的结果里看不到licnse-server,到安装路径的log目录下查看最近一次启动记录中是否存在CRITICAL的记录,如果CRITICAL记录的message为ip address no found,表示程序无法自选取注册的服务地址,需要显式在配置文件中指定绑定的网口名,在config/license.yml的配置server.netinterface: [有效网口名]解决

4、TSF租户页面提示节点数余量不足

页面上的提醒是前端根据license返回的上限和oss统计的实例数做比较后发现剩余较少或超出时弹出的。可以先查看Consul统计的已注册实例数,再查看许可的实例数上限,即以下命令返回的instancequota,再判断是否需要给用户升级license

curl -i -m 3 -k 'https://[license-server host]:7100/license/status?product=tsf&appid=[appid]'

5、DescribeResourceConfig返回的License结构里的各值都是null

查看tsf-resource日志,检查是否在请求license-server时出现了失败

6、license-server升级替换步骤

​ ${dir}为部署目录

  • 停止license-server
cd ${dir}/tsf/license/license-server/license-server/bin && ./stop.sh
  • 备份license-server
cd ${dir}/tsf/license/license-server/license-server/bin && mv license-server license.back
  • 下载新包
cd ${dir}/tsf/license/license-server/license-server/bin && wget https://van-1256974872.cos.ap-guangzhou.myqcloud.com/license-server && chmod +x license-server
  • 启动进程
cd ${dir}/tsf/license/license-server/license-server/bin && ./start.sh
  • 其余节点重复以上操作

results matching ""

    No results matching ""