Deleting the wiki page 'PCM部署操作步骤' cannot be undone. Continue?
本手册默认在centos7 操作系统中进行,ubuntu及其他发行版可以根据操作步骤相应进行调整。
mysql中存储了pcm组件的元数据以及任务相关的业务数据,用户可以根据情况,如已有mysql 以上8.0版本的服务,可以直接执行1.2及之后的操作完成数据导入,1.1的操作主要提供给没有mysql服务的用户使用。myslq的安装可以在1.1(a)和1.1(b)中选择一种方式即可。
yum remove -y mariadb-server mariadb mariadb-libs
此处可以在https://repo.mysql.com/ 根据操作系统版本选择相应的包来下载,例如这里选择的版本是el7-11
wget https://repo.mysql.com/mysql80-community-release-el7-11.noarch.rpm
sudo yum install -y mysql80-community-release-el7-11.noarch.rpm
yum repolist enabled | grep "mysql.*-community.*"
查询到mysql80 server就是已经注册成功
sudo yum-config-manager --disable mysql57-community
sudo yum-config-manager --enable mysql80-community
sudo yum install -y mysql-community-server
systemctl start mysqld
systemctl status mysqld
状态为active(running)即为启动成功
yum remove -y mariadb-server mariadb mariadb-libs
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.36-1.el7.x86_64.rpm-bundle.tar
tar -xvf mysql-8.0.36-1.el7.x86_64.rpm-bundle.tar
rpm -ivh mysql-community-libs-8.0.36-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.0.36-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.36-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.36-1.el7.x86_64.rpm
rpm -ivh mysql-community-common-8.0.36-1.el7.x86_64.rpm
rpm -ivh mysql-community-debuginfo-8.0.36-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.36-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.36-1.el7.x86_64.rpm
systemctl stop firewalld
systemctl start mysqld
systemctl status mysqld
状态为active(running)即为启动成功
grep 'temporary password' /var/log/mysqld.log
使用mysql -u root -p 登录
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Nudt!123';
use mysql;
update user set host = '%' where user = 'root';
flush privileges;
create database pcm;
create database pcm_auth;
wget -O pcm_auth.sql https://www.gitlink.org.cn/attachments/entries/get_file?download_url=https://www.gitlink.org.cn/api/JointCloud/pcm-coordinator/raw/deploy%2Fpcm-auth.sql?ref=master
wget -O pcm.sql https://www.gitlink.org.cn/attachments/entries/get_file?download_url=https://www.gitlink.org.cn/api/JointCloud/pcm-coordinator/raw/deploy%2Fpcm.sql?ref=master
mysql -u root -p pcm < pcm.sql
mysql -u root -p pcm_auth < pcm_auth.sql
pcm的部署一般通过kubernetes进行编排管理,所以用户如果已经拥有可用的K8S集群,可以跳过2和3步骤进行后续操作。
如果需要安装K8S,可以使用kubekey来实现K8S集群的快速部署;通过以下的命令,可以下载 KubeKey 。
wget -O kk https://www.gitlink.org.cn/api/attachments/9e08c5d4-04bc-4f71-867a-ad3dd437cdb9
chmod 755 kk
执行创建集群的命令,此过程根据用户网络情况,可能需要5-10分钟,如遇到下载失败的情况重新执行创建命令即可
KKZONE=cn ./kk create cluster
执行可能会提示部分软件未安装,直接yum安装即可
eg:
sudo yum install -y conntrack
sudo yum install -y socat
然后重新执行创建集群命令,执行成功后可以执行kubectl get pod 验证环境
pcm所有服务的yaml文件包下载地址在这里
或者在服务器上直接执行
wget -O yaml.tar.gz https://gitlink.org.cn/attachments/entries/get_file?download_url=https://www.gitlink.org.cn/api/JointCloud/pcm-deploy/raw/yaml.tar.gz?ref=master
下载完成解压
tar -vxf yaml.tar.gz
进入yaml文件夹中
cd yaml
执行以下命令来安装Prometheus相关组件
kubectl create -f prometheus/manifests/setup/
kubectl create -f prometheus/manifests
kubectl create -f prometheus/service-monitor.yaml
需要修改配置文件中的数据库地址为mysql服务安装的地址,注意这里根据实际情况选择ip,如果使用localhost可能因为服务在容器中访问不到,所以如果服务部署在本地,则需要使用集群的内网地址,如下图中所示,使用命令kubectl get svc查看k8s集群的服务clusterip,然后在ifconfig中找到相同网段的那个ip进行配置,如果mysql是单独部署的,则采用其服务地址即可。
需要修改的分别是一下几个位置:
pcm-auth.yaml中107行
pcm-core-api中80行
pcm-core-rpc中78行
修改mysql为对应服务的地址后执行一下命令来创建对应的服务:
主要包含PCM的权限管理功能模块
kubectl apply -f pcm-auth.yaml
core-api主要包含PCM的Coordinator端的元素管理、资源汇聚、任务调度等核心功能模块
kubectl apply -f pcm-core-api.yaml
core-rpc主要包含PCM的Coordinator端与各Participant端进行通信的模块,未来根据情况可能调整
kubectl apply -f pcm-core-rpc.yaml
前端页面的部署yaml
kubectl apply -f pcm-rip.yaml
部署情况可以通过以下命令查看
kubectl get pod
yaml文件中默认采用最新的镜像版本进行操作,pcm团队会根据定期进行将最新的版本更新到公有镜像仓库,如果用户需要更新pcm服务,只需重新执行apply操作即可,如只需要更新对应模块,则指定其yaml文件即可。
重新执行1.3中的步骤,将数据库的最新数据重新导入
kubectl delete -f .
kubectl apply -f .
在用户的浏览器设置中删除网站的缓存信息
此时前端服务可以通过服务器ip的31149端口访问到
默认账号密码为admin/Nudt@123
在登录后的首页点击访问驱动器管理
填入列表中的信息,注意此处的地址应该对应P端服务的地址,如在同一集群内部署,则可以指定为service+port的形式,如果部署在异地,则需要用户拿到对应的地址填入
配置成功后可以在列表中查看到对应的adapterId
点击集群关联页签,点击绑定集群
选择刚刚创建的驱动器,然后填入集群的相关信息,具体信息内容可与开发者沟通或者参考pcm开发手册。填写完成后点击确定保存
将7.1中获取到的适配器id填入到对应P端yaml文件中的adapterId字段,并将CoreUrl字段修改为当前对应C端服务的地址(可通过kubectl get svc -n pcm获取)
然后执行kubectl apply -f pcm-hpc.yaml启动超算驱动器
Deleting the wiki page 'PCM部署操作步骤' cannot be undone. Continue?