Oracle Java Cloud 系列 (03) — 云端部署一个 Java 电商应用


作者:Guo Tao (Oracle)

2016 年 3 月 30 日发布


右箭头 Oracle Java Cloud 系列 (04) — 利用 Oracle 开发云构建 DevOps 中心

本指南为整个系列的第三篇,介绍如何在 Java 云服务上部署应用程序,文章整体将分为下面四个部分:
第一步:通过 SSH 方式访问 Java 云、数据库云服务实例
第二步:创建应用程序所需的数据库表及初始化数据
第三步:在 Java 云服务上部署应用程序
第四步:测试应用程序

通过本系列教程的前两部分《01. 试用帐号开通指南》与《02. 创建 Java 云及数据库云实例》,你已经完成了 Java 云服务、数据库云服务实例的创建,可以获得相应的 Java 云服务实例及数据库云服务实例的访问信息,在后续部署应用程序过程中会使用到。

1. 通过 SSH 访问 Java 云与数据库云实例


通过 SSH 方式登录访问 Java 云与数据库云实例的服务器,需要用到在《02. 创建 Java 云及数据库云实例》中创建的私钥 jcs-private。

1.1 查看 Java 云服务实例、数据库云服务实例的公共 IP


a) 登录云服务控制台后,可以在云服务实例的详细信息中看到该实例的公共 IP 地址;

b) 在云服务仪表盘页面,点击进入 Java Cloud Service 的“服务控制台”;

 03-fig-01

c) 在 Java 云服务实例列表中,点击已创建的“DEMOJCS”云服务实例;

 03-fig-02

d) 在 DEMOJCS 的实例详细页面,可以看到该服务的公共 IP 地址;

 03-fig-03

e) 类似的方法,可看到数据库服务实例的公共 IP 地址。

 03-fig-04

1.2 使用 SSH 工具登录云服务实例


a) 这里以 SecureCRT 为例,通过 SSH 登录到云服务上,也可以通过其他 SSH 工具进行登录;

b) 打开 SecureCRT,点击 Quick Connect;

 03-fig-05

c) Protocol 选择 SSH2,Hostname 中输入云服务的公共 IP 地址,Username 输入 opc,Authentication 中选中 PublicKey,点击“Properties“按钮;

 03-fig-06

d) 在 Public Key Properties 对话框中,选择私钥文件“jcs-private”,点击“OK”;

 03-fig-07

e) 点击“Connect”,即可连接至云服务器。

 03-fig-08

 03-fig-09

1.3 使用 SFTP 工具上传文件


a) 使用 SecureCRT 连接至云服务器后,可以使用其集成的 SFTP 工具,向服务器上传或下载文件;

b) 点击“Launch SecureFX”按钮;

 03-fig-10

c) 在打开的 SecureFX 中,即可访问服务器文件目录,可向 /home/opc 目录中上传或下载文件;

 03-fig-11

2. 在数据库云实例创建应用程序所需的数据库表


a) 以 SecureCRT 为例,选择数据库云实例的连接 129.144.17.50,进入数据库云实例的主机环境,默认登录用户为 opc;

 03-fig-12

b) 通过 sudo –s, su – oracle 命令切换至 oracle 用户;

 03-fig-13

c) 使用 git 克隆最新的 Oracle 数据库示例数据库脚本:

Cd $HOME

git clone https://github.com/oracle/db-sample-schemas.git

 

 03-fig-14

d) 进入 db-sample-schemas 目录,修改目录配置信息,命令如下:

cd $HOME/db-sample-schemas

mkdir log

perl -p -i.bak -e 's#__SUB__CWD__#'$(pwd)'#g' *.sql */*.sql */*.dat

 

 03-fig-15

e) 通过 sqlplus 连接,运行脚本,创建相关的样例数据库,数据库的连接信息可通过数据库云实例的详细信息查看,Alpha2014_ 是数据库 sys 管理员密码,命令如下,进入 sqlplus 后,执行下命令创建相应的示例数据库对象:

sqlplus system/Alpha2014_@DEMODB:1521/PDB1.cnzxc.oraclecloud.internal

@mksample Alpha2014_ Alpha2014_ welcome1 welcome1 welcome1 welcome1 welcome1 welcome1 USERS TEMP $HOME/db-sample-schemas/log/ DEMODB:1521/PDB1.cnzxc.oraclecloud.internal

 

参数说明:@mksample system 密码 sys 密码 hr 密码 oe 密码 pm 密码 ix 密码 sh 密码 bi 密码 用户表空间 临时表空间 log 目录 连接字符串

 03-fig-16

 03-fig-17

 03-fig-18

 03-fig-19

f) 如果需要删除这些样例的数据库对象,可通过 @drop_sch.sql 进行删除。

3. 在 Java 云服务上部署应用程序


3.1 创建数据源配置 OE


a) 登录 Java 云服务的 Weblogic 管理控制台(例如:https://129.144.17.91:7002/console),并登录;

 03-fig-20

 03-fig-21

b) 在 Weblogic 管理控制台,展开“服务”,然后点击“数据源”;

 03-fig-22

c) 点击更改中心的“锁定并编辑”,开始创建数据源,点击“新建”,选择“一般数据源”;

 03-fig-23

 03-fig-24

d) 在新建 JDBC 数据源页面,名称“OE”,JNDI名称“jdbc/OE”,点击“下一步”;

 03-fig-25

e) 数据源驱动,选择“Oracle's Driver (Thin XA) for Service connections; Versions:Any”,点击”下一步“;

 03-fig-26

f) 在事务处理选项页面,点击“下一步”继续;

 03-fig-27

g) 数据库连接配置信息,填写相应的配置,可参考数据库服务实例的详细信息进行,如下图,数据库用户 OE,密码填写创建样例数据库对象时使用的密码,填写完毕,后点击“下一步”;

 03-fig-28

h) 在数据库连接测试页面,点击“测试配置”,测试成功后,点击“下一步”;

 03-fig-29

i) 在数据库连接部署目标界面,选择 adminServer 与 Cluster,点击“完成”;

 03-fig-30

j) 点击“激活更改”,完成数据源的配置。

 03-fig-31

 03-fig-32

3.2 部署应用程序


a) 使用 SFTP 工具,将要部署的应用程序上传至服务器,上传完成后,切换至 root 用户,将该应用程序部署文件,拷贝至 /home/oracle 目录,并设置相应的 oracle 用户所有权限:

cp Techco-1.0-SNAPSHOT.war /tmp/

chown oracle:oracle /tmp/Techco-1.0-SNAPSHOT.war

 

 03-fig-33

 03-fig-46

b) 在 Weblogic 管理控制台,点击“部署”,在更改中心,点击“锁定并编辑”,然后点击“安装”;

 03-fig-34

c) 在安装程序路径处,选择 /tmp,然后选择对应的应用安装程序包,点击“下一步”;

 03-fig-35

d) 将此部署安装为应用程序,点击“下一步”;

 03-fig-36

e) 部署至集群,点击“下一步”;

 03-fig-37

f) 部署配置信息保持默认,点击“下一步”;

 03-fig-38

g) 复查部署信息,点击“完成”;

 03-fig-39

h) 点击“保存”,然后“激活更改”,完成该应用的部署。

 03-fig-40

4. 测试应用程序


a) 查看已部署的应用,找到名称为“Techco-1.0-SNAPSHOT”的应用程序,可看到其状态为“准备就绪”;

 03-fig-41

b) 选中该应用,然后点击“启动”—“为所有请求提供服务”;

 03-fig-42

c) 点击“是”确认启动该应用;

 03-fig-43

d) 查看应用状态,确认该应用启动成功;

 03-fig-44

e) 通过 https://129.144.17.91/index.xhtml 访问该应用程序,可看到如下首页,说明应用程序部署运行成功。

 03-fig-45

f) 至此,我们演示了如何通过控制台的方式完成一个应用的部署,在下一篇教程《利用 Oracle 开发云构建 DevOps 中心》,我们将通过开发云来演示完成的项目任务分配、代码管理、问题追踪、持续构建、测试部署等场景。

关于作者


秦国涛,在 Oracle 负责云和中间件产品的资深售前顾问工作,已有 12 年的 IT 行业工作经验,专注在企业集成解决方案领域,熟悉业内主要的 SOA 集成产品,同时从事过数年的开发工作,对 Java、HTML、JavaScript 等编程语言也有一定的了解。平时喜欢一些轻松的运动,如乒乓球,也喜欢看小说和旅游.你可以通过邮件 guo.tao.qin@oracle.com 与他联系。

联系我们


如需进一步了解 Oracle 中间件产品及 PAAS 平台技术细节,深入了解企业 IT 建设和相关行业整体解决方案,获得 Oracle 中间件产品及 PAAS 平台技术支持,请: