Skip to content

PKUHPC/scow-k8s

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SCOW在K8S集群上部署

1. 前提条件

2. 部署

2.1 给部署SCOW的节点打标签

# k8s-node01为规划中k8s中部署scow的节点,若有多个,请分别执行。
# app=scow 标签用于k8s的节点亲和性选择
kubectl label nodes k8s-node01 app=scow

2.2 SCOW部署节点设置

  • 为部署scow的节点设置到登录节点的root免密(操作略);

  • 挂载共享目录,挂载点为/scow,并创建如下目录。

    # config用于存放scow部署配置
    # portal用于存放门户自定义入口数据
    # public用于存放自定义公共资源,如图片等
    mkdir /scow/{config,portal,public}

2.3 生成和配置部署文件

通过scow-cli生成配置文件:

# 下载
wget https://github.com/PKUHPC/SCOW/releases/download/latest/cli-x64

# 重命名
mv cli-x64 cli

#修改文件权限
chmod +x cli

#生成配置sample
./cli init

根据实际情况修改config目录中的配置文件(可不用配置install.yaml文件),如何修改请参照SCOW文档网站,此处略。

配置完成后将config目录中的文件按照文件目录拷贝到/scow/config/

2.4 开始部署

下载该项目,在安装了Helm的master节点执行:

git clone https://github.com/PKUHPC/scow-k8s.git

修改values.yaml配置文件,重点关注以下参数:

配置项 说明 备注
storageClass 为SCOW提供的存储类名称 根据实际存储类名称修改
image.repository SCOW镜像仓库
image.tag SCOW镜像tag SCOW版本
gateway.nodePort SCOW服务外部访问端口 k8s nodeport端口,大于30000,默认30080
gateway.resolver k8s dns解析地址 默认kube-dns.kube-system.svc.cluster.local
***.db.db_password ***服务mysql数据库密码 默认为aWNvZGVAMjAyNA==,base64编码(icode@2024)

安装:

helm install scow . -n scow --create-namespace

2.5 查看部署情况

# 查看SCOW的Deployment
[root@k8s-master ~]# kubectl get deploy -n scow
NAME                       READY   UP-TO-DATE   AVAILABLE   AGE
ai-db-deployment           1/1     1            1           29h
ai-deployment              1/1     1            1           29h
audit-db-deployment        1/1     1            1           29h
audit-server-deployment    1/1     1            1           29h
auth-deployment            1/1     1            1           29h
db-deployment              1/1     1            1           29h
gateway-deployment         1/1     1            1           29h
mis-server-deployment      1/1     1            1           29h
mis-web-deployment         1/1     1            1           29h
novnc-deployment           1/1     1            1           29h
portal-server-deployment   1/1     1            1           29h
portal-web-deployment      1/1     1            1           29h
redis-deployment           1/1     1            1           29h

# 查看SCOW的Pod
[root@k8s-master ~]# kubectl get po -n scow
NAME                                       READY   STATUS    RESTARTS      AGE
ai-db-deployment-5c96958564-chgs6          1/1     Running   0             29h
ai-deployment-6c48758c66-ddq8h             1/1     Running   0             29h
audit-db-deployment-95d757cb8-n28mw        1/1     Running   0             29h
audit-server-deployment-9bbbcf89-kjgbk     1/1     Running   3 (29h ago)   29h
auth-deployment-84b9bdc47d-sdvw5           1/1     Running   0             29h
db-deployment-7645577f46-mlm2w             1/1     Running   0             29h
gateway-deployment-769f99fd9f-8b9mr        1/1     Running   0             29h
mis-server-deployment-7665bfb564-rkbcs     1/1     Running   3 (29h ago)   29h
mis-web-deployment-6cd8dc495c-g62wq        1/1     Running   2 (29h ago)   29h
novnc-deployment-545dc54956-24q6h          1/1     Running   0             29h
portal-server-deployment-858d96d6c-vs55k   1/1     Running   0             29h
portal-web-deployment-7ccffc89f9-zzvgc     1/1     Running   1 (29h ago)   29h
redis-deployment-5b778d7fb8-6p466          1/1     Running   0             29h

# 查看SCOW的Service
[root@k8s-master ~]# kubectl get svc -n scow
NAME            TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)        AGE
ai              ClusterIP   10.96.3.2     <none>        3000/TCP       29h
ai-adapter      ClusterIP   10.96.1.13    <none>        8972/TCP       29h
ai-db           ClusterIP   10.96.1.26    <none>        3306/TCP       29h
audit-db        ClusterIP   10.96.1.91    <none>        3306/TCP       29h
audit-server    ClusterIP   10.96.3.185   <none>        5000/TCP       29h
auth            ClusterIP   10.96.2.5     <none>        5000/TCP       29h
db              ClusterIP   10.96.1.216   <none>        3306/TCP       29h
gateway         NodePort    10.96.3.141   <none>        80:30080/TCP   29h
mis-server      ClusterIP   10.96.1.79    <none>        5000/TCP       29h
mis-web         ClusterIP   10.96.2.75    <none>        3000/TCP       29h
novnc           ClusterIP   10.96.2.224   <none>        80/TCP         29h
portal-server   ClusterIP   10.96.2.24    <none>        5000/TCP       29h
portal-web      ClusterIP   10.96.3.19    <none>        3000/TCP       29h
redis           ClusterIP   10.96.1.187   <none>        6379/TCP       29h

#  查看SCOW各数据库的密码配置
[root@k8s-master ~]# kubectl get secret -n scow
NAME         TYPE     DATA   AGE
mysql-info   Opaque   3      29h

3. SCOW日志收集方案(可选)

SCOW日志收集与查看请参考:EFK部署与使用

Releases

No releases published

Packages

No packages published