企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
#### 服务器准备 + 推荐4C8G ( 测试环境 1C2G ) + 磁盘40GB ( 集群部署数据目录需要使用NFS共享/data/opscloud-data) + OS: CentOS7 #### 环境安装Oracle-JDK 1.8 & Maven 3 * JDK 1.8下载地址 [http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html) * 下载并安装 jdk-8u251-linux-i586.rpm * Maven 3下载地址[http://maven.apache.org](http://maven.apache.org) * 在/etc/profile中添加环境变量 ```bash # Export environment variables export JAVA_HOME=/path/to/jdk export M2_HOME=/path/to/maven export PATH=$JAVA_HOME/bin:$M2_HOME/bin:$PATH ``` #### 环境安装Mysql 8.0 * 推荐使用阿里云RDS\(MySQL 8.0\) * 创建opscloud数据库\(字符集utf8mb4\) * opscloud不支持Mysql5.x版本 #### 环境安装Redis 3 * 推荐使用阿里云Redis #### Clone项目代码 ```bash $ git clone https://github.com/ixrjog/opscloud ``` #### 导入SQL(3.0.1版本) ``` # sql文件位置 other/database/3.0.1/opscloud.sql # 自行修改127.0.0.1为你的mysql服务器ip或域名 $ mysql -uopscloud -p -h127.0.0.1 opscloud < ./opscloud.sql ``` #### 修改配置文件 > 修改完配置需要重新编译jar包并发布,否则配置不会生效,配置修改说明请参阅-配置文件 ```bash # clone项目代码 $ git clone https://github.com/ixrjog/opscloud # 查看所有配置文件,各模块配置文件独立,需要分别配置 $ find . -name "application-*-open.yml" | grep src # 通用配置文件 ./opscloud-common/src/main/resources/application-common-open.yml # VMwareVCSA配置 ./opscloud-vmware-vcsa/src/main/resources/application-vcsa-open.yml ./opscloud-cloud/src/main/resources/application-cloud-open.yml # Zabbix配置 ./opscloud-zabbix/src/main/resources/application-zabbix-open.yml # Jumpserver配置 ./opscloud-jumpserver/src/main/resources/application-jumpserver-open.yml # AWS配置 ./opscloud-aws-core/src/main/resources/application-aws-open.yml # LDAP配置 ./opscloud-ldap/src/main/resources/application-ldap-open.yml # Gitlab配置 ./opscloud-gitlab/src/main/resources/application-gitlab-open.yml # 阿里云配置 ./opscloud-aliyun-core/src/main/resources/application-aliyun-open.yml # Ansible配置 ./opscloud-ansible/src/main/resources/application-ansible-open.yml ``` #### 源码编译 ```bash # opscloud采用多环境配置文件开发,open对应的是开源版本配置 # 对应的配置文件eg: application-*-open.yml # $ mvn -Dmaven.test.skip=true clean package -P open -U -am -pl opscloud-manage # jar包路径 # opscloud-manage/target/opscloud-manage-open.jar ``` #### 项目启动 > 启动参数必须指定$JASYPT_PASSWORD环境变量,此参数用于加密数据 ```bash # 首次安装生成数据目录(集群部署可用NAS共享) # 若使用低权限启动确保opscloud可以读写以下目录 $ mkdir -p /data/opscloud-data/ansible $ mkdir -p /data/opscloud-data/log $ mkdir -p /data/opscloud-data/xterm # 部署 /opt/opscloud3/opscloud-manage-open.jar $ mkdir -p /opt/opscloud3/ $ \cp opscloud-manage/target/opscloud-manage-open.jar /opt/opscloud3/ # JVM内存值请自行调优 # ${JASYPT_PASSWORD} 变量为opscloud加密密钥,用于数据加解密 # 可将变量写入/etc/profile # export JASYPT_PASSWORD = '请使用高强度字符串' # 标准系统 2核心4G内存服务器启动 $java -Xms2048m -Xmx2048m -Xmn1024m -Xss256k -XX:MaxMetaspaceSize=256M \ -XX:MetaspaceSize=128M -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC \ -Djasypt.encryptor.password=${JASYPT_PASSWORD} -jar /opt/opscloud3/opscloud-manage-open.jar # 测试环境 1C2G服务器启动 $java -Xms1024m -Xmx1500m -Xss256k -XX:MetaspaceSize=128M \ -XX:MetaspaceSize=128M -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC \ -Djasypt.encryptor.password=${JASYPT_PASSWORD} -jar /opt/opscloud3/opscloud-manage-open.jar # 生产环境 4C8G服务器启动 $java -Xms4096m -Xmx4096m -Xmn2048m -Xss256k -XX:MetaspaceSize=256M \ -XX:MetaspaceSize=128M -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC \ -Djasypt.encryptor.password=${JASYPT_PASSWORD} -jar /opt/opscloud3/opscloud-manage-open.jar ```