当前位置:Gxlcms > 数据库问题 > Apollo-oracle-普通部署

Apollo-oracle-普通部署

时间:2021-07-01 10:21:17 帮助过:32人阅读

  • Apollo部署所在服务器IP Apollo_IP(下文均通过这个来指代)
  • 特别注意:由于业务系统需要访问Apollo获取配置,如果Apollo_IP和业务系统不再一个局域网,那么Apollo_IP必须是外网IP,同理,由于Apollo需要访问Oracle,如果Oracle_IPApollo_IP不属于同一个局域网,Oracle_IP也必须是外网IP
  • 2、从FTP服务器下载Apollo初始安装文件apollo-oracle-simple.zip

    3、本地解压初始安装文件,修改Apollo相关连接配置信息

    解压后得到的文件目录为:
    apollo-config\
    apollo-admin\
    apollo-portal\
    sql\
    startall.sh
    stopall.sh

    (1)修改apollo-config\config下的application-github.properties和apollo-config\scripts下的startup.sh

    替换application-github.properties中的IP为Oracle_IP、SID为xe、并设置访问用户名和密码为apolloconfig/apollo(不要设置成其他的了,后面会介绍Oracle对该用户的创建和授权,注意配置的值前后不要有空格)

    1. spring.datasource.url=jdbc:oracle:thin:@Oracle_IP:1521:SID
    2. spring.datasource.username=apolloconfig
    3. spring.datasource.password=apollo

    替换startup.sh中的IP为Apollo_IP,并将前面的注释符号#去除

    1. export JAVA_OPTS="$JAVA_OPTS -Deureka.instance.ip-address=Apollo_IP"

    (2)修改apollo-admin\config下的application-github.properties 配置同上(1)对该文件的操作

    1. spring.datasource.url=jdbc:oracle:thin:@Oracle_IP:1521:SID
    2. spring.datasource.username=apolloconfig
    3. spring.datasource.password=apollo

    (3)修改apollo-portal\config下的application-github.properties和apollo-env.properties

    替换application-github.properties中的IP为Oracle_IP、SID为xe,并设置访问用户名和密码为apolloportal/apollo(不要设置成其他的了,后面会介绍Oracle对该用户的创建和授权)

    1. spring.datasource.url=jdbc:oracle:thin:@Oracle_IP:1521:SID
    2. spring.datasource.username=apolloportal
    3. spring.datasource.password=apollo

    替换apollo-env.properties中的IP为Apollo_IP:

    1. #local.meta=http://localhost:8080
    2. #dev.meta=
    3. #fat.meta=
    4. #uat.meta=
    5. #lpt.meta=${lpt_meta}
    6. pro.meta=http://Apollo_IP:8847

    4、连接Oracle数据库(使用Navicat或者Oracle命令行),执行sql下的2个数据库脚本导入Apollo初始数据(sql脚本独立下载地址ftp://mdm.sunwayworld.com:6821/mdm/soft/apollo/apollo-oracle-sql.zip)

    1. MySQL不同,Oracle下不同的用户对应不同的表空间(即数据库),因为Apollo需要用到2个数据库apolloconfigdb apolloportaldb,所以事先需要在Oracle中创建2个对应的表空间和相对应的2个用户并分别赋予相应的权限,具体的操作命令语句可参考:

    (1)若使用Oracle命令行(sqlplus)(前提是直接在Oracle服务器所在机器操作,并且sql脚本上传到该机器),SSH登录Oracle所在机器,依次执行如下语句:

    1. ### 以system用户登录Oracle
    2. sqlplus system/oracle
    3. #查询数据库字符集(记下下面要用到 假设得到的字符集为AMERICAN_AMERICA.AL32UTF8 )
    4. select userenv(‘language‘) from dual;
    5. #退出回到终端
    6. quit;
    7. #设置环境变量(这么做的目的是保证下面将要执行的sql脚本导入不出现中文乱码情况)
    8. export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
    9. ###重新登录Oracle
    10. sqlplus system/oracle
    11. ### 针对 apolloconfigdb 创建表空间、用户、授权 (ps:datafile后面指定的表空间目录可以自定义)
    12. create tablespace apolloconfigdb datafile ‘/u01/app/oracle/oradata/apolloconfigdb.dbf‘ size 100M;
    13. #创建用户名为apolloconfig密码为apollo的用户(不建议其他名称和密码 因为sql脚本中存在引用设置)并设置表空间apolloconfigdb
    14. create user apolloconfig identified by apollo default tablespace apolloconfigdb;
    15. grant create session,create table,create view,create sequence,unlimited tablespace to apolloconfig;
    16. ### 针对 apolloportaldb 创建表空间、用户、授权
    17. create tablespace apolloportaldb datafile ‘/u01/app/oracle/oradata/apolloportaldb.dbf‘ size 100M;
    18. #创建用户名为apolloportal密码为apollo的用户(同上理 不建议为其他名称和密码)并设置表空间apolloportaldb
    19. create user apolloportal identified by apollo default tablespace apolloportaldb;
    20. grant create session,create table,create view,create sequence,unlimited tablespace to apolloportal;
    21. ### 导入sql脚本
    22. #切换到apolloconfig用户(一定要切换用户)
    23. conn apolloconfig/apollo
    24. #关掉&输入(因为脚本中存在&特殊符号 为避免导入报错)
    25. set define off
    26. #导入apolloconfigdb数据库(@后面是apolloconfigdb.sql的全路径)
    27. @/u01/app/oracle/oradata/apolloconfigdb.sql
    28. #切换到apolloportal用户(一定要切换用户)
    29. conn apolloportal/apollo
    30. #关掉&输入(因为脚本中存在&特殊符号 为避免导入报错)
    31. set define off
    32. #导入apolloportaldb数据库
    33. @/u01/app/oracle/oradata/apolloportaldb.sql

    5、使用SFTP工具将修改并重新压缩后的apollo-oracle-simple.zip上传到目标Linux服务器指定目录如/home/apollo下,然后在该目录下依次运行如下命令:

    (1)unzip apollo-oracle-simple.zip
    (2)chmod +x startall.sh
    (3)./startall.sh

    等待并观察日志输出(大概5分钟),若为如下则启动成功:

    技术图片

    6、启动成功浏览器中http://Apollo_IP:8070访问Apollo配置中心 默认dongzs/dongzs登录(该账户下已经包含所有项目运行需要的相关配置 登录后进行相应的配置修改即可满足项目运行需要)
    技术图片

    1. oracle版本的Apollo配置管理平台目前还存在如下BUG
    2. 不支持空值配置:即不支持 key= 这种只有key没有value值配置
    3. 不支持注释添加:即不支持 #这里是配置的注释说明 这样的配置

    7、执行 ./stopall.sh 可以关闭Apollo服务

    Apollo-oracle-普通部署

    标签:htm   技术   java_opts   jdb   from   add   jvm   top   png   

    人气教程排行