安装部署
# 安装要求
金蝶Apusic统一身份认证V10.0需要具备以下基本要求:
检查系统版本
更新时间
关闭防火墙
# 网络
由于里面postgres、redis、nginx和各个微服务组件需要进行网络通信,所以需要保证各个服务之间的网络端口通信正常。
# JDK
由于里面postgres、redis、nginx和各个微服务组件需要进行网络通信,所以需要保证各个服务之间的网络端口通信正常。
# 硬件
| 组件 | 要求 |
|---|---|
| 操作系统 | Linux Red Hat 7.0或以上(及其他Kernel 3.10以上linux版本) |
| 物理内存 | 8G或以上 |
| CPU | PentiumE5200 2.5GHz或以上 |
| 硬盘 | 可用空间100G或以上 |
| Java环境 | JDK1.8 |
| 浏览器 | Chrome80以上 |
安装下载准备文件:
http://aidm.apusic.com/minio/doc/AIDM1.0.zip (opens new window)
# 软件安装
# LINUX部署
# 第一步jdk的安装并配置环境变量
AIDM运行依赖JDK1.8版本,可通过运行"java -version"命令查看是否安装了JDK以及安装版本;
1. 卸载系统自带openjdk
rpm -qa | grep java
*yum remove *openjdk**
2. 解压好jdk的tar.gz,在/etc/profile配置环境变量
tar -zxvf jdk-8u161-linux-x64.tar.gz
echo "export JAVA_HOME=/usr/local/java/jdk1.8.0_201" >> /etc/profile;
echo "export JRE_HOME=${JAVA_HOME}/jre" >> /etc/profile;
echo "export CLASSPATH=.😒{JAVA_HOME}/lib:${JRE_HOME}/lib" >> /etc/profile;
echo "export PATH=${JAVA_HOME}/bin:$PATH" >> /etc/profile;
source /etc/profile
# 第二步Redis安装
1.把redis-6.2.6.tar.gz解压到相关文件夹
tar -zxvf redis-6.2.6.tar.gz
2.重命名和移动文件
MV redis-6.2.6 /usr/local/redis
3. redis编译
Cd /usr/local/redis
Make
Make install
4. Redis启动
Mkdir etc
Mkdir bin
mv redis.conf /usr/local/redis/etc/
cd src/
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-server /usr/local/redis/bin/
进入redis目录
./bin/redis-server
5. 设置后台启动redis
vim /usr/local/redis/etc/redis.conf
把daemonize改成yes,把protected-mode改成no,把bind注释
在/usr/local/redis/bin目录启动redis
redis-server /usr/local/redis/etc/redis.conf
6.设置redis随机启动
cd /etc/
mkdir redis
cp /usr/local/redis/etc/redis.conf /etc/redis/6379.conf
cp /usr/local/redis/utils/redis_init_script /etc/init.d/redis
vi /etc/init.d/redis
通过查看启动脚本,确定各个路径是否正确
{width="2.9166666666666665in" height="2.1145833333333335in"}
cd /etc/init.d/
chkconfig redis on
如果运行结果提示:service redisd does not support chkconfig
解决方法: 使用vim编辑redisd文件,在第一行加入如下两行注释,保存退出,再次执行自启命令即可# chkconfig: 2345 90 10# description: Redis is a persistent key-value database注释的意思是,redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
# 第三步nginx安装
从给定的aidm安装包文件目录下拷贝pcre-8.39.tar.gz、zlib-1.2.8.tar.gz和openssl-1.0.0e.tar.gz到/opt目录下
进入/opt目录-- 安装PCRE库
tar zxf pcre-8.39.tar.gz
cd pcre-8.39
./configure
make
make install
-- 安装zlib库
tar zxf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
make install
安装openssl库
tar zxf openssl-1.0.0e.tar.gz
cd openssl-1.0.0e
./config
make
make install
1. 下载nginx-1.16.1.tar.gz
2. 在/opt目录下创建目录nginx
3. 将nginx-1.16.1.tar.gz放到nginx目录下
4. 到nginx目录下,解压文件tar -zxvf nginx-1.16.1.tar.gz
5. 到解压出来的目录下,编译安装,运行命令./configure --prefix=/opt/nginx
--with-http_stub_status_module --with-http_ssl_module
6. 编译成功,执行安装
7. make && make install
8. 进入目录cd /opt/nginx/sbin , 执行命令./nginx -t
9. 出现如下截图,表示安装成功
10. 启动nginx,执行命令./nginx
备注:①如果出现"编译error: no acceptable C compiler found in $PATH",
需要先 yum (opens new window) install gcc-c++
②如果出现"./configure: error: SSL modules require the OpenSSL library.
"需要先yum -y install openssl openssl-devel
# 第四步Postgresql安装
版本postgresql-12.2.tar.gz
解压后放在/opt/software
tar -zxvf postgresql-12.2.tar.gz
cd postgresql-12.2
编译postgresql源码
*./configure --prefix=/pgsql/postgresql //*yum -y install -y readline-devel(如果报错postgres readline library not found,执行此命令)
make
make install
创建用户组postgres并创建用户postgres
groupadd postgres
useradd -g postgres postgres
id postgres
创建postgresql数据库的数据主目录并修改文件所有者
cd /pgsql/postgresql
mkdir data
chown postgres:postgres data
配置环境变量
vi .bash_profile
添加一下内容
export PGHOME=/pgsql/postgresql
export PGDATA=/pgsql/postgresql/data
PATH=$PATH:$HOME/bin:$PGHOME/bin
切换用户到postgres并使用initdb初使用化数据库
su - postgres
Initdb
配置服务
vi postgresql.conf
在postgresql.conf中listen_addresses改成
listen_addresses = '*'
vi pg_hba.conf
# IPv4 local connections:
host all all 0.0.0.0/0 trust
host all all 127.0.0.1/32 trust
设置PostgreSQL开机自启动
在PostgreSQL源码目录的contrib/start-scripts路径下。
进入contrib/start-scripts
切换root账户
chmod a+x linux
复制linux文件到/etc/init.d目录下,更名为postgresql
cp linux /etc/init.d/postgresql
修改/etc/init.d/postgresql文件的两个变量
prefix**设置为postgresql的安装路径:/pgsql/postgresql
PGDATA**设置为postgresql的数据目录路径:/pgsql/postgresql/data
编辑/etc/sysconfig/iptables文件开放5432端口
cd /etc/sysconfig
vi iptables
启动postgres
service postgresql start
参考pg部署资料
https://blog.csdn.net/weixin_43230682/article/details/108403642 (opens new window)
# 第五步minio安装
1. 把minio包拷贝到服务器上/opt/software解压。
2.新增log文件夹 mkdir log
3.给sh和minio权限 chmod +x minio.sh
4.运行
sh minio.sh
5.修改账户密码(可不改,记住账号和密码access_key/secret_key)
进入解压目录,进入对应的data下
ll -a
cd .minio.sys/config/
vi config.json
6. 修改保存后,重启即可
7.minio随机启动
vim /etc/rc.d/rc.local
在rc.local中增加一下内容
cd /opt/software/minio/linux
./start.sh
chmod (opens new window) 777 /etc/rc.d/rc.local
# AIDM安装
# LINUX部署
第一步把aidm的jar包放在服务器上
1. 把jar包、application-dev.properties放入/opt/software/aidm的目录下
2. 修改application-dev.properties里面的redis、postgres、minio的连接的账户密码
第二步把前端包放在对应的目录下(/opt/software/aidm/build)
第三步初始化数据库导入aidm的数据库
切换到postgres账户下 su - postgres
psql
创建数据库 Create database aidm OWNER postgres;
GRANT ALL PRIVILEGES ON DATABASE aidm TO postgres;
切换root账号,把sql放在/opt/software/
导入数据库表 psql -h localhost -d aidm -U postgres -f opt/software/sql;
第四步nginx配置
1. 把ssl证书放入对应目录(/opt/nginx/conf/crt/)
2. 在nginx下nginx.conf的http下增加include /opt/nginx/conf/conf.d/*.conf;
3. 在conf.d目录下,增加aidm.conf,修改里面的ip等信息配置参照如下
upstream minio.aidm.apusic.com{
server 192.168.65.128:9000;
}
log_format aidm '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" "$request_time" "$upstream_response_time" ';
server {
#监听443端口
listen 443 ssl;
listen 80;
listen [::]:80;
#域名
server_name 192.168.65.128;
#ssl证书的pem文件路径
ssl_certificate /opt/nginx/conf/crt/aidm.apusic.com.crt;
#ssl证书的key文件路径
ssl_certificate_key /opt/nginx/conf/crt/aidm.apusic.com.key;
#access_log /var/logs/nginx-access.log aidm ;
location / {
root /opt/software/aidm/build;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location /minio {
proxy_pass http://192.168.65.128:9000/minio;
rewrite "^/minio/(.*)$" /$1 break;
}
location /api/ {
proxy_pass http://192.168.65.128:9527/api/;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_set_header X-real-ip $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
4. 在/opt/nginx/sbin启动nginx
启动nginx,执行命令./nginx
第五步放置有效的license
把license.xml放在和jar同一级目录下。
第六步启动aidm
nohup` `java -jar `` app``.jar &
# 第4章 访问
# AIDM平台访问
访问URL:http://ip (opens new window)
用户名密码:admin/aidm