...
2.将docker-images目录的镜像push到k8s关联的镜像仓库。
代码块 |
---|
# 以aienv4j为例 docker load -i aienv4j docker login -u xxx -p xxx swr.cn-south-1.myhuaweicloud.com # 镜像仓库地址按需修改 docker tag aienv4j:v9.1 swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4j:v9.1 docker push swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4j:v9.1 # 同样处理其他镜像 |
3.k8s中创建pv/pvc,用于挂载目录。存储服务用网络文件系统。
...
4.将安装包中的scripts,services目录拷贝到服务器模板目录,例如/data_sfs_turbo/tenent_tpl/v11/public/nlav3-20241121/
代码块 |
---|
cd /data/nla-agent-setup cp -ra services /data_sfs_turbo/tenent_tpl/v11/public/nlav3-20241121/ cp -ra scripts /data_sfs_turbo/tenent_tpl/v11/public/nlav3-20241121/ |
5.为nla实例准备mysql和nl2sql目录。
...
代码块 | ||||||
---|---|---|---|---|---|---|
| ||||||
kind: Deployment apiVersion: apps/v1 metadata: name: aichat-tpl-nlav3 namespace: default spec: replicas: 1 selector: matchLabels: app: aichat-tpl-nlav3 version: v1 template: metadata: creationTimestamp: null labels: app: aichat-tpl-nlav3 version: v1 spec: volumes: - name: pvc-sfsturbo persistentVolumeClaim: claimName: pvc-sfsturbo - name: vol-173079782020714289 hostPath: path: /etc/localtime type: '' containers: - name: mysql-and-redis image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/airedis:v5 env: - name: PAAS_APP_NAME value: aichat-tpl-nlav3 - name: PAAS_NAMESPACE value: default - name: PAAS_PROJECT_ID value: 059de0e837000fc22fd6c00d6d8e80a7 resources: limits: cpu: '4' memory: 8Gi requests: cpu: 250m memory: 512Mi volumeMounts: - name: pvc-sfsturbo mountPath: /var/lib/mysql subPath: aichat-tpl/smartbi-aichat/data/config - name: vol-173079782020714289 readOnly: true mountPath: /etc/localtime terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent - name: mongo image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/mongo:4 env: - name: MONGO_INITDB_ROOT_USERNAME value: root - name: MONGO_INITDB_ROOT_PASSWORD value: smartbi1#nla resources: limits: cpu: '2' memory: 4Gi requests: cpu: 250m memory: 512Mi volumeMounts: - name: pvc-sfsturbo mountPath: /data/db subPath: aichat-tpl/smartbi-aichat/data/mongo/data terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent - name: propertycenter image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4j:v9.1 command: - /bin/sh - '-c' - ' sleep 40 ; /scripts/docker-entrypoint.sh' resources: limits: cpu: '2' memory: 4Gi requests: cpu: 250m memory: 512Mi volumeMounts: - name: pvc-sfsturbo mountPath: /ailogs subPath: aichat-tpl/smartbi-aichat/ailogs/ - name: pvc-sfsturbo mountPath: /jars subPath: tenent_tpl/v11/public/nlav3-20250421/services - name: pvc-sfsturbo mountPath: /scripts subPath: tenent_tpl/v11/public/nlav3-20250421/scripts/propertycenter terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent - name: aiweb image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4j:v9.1 command: - /bin/sh - '-c' - ' sleep 50 ; /scripts/docker-entrypoint.sh' resources: limits: cpu: '4' memory: 8Gi requests: cpu: 250m memory: 512Mi volumeMounts: - name: pvc-sfsturbo mountPath: /ailogs subPath: aichat-tpl/smartbi-aichat/ailogs/ - name: pvc-sfsturbo mountPath: /jars subPath: tenent_tpl/v11/public/nlav3-20250421/services - name: pvc-sfsturbo mountPath: /scripts subPath: tenent_tpl/v11/public/nlav3-20250421/scripts/aiweb terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent - name: admin image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4j:v9.1 command: - /bin/sh - '-c' - ' sleep 50 ; /scripts/docker-entrypoint.sh' resources: limits: cpu: '2' memory: 4Gi requests: cpu: 250m memory: 512Mi volumeMounts: - name: pvc-sfsturbo mountPath: /ailogs subPath: aichat-tpl/smartbi-aichat/ailogs/ - name: pvc-sfsturbo mountPath: /jars subPath: tenent_tpl/v11/public/nlav3-20250421/services - name: pvc-sfsturbo mountPath: /scripts subPath: tenent_tpl/v11/public/nlav3-20250421/scripts/admin terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent - name: modulemanager image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4j:v9.1 command: - /bin/sh - '-c' - ' sleep 50 ; /scripts/docker-entrypoint.sh' resources: limits: cpu: '2' memory: 4Gi requests: cpu: 250m memory: 512Mi volumeMounts: - name: pvc-sfsturbo mountPath: /ailogs subPath: aichat-tpl/smartbi-aichat/ailogs/ - name: pvc-sfsturbo mountPath: /jars subPath: tenent_tpl/v11/public/nlav3-20250421/services - name: pvc-sfsturbo mountPath: /scripts subPath: tenent_tpl/v11/public/nlav3-20250421/scripts/modulemanager terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent - name: aibus image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4j:v9.1 command: - /bin/sh - '-c' - ' sleep 50 ; /scripts/docker-entrypoint.sh' resources: limits: cpu: '2' memory: 4Gi requests: cpu: 250m memory: 512Mi volumeMounts: - name: pvc-sfsturbo mountPath: /ailogs subPath: aichat-tpl/smartbi-aichat/ailogs/ - name: pvc-sfsturbo mountPath: /jars subPath: tenent_tpl/v11/public/nlav3-20250421/services - name: pvc-sfsturbo mountPath: /scripts subPath: tenent_tpl/v11/public/nlav3-20250421/scripts/aibus terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent - name: smartbiproxy image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4j:v9.1 command: - /bin/sh - '-c' - ' sleep 50 ; /scripts/docker-entrypoint.sh' resources: limits: cpu: '2' memory: 4Gi requests: cpu: 250m memory: 512Mi volumeMounts: - name: pvc-sfsturbo mountPath: /ailogs subPath: aichat-tpl/smartbi-aichat/ailogs/ - name: pvc-sfsturbo mountPath: /jars subPath: tenent_tpl/v11/public/nlav3-20250421/services - name: pvc-sfsturbo mountPath: /scripts subPath: tenent_tpl/v11/public/nlav3-20250421/scripts/smartbiproxy terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent - name: nl2sqlllm image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4py-llm:v6 command: - /bin/sh - /scripts/docker-entrypoint.sh resources: limits: cpu: '6' memory: 32Gi requests: cpu: 250m memory: 2Gi volumeMounts: - name: pvc-sfsturbo mountPath: /logs subPath: aichat-tpl/smartbi-aichat/logs/ - name: pvc-sfsturbo mountPath: /services subPath: tenent_tpl/v11/public/nlav3-20250421/services - name: pvc-sfsturbo mountPath: /data subPath: aichat-tpl/smartbi-aichat/data/nl2sql_data - name: pvc-sfsturbo mountPath: /scripts subPath: tenent_tpl/v11/public/nlav3-20250421/scripts/nl2sql_llm - name: pvc-sfsturbo mountPath: /backup_data subPath: aichat-tpl/smartbi-aichat/nl2sql_backup_data terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent - name: agent image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4py-agent:v1.1 command: - /bin/sh - /scripts/docker-entrypoint.sh resources: limits: cpu: '4' memory: 8Gi requests: cpu: 250m memory: 1Gi volumeMounts: - name: pvc-sfsturbo mountPath: /logs subPath: aichat-tpl/smartbi-aichat/agent/logs - name: pvc-sfsturbo mountPath: /services subPath: tenent_tpl/v11/public/nlav3-20250421/services - name: pvc-sfsturbo mountPath: /data subPath: aichat-tpl/smartbi-aichat/data/nl2sql_data - name: pvc-sfsturbo mountPath: /scripts subPath: tenent_tpl/v11/public/nlav3-20250421/scripts/agent - name: pvc-sfsturbo mountPath: /services/agent/project/data subPath: aichat-tpl/smartbi-aichat/agent/data - name: pvc-sfsturbo mountPath: /services/agent/project/workspace subPath: aichat-tpl/smartbi-aichat/agent/workspace - name: pvc-sfsturbo mountPath: /services/agent/project/experience subPath: aichat-tpl/smartbi-aichat/agent/experience terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent - name: jupyter image: swr.cn-south-1.myhuaweicloud.com/smartbi_cloud/aienv4py-agent:v1.1 command: - /bin/sh - /scripts/docker-entrypoint-runtime.sh resources: limits: cpu: '6' memory: 10Gi requests: cpu: 250m memory: 1Gi volumeMounts: - name: pvc-sfsturbo mountPath: /logs subPath: aichat-tpl/smartbi-aichat/agent/logs - name: pvc-sfsturbo mountPath: /services subPath: tenent_tpl/v11/public/nlav3-20250421/services - name: pvc-sfsturbo mountPath: /scripts subPath: tenent_tpl/v11/public/nlav3-20250421/scripts/agent - name: pvc-sfsturbo mountPath: /services/agent/project/data subPath: aichat-tpl/smartbi-aichat/agent/data - name: pvc-sfsturbo mountPath: /services/agent/project/workspace subPath: aichat-tpl/smartbi-aichat/agent/workspace - name: pvc-sfsturbo mountPath: /services/agent/project/experience subPath: aichat-tpl/smartbi-aichat/agent/experience terminationMessagePath: /dev/termination-log terminationMessagePolicy: File imagePullPolicy: IfNotPresent restartPolicy: Always terminationGracePeriodSeconds: 30 dnsPolicy: ClusterFirst securityContext: {} imagePullSecrets: - name: default-secret schedulerName: default-scheduler tolerations: - key: node.kubernetes.io/not-ready operator: Exists effect: NoExecute tolerationSeconds: 300 - key: node.kubernetes.io/unreachable operator: Exists effect: NoExecute tolerationSeconds: 300 hostAliases: - ip: 127.0.0.1 hostnames: - main - redis - airedis - propertycenter - aiweb - admin - aibus - smartbiproxy - metadata - nl2sql - nl2sql-llm - chat - rhetorical - intention2cls - mongo - aimongo - jupyter strategy: type: Recreate revisionHistoryLimit: 10 progressDeadlineSeconds: 600 |
修改pvc名称,镜像地址,挂载路径
7.用yaml文件创建工作负载,启动nlav3。用yaml文件创建工作负载,启动AIChat。
8.为工作负载创建服务,暴露9082端口。
8.打开smartbi运维设置--自然语言配置,填写nla服务地址:http://aichat-tpl-nlav3:9082/aiweb,保存。
9.为aichat配置smartbi地址
浏览器输入http://ip:节点端口/aiweb/#/manager/config;初始密码admin/manager
添加smartbi地址。
10.使用aichat
浏览器输入http://ip:节点端口/aiweb/#
结束。