使用安装器安装单机版苍穹原创
金蝶云社区-吴辉宇
吴辉宇
16人赞赏了该文章 5153次浏览 未经作者许可,禁止转载编辑于2022年08月17日 08:51:34

最近使用安装器安装苍穹,没有安装gpass,整理了一下操作步骤。大家一起学习探讨。


安装器安装的苍穹,是基于kubenate(k8s)运行的。其中zookeeper,redis,rabbitmq,mysql/postgresql是安装在主机上的,剩下的mservice,web,mc,fileserver,logstash,kafka,es服务是在k8s上运行的。


一. 资源要求

在安装前,首先要规划好资源。

  1. 操作系统必须是centos7,X86,安装器不支持其他操作系统。

  2. 单机版苍穹,资源要求8C/32G内存,单台机器。

  3. 磁盘大小至少200G。


二. 安装包获取

安装器请联系金蝶相关同事获取下载链接。


三. 资源检查

前期工作,确认资源是否按要求准备:

  1. 查看操作系统,使用命令“uname -a”查看操作系统是否是X86,使用命令“cat /etc/redhat-release”查看操作系统版本是否centos7。

    image.png


  2. 查看内存是否满足要求。使用命令“free -m”获取内存和内存使用情况。

    image.png


  3. 查看磁盘空间是否满足要求,使用命令“df -h”获取,磁盘若开始空间不够,也可以在后续扩容。但尽量按要求往多上准备,确保安装和后续使用没有问题。

    image.png


四. 苍穹安装

前期工作准备完毕,下面进入正式安装。

  1. 使用命令“tar -zxvf 文件名”解压下载的安装包。

    image.png


  2. 进入到目录singularity/bin下,执行命令“./startup.sh”,安装前会校验当前主机的内核是否满足要求,若不满足,输入"Y/y",升级内核重启机器后,再执行这一步。

    image.png


  3. 操作系统若内核满足要求,提示“输入安装器的密码”,输入密码后回车启动安装器服务。

    image.png


  4. 执行完startup.sh脚本, 在执行日志上,可以获取安装器的访问地址。若地址有内外网,将IP改成对应的外网IP,将端口改成对应的映射端口。

    image.png


  5. 打开浏览器,访问上一步获取的地址。

    image.png


  6. 输入密码,登录安装器。进入到安装器界面


  7. “选择产品”,部署模式选择“单台机器安装”,去掉gpass,只安装苍穹应用平台。点击“下一步”

    image.png


  8. “资源规划”,新增资源,维护当前机器的信息(注:主机IP是当前机器的IP,通过“hostname -I”或“ifconfig”命令获取,针对云厂商提供的主机,不要填写弹性IP)。安装组件选择“苍穹应用平台”,去掉“苍穹应用K8s Node”和“PostgresQSL Monitor”。

    image.png


    image.png


  9.  产品配置,主要维护信息如下,其他配置提供了默认信息,有需要可自行修改。

    1. 苍穹安装目录:填写挂载盘较大的目录下,自定义。

    2. 集群编码:对应MC的集群管理,自定义,填写有意义的编码即可。

    3. 苍穹租户ID:对应MC的租户管理,自定义,填写有意义的ID即可。

    4. MC访问地址:默认是http://IP:8090/mc, 将IP换成访问地址,若区分内外网,换成外网IP,8090为默认端口,若做了端口映射,也替换成对应的映射端口即可。

    5. 管理员手机号:对应苍穹的administrator管理员手机号。

    6. NetWork Interface:默认eth0,具体查看主机的网络。

    7. Docker数据目录:填写挂载盘较大的目录下,自定义。

    image.png


  10. 维护好苍穹服务信息后,点击“开始安装”进行苍穹安装。等待安装完成,若安装失败,请根据日志分析,也可在常见问题找有没有相同的问题。

    image.png


  11. 点击“查看登录信息”,可以获取苍穹服务登录信息。

    image.png


五. 服务检查

  1. zookeeper服务:安装在主机,通过“service zookeeper status“或”systemctl status zookeeper“获取zk的服务状态。

    image.png


  2. redis服务:安装在主机,通过”service redis-6379 status“或”systemctl status redis-6379“获取redis的服务状态。

    image.png


  3. rabbitmq服务:安装在主机,通过”service rabbitmq-server status“或”systemctl status rabbitmq-server“获取rabbitmq的服务状态。

    image.png


  4. postgresql服务:安装在主机,通过”service postgresql status“或”systemctl status postgresql“获取postgresql的服务状态。

    image.png


  5. elasticsearch服务:安装在主机,通过”service es status“或”systemctl status es“获取elasticsearch的服务状态。

    image.png


  6. logstash服务:安装在主机,通过”service logstash status“或”systemctl status logstash“获取logstash服务状态。

    image.png


  7. kafka服务:安装在主机,通过”service kafka status“或”systemctl status kafka“获取kafka服务状态。

    image.png


  8. nginx服务:安装在主机,通过”service nginx status“或”systemctl status nginx“获取nginx服务状态。

    image.png


  9. mc, mservice, mservice-qing, fileserver, web服务:通过k8s启动,通过命令”kubectl get pods -n 集群编码“获取。(因fileserver未挂载磁盘,启动会异常,在环境初始化会调整

    image.png


六. 环境初始化(非Gpass)

苍穹服务安装完成后,还不能正常使用,需要按以下初始化服务。

  1. fileserver挂载存储。确认fileserver的附件存储路径,可以跟苍穹安装目录放在一起,例如/kingdee/cosmic/fileserver。确认好附件挂载目录后,通过”kubectl edit deployment fileserver -n 集群编码“, 打开fileserver的编辑界面。添加如下内容:

    image.png

    约89行,在volumeMounts,添加一个挂载盘。

    - mountPath: /kddata

      name: fileserver

    约101行,在volumes,添加一个磁盘。path的值是本地附件存储的路径。

    - hostPath:

         path: 附件在本地的存储路径

         type: ""

      name: fileserver

    注意:1. 不能使用tab,只能使用space添加空格。2. 注意格式,每次缩进2个空格。


  2. 修改完成后,可通过”kubectl get pods -n 集群编码“获取最新的状态,等待fileserver的状态为Running。

    image.png


  3. 在浏览器登录MC服务,默认账号/密码:admin/Kdadmin001,首次登录后,需要重置admin的密码,按要求重置密码即可。

    image.png


  4. 确认机器连接。切换功能【组件维护】->【机器管理列表】,点击机器名称,在编辑界面点”测试连接“,确认能连接服务器。

    image.png


  5. 修改集群管理配置。切换功能【集群管理】,点击集群编码,维护集群信息。

    image.png


  6. 在【集群管理】,维护【应用仓库】信息。

    所属机器:选择nginx服务器

    路径:/var/appstatic/appstore/cosmic

    地址:http://127.0.0.1:8090/appstore/cosmic

    image.png


  7. 在【集群管理】,维护【静态资源】信息。

    所属机器:选择nginx服务器

    路径:/var/appstatic/static-files/cosmic/webapp

    image.png


  8. 在【集群管理】,维护【高级配置信息】,该配置在苍穹补丁升级时使用到

    mc.upgrade.appstore:应用仓库更新

    mc.upgrade.staticresource:静态资源更新

    mc.upgrade.clusterrestart:苍穹重启

    mc.upgrade.datacenter:元数据升级

    image.png


  9. 在【集群管理】,选择记录,点击发布集群。

    image.png


  10. 访问苍穹,使用管理员登录苍穹,默认账号/密码:administrator/123456,首次登录需要激活和重置密码。


    image.png


  11. 访问monitor,将苍穹的访问地址,把ierp改成monitor,默认账号/密码:admin/admin。

    monitor初始化教程:https://vip.kingdee.com/link/s/M5a3b 

    image.png


  12. 切换功能【存储库配置】,修改数据库服务信息

    image.png

    image.png


  13. 点击右上角的“修改密码”,在弹出框,修改密码。修改密码后,会退出登录,重新登录验证新密码。

    image.png


  14. 访问“日志查询”,确认日志是否能正常获取。

    image.png

    若日志获取异常:可根据文章https://vip.kingdee.com/link/s/MN8RF 分析处理。

       

七. K8S常见操作

  1. 获取命名空间(苍穹服务所在的命名空间默认是集群编码):kubectl get ns

  2. 创建命名空间:kubectl create ns 命名空间

  3. 获取命名空间下的pod:kubectl get pods -n 命名空间

  4. 获取命名空间下的deployment:kubectl get deployment -n 命名空间

  5. 获取命名空间下的statefulset:kubectl get statefulset -n 命名空间

  6. 获取命名空间下的service:kubectl get service -n 命名空间

  7. 获取k8s的节点:kubectl get nodes

  8. 获取deployment的信息:kubectl describe deployment 服务名 -n 命名空间

  9. 获取statefulset的信息:kubectl describe statefulset 服务名 -n 命名空间

  10. 获取pod的信息:kubectl describe pod 服务名 -n 命名空间

  11. 删除pod(删除后会重新拉取,相当于重启):kubectl delete pod pod名 -n 命名空间

  12. 编辑deployment服务:kubectl edit deployment 服务名 -n 命名空间

  13. 编辑statefulset服务:kubectl edit statefulset 服务名 -n 命名空间

  14. 登录容器后台:kubectl exec -it pod名 -n 命名空间 命令

  15. 查看日志:kubectl logs -f pod名 -n 命名空间

  16. 获取deployment的yaml文件:kubectl get deployment 服务名 -n 命名空间 -o yaml


示例:

  1. 获取所有服务的运行状态。所有服务可以通过 -A 替换 -n 参数,命令”kubectl get pods -A“,如下图:

    image.png


  2. 查看服务日志,例如查看苍穹日志。首先需要获取苍穹服务的pod名。再根据获取的pod名获取日志。命令如下:

    kubectl get pods -n 命名空间

    kubectl logs -f pod名 -n 命名空间

    image.png


  3. 连接容器后台。连接服务后台,可以通过kubectl exec -it pod名 -n 命名空间 命令,若要登录后台,命令可以是bash或sh这种不会结束的命令。例如登录苍穹后台,命令如下图:

    image.png


  4. 苍穹修改CUSLIBS值,增加一个jar包。通过”kubectl edit deployment 服务名 -n 命令空间“打开编辑界面,编辑命令跟vi命令一样,需要注意两点:(1)空格只能用space键,不能用tab键。(2)格式要对齐,缩进是两个空格。如下图

    image.png

    image.png




    编辑保存后,若语法没问题,退出编辑页面后会重启服务,若语法不符合要求,则会在编辑页面头部提示失败信息,根据要求调整。

    image.png

    image.png

    

八. 常见问题

  1. 问题:安装时提示"the NTP socket is in use exiting",如下图:

    image.png

    解决方法:在第二步“资源规划”,填写的服务IP不是真实IP,是弹性公网IP,将这个IP改成服务器内部IP,重新安装。


  2. 问题:安装完成后,服务状态都是Pending,CrashLoopBackOff。

    image.png

    解决方法:

    1. 确定是否按要求准备资源 

    2. 确定查看node的节点状态是否是Ready状态

    3. 查看存储使用情况,存储使用率不能超过85%

赞 16