一、Weblogic概述
(1)Weblogic是什么
- Weblogic是美国Oracle公司出品的一个application server(应用服务器),和tomcat一样是一个web的中间件,Weblogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的java应用服务器
- Weblogic将java Enterprise(java公司)标准的安全性引入大型网络应用的开发、集成、部署和管理之中
- weblogic和tomcat同样都是java开发的,也就是说作为中间件同样是用来解析jsp动态页面的
- Weblogic到2021年5月25号为至最新版本为14C(14.1.1.0),下载官网:https://www.oracle.com/cn/middleware/technologies/weblogic-server-downloads.html
- weblogic是付费的
(2)Weblogic的优点
Weblogic server具有开发和部署关键任务(电子商务web应用系统)所需的多种特色和优势
- 标准:
对业内多种标准的全面支持,包括EJB、JSP、Servlet、JMS、JDBC、XML和WML,这样使得Web应用系统的实施更为简单,并且保护了投资,同时也使基于标准的解决方案的开发更为简捷
- 可扩展性:
Weblogic Server以其高扩展的架构体系闻名于业内,包括客户机连接的共享、资源pooling以及动态网页和EJB组件群集
- 快速开发:
凭借对EJB和JSP的支持、以及Weblogic Server组件架构体系,使得Weblogic可以加速投放市场速度,这些开放性标准与WebGain Studio配合时,可以简化开发,并且可以发挥已有的技能,迅速部署应用系统
(3)Weblogic和Tomcat的对比
weblogic支持EJB (远程调用java bean,代码性共享更强,成熟性更高) ,Tomcat不支持EJB,但是两者都支持webservice (SOAP或者HTTP)
weblogic支持集群机制,支持分布式的应用,而Tomcat不支持 (Tomcat是开源的,所以会有支持群集的tomcat,而官网的是不支持的)
weblogic是收费的,所以有完善的售后,Tomcat由于是开源的所以是没有售后的,主要是靠论坛社区等进行维护
weblogic控制台进行组件支持jdbc (jdbc是一种用于执行SQL语句的Java API) 、管理和配置,而Tomcat不支持
weblogic支持热部署,Tomcat不支持
(4)Weblogic的一些相关术语
通过JNDI接口,可以访问目录服务
通过JDBC接口可以访问数据库
通过JMX接口,可以管理其他设备 (也就是管理其他设备的接口)
JMS接口,可以接收、发送消息
RMI-IIOP接口,可以访问另外的网络服务web service
通过JTA接口,可以做分布式事务的处理
JAAS:认证和授权
JNDI:把用户写好的一个主键或资源,拿出来放到网络上,暴露到外界,使网络上的其他程序可以通过JNDI访问这个主键或资源
Web client:包括浏览器(browser),web service(SOAP或者HTTP)
防火墙:过滤认证和授权服务,可以杜绝一些恶意攻击,可以做端口映射,可以完成代理服务器的功能
(5)Weblogic角色相关
- Domain:这是一个逻辑相关的由多个Weblogic server组成的一个组,也称之为域。想要使用Weblogic就必须创建域
- Weblogic.server:是执行在JVM上的,因为Weblogic是由java开发的
- Admin Server:是一个Domain的中心控制台,通过网页访问,管理Domain。Admin Server也可以部署业务程序。一个域只能有一个Admin Server
- Managed Server:受管服务器,主要运行业务程序,也就是被在Domain中被Admin Server管理的机器。部署的项目在Managed Server上部署,并且Managed Server是直接对外提供web服务的
- Cluster:是Weblogic的集群,群集可以配置多个Managed Server,可以进行统一的配置和部署
- Machine:物理计算机的逻辑表示,一个Machine可以运行一个或多个Managed Server
- Node Manager:节点服务器,这是一个部署在Managed Server上的后台程序,Admin Server就是通过Machine(计算机)连接Node Manager(节点服务器),并且远程控制Managed Server的启动关闭等
默认监听端口7001
下载地址:https://www.oracle.com/cn/middleware/technologies/weblogic-server-downloads.html
二、部署Weblogic
(1)实验环境
系统 | 主机名 | ip | 使用软件 |
Centos7.4 | weblogic | 192.168.100.203 桥接网卡(需要两块网卡) | jdk-8u181-linux-x64.tar.gz weblogic12C |
(2)实验步骤
做的时候要注意在不同用户上做操作
-部署weblogic
******(1)先做基础配置,修改监视器256z [root@Centos7 ~]# hostnamectl set-hostname weblogic [root@Centos7 ~]# su [root@weblogic ~]# systemctl stop firewalld [root@weblogic ~]# setenforce 0 setenforce: SELinux is disabled [root@weblogic ~]# mount /dev/cdrom /mnt/ mount: /dev/sr0 写保护,将以只读方式挂载 mount: /dev/sr0 已经挂载或 /mnt 忙 /dev/sr0 已经挂载到 /mnt 上 ******(2)使用root用户安装依赖包,创建weblogic用户 [root@weblogic ~]# yum -y install libXext libXrender libXtst 。。。。。。 完毕! [root@weblogic ~]# groupadd weblogic #要注意安装weblogic12C需要使用weblogic用户安装 [root@weblogic ~]# useradd -g weblogic weblogic [root@weblogic ~]# passwd weblogic 更改用户 weblogic 的密码 。 新的 密码: 无效的密码: 密码少于 8 个字符 重新输入新的 密码: passwd:所有的身份验证令牌已经成功更新。 ******(3)新建一个终端使用新创建的用户登录,然后上传两个软件包 [weblogic@weblogic ~]$ ll #注意使用wenlogic用户上传 总用量 770048 -rw-rw-r-- 1 weblogic weblogic 607157854 5月 26 19:28 fmw_12.2.1.4.0_wls_lite_Disk1_1of1.zip -rw-rw-r-- 1 weblogic weblogic 181367942 5月 26 19:28 jdk-8u91-linux-x64.tar.gz ******(4)安装jdk [weblogic@weblogic ~]$ tar xf jdk-8u91-linux-x64.tar.gz [weblogic@weblogic ~]$ mv jdk1.8.0_91/ java [weblogic@weblogic ~]$ vim .bashrc #编辑环境变量 1 # .bashrc 2 3 # Source global definitions 4 if [ -f /etc/bashrc ]; then 5 . /etc/bashrc 6 fi 7 8 # Uncomment the following line if you don't like systemctl's auto-paging feature: 9 # export SYSTEMD_PAGER= 10 11 # User specific aliases and functions 12 export JAVA_HOME=/home/weblogic/java 13 14 export PATH=.:$JAVA_HOME/bin:$PATH 15 16 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar #保存退出 [weblogic@weblogic ~]$ source .bashrc #使环境变量生效 [weblogic@weblogic ~]$ java -version #查看java版本号,确认已经安装 java version "1.8.0_91" Java(TM) SE Runtime Environment (build 1.8.0_91-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode) ******(5)安装weblogic,创建响应文件wls.rsp(自动应答文件),文件中的项一定要写全,否则会报错 [weblogic@weblogic ~]$ vim wls.rsp #里面的内容,必须要把每个字段的最后的“空白”删除,不然安装时会报错 [ENGINE] Response File Version=1.0.0.0.0 #安装版本 [Generic] ORACLE_HOME=/home/weblogic/oracle #安装路径 INSTALL_TYPE=WebLogic Server #安装类型 MYORACLESUPPORT_USERNAME= #Oracle的用户名,可以为空 MYORACLESUPPORT_PASSWORD=<SECURE VALUE> #Oracle的密码,可以为空 DECLINE_SECURITY_UPDATES=true SECURITY_UPDATES_VIA_MYORACLESUPPORT=false PROXY_HOST= #代理服务器地址,可以为空 PROXY_PORT= #代理服务器端口,可以为空 PROXY_USER= #代理服务器用户名,可以为空 PROXY_PWD=<SECURE VALUE> #代理服务器密码,可以为空 COLLECTOR_SUPPORTHUB_URL= #保存退出 ———————————————————————————————————————— 重要的就是三个选项,版本、安装路径、安装类型 ———————————————————————————————————————— ******(6)创建loc清单文件oralnst.loc [weblogic@weblogic ~]$ vi oralnst.loc 1 inventory_loc=/home/weblogic/oraInventory #首次安装Oracle公司产品的软件需要创建产品清单目录,要注意安装时可以这里会报错无效字符,把这段的最后的“空白”删除即可 2 inst_group=weblogic #安装weblogic 12C的组的名称,就是一开始创建的weblogic组 #保存退出 ******(7)安装weblogic [weblogic@weblogic ~]$ mkdir oracle #新建weblogic安装目录 [weblogic@weblogic ~]$ unzip fmw_12.2.1.4.0_wls_lite_Disk1_1of1.zip #解压weblogic的压缩包 [weblogic@weblogic ~]$ ll #有一个.jar的文件 总用量 1363276 -rw-rw-r-- 1 weblogic weblogic 607157854 5月 26 2021 fmw_12.2.1.4.0_wls_lite_Disk1_1of1.zip -rw-r--r-- 1 weblogic weblogic 607441954 7月 22 2020 fmw_12.2.1.4.0_wls_lite_generic.jar -rw-r--r-- 1 weblogic weblogic 10185 7月 22 2020 fmw_12214_readme.html drwxr-xr-x 8 weblogic weblogic 255 4月 1 2016 java -rw-rw-r-- 1 weblogic weblogic 181367942 5月 26 2021 jdk-8u91-linux-x64.tar.gz drwxrwxr-x 2 weblogic weblogic 6 5月 26 13:58 oracle -rw-rw-r-- 1 weblogic weblogic 64 5月 26 13:56 oralnst.loc -rw-rw-r-- 1 weblogic weblogic 367 5月 26 13:55 wls.rsp [weblogic@weblogic ~]$ java -jar fmw_12.2.1.4.0_wls_lite_generic.jar -silent -responseFile /home/weblogic/wls.rsp -invPtrLoc /home/weblogic/oralnst.loc -ignoreSysprereqs #安装 。。。。。。 完成百分比: 10 完成百分比: 20 完成百分比: 30 完成百分比: 40 完成百分比: 50 完成百分比: 60 完成百分比: 70 完成百分比: 80 完成百分比: 90 完成百分比: 100 Oracle Fusion Middleware 12c WebLogic Server 和 Coherence 12.2.1.4.0 的 安装 已成功完成。 日志已成功复制到/home/weblogic/oraInventory/logs。 ------------------------------------------- 安装选项注释: -silent:表示使用静默方式进行安装 -responseFile:指定响应文件的路径,就是上面的自动应答文件,.rsp的文件 -invPtrLoc:指定安装清单的路径,.loc的文件 -ignoreSysprereqs:忽略一些输出,这个选项可加可不加 ------------------------------------------- ******(8)创建新的domain域 [weblogic@weblogic ~]$ cd /home/weblogic/oracle/wlserver/common/bin/ [weblogic@weblogic bin]$ ll 总用量 68 -rwxr-x--- 1 weblogic weblogic 583 8月 14 2019 config.sh #这个文件就是用来创建域的 -rwxr-x--- 1 weblogic weblogic 578 8月 14 2019 pack.sh -rwxr-x--- 1 weblogic weblogic 582 8月 14 2019 unpack.sh -rwxr-x--- 1 weblogic weblogic 35686 2月 13 2019 wlscontrol.sh -rwxr-x--- 1 weblogic weblogic 16286 8月 27 2014 wlsifconfig.sh -rwxr-x--- 1 weblogic weblogic 807 8月 14 2019 wlst.sh [weblogic@weblogic bin]$ export LANG=en_US #创建域之前先修改一下字符编码,不修改会出现乱码 [weblogic@weblogic bin]$ ./config.sh -model=console #执行config.sh启动创建域的程序,这里使用的是xshell,正常情况下会弹一个应用框,不弹的话可以先把机器重启一下,还不行的话可以安装图形化界面 ******(9)如果不行的话,就安装图形化界面 [root@weblogic ~]# yum groupinstall -y "GNOME Desktop" 。。。。。。 完毕! [root@weblogic ~]# init 6 #重启服务器 #安装完重启系统,再次使用weblogic用户登录,然后执行./config.sh -model=console即可
至此weblogic安装完成
-创建新域
会弹出一个应用程序框
选择“创建新域”,路径就默认的就行,点击下一步
-使用weblogic启动domain
******(1)启动domain,要注意要使用weblogic用户 [weblogic@weblogic ~]$ cd /home/weblogic/oracle/user_projects/domains/base_domain/bin/ #cd到这个目录 [weblogic@weblogic bin]$ ll 总用量 76 -rwxr-x--- 1 weblogic weblogic 2653 5月 26 15:59 generateArchive.sh drwxr-x--- 2 weblogic weblogic 27 5月 26 15:59 nodemanager drwxr-x--- 2 weblogic weblogic 61 5月 26 15:59 patching -rwxr-x--- 1 weblogic weblogic 2486 5月 26 15:59 restartComponent.sh drwxr-x--- 2 weblogic weblogic 28 5月 26 15:59 server_migration drwxr-x--- 2 weblogic weblogic 24 5月 26 15:59 service_migration -rwxr-x--- 1 weblogic weblogic 14969 5月 26 15:59 setDomainEnv.sh -rwxr-x--- 1 weblogic weblogic 892 5月 26 15:59 setNMJavaHome.sh -rwxr-x--- 1 weblogic weblogic 794 5月 26 15:59 setStartupEnv.sh -rwxr-x--- 1 weblogic weblogic 2476 5月 26 15:59 startComponent.sh -rwxr-x--- 1 weblogic weblogic 2804 5月 26 15:59 startManagedWebLogic.sh -rwxr-x--- 1 weblogic weblogic 1119 5月 26 15:59 startNodeManager.sh -rwxr-x--- 1 weblogic weblogic 701 5月 26 15:59 startRSDaemon.sh -rwxr-x--- 1 weblogic weblogic 7304 5月 26 15:59 startWebLogic.sh -rwxr-x--- 1 weblogic weblogic 2140 5月 26 15:59 stopComponent.sh -rwxr-x--- 1 weblogic weblogic 2655 5月 26 15:59 stopManagedWebLogic.sh -rwxr-x--- 1 weblogic weblogic 1063 5月 26 15:59 stopNodeManager.sh -rwxr-x--- 1 weblogic weblogic 843 5月 26 15:59 stopRSDaemon.sh -rwxr-x--- 1 weblogic weblogic 2130 5月 26 15:59 stopWebLogic.sh [weblogic@weblogic bin]$ ./startWebLogic.sh #开启域 . . JAVA Memory arguments: -Xms256m -Xmx512m . CLASSPATH=/home/weblogic/java/lib/tools.jar:/home/weblogic/oracle/wlserver/server/lib/weblogic.jar:/home/weblogic/oracle/wlserver/../oracle_common/modules/thirdparty/ant-contrib-1.0b3.jar:/home/weblogic/oracle/wlserver/modules/features/oracle.wls.common.nodemanager.jar::/home/weblogic/oracle/wlserver/common/derby/lib/derbynet.jar:/home/weblogic/oracle/wlserver/common/derby/lib/derbyclient.jar:/home/weblogic/oracle/wlserver/common/derby/lib/derby.jar:.:/home/weblogic/java/lib/dt.jar:/home/weblogic/java/lib/tools.jar . PATH=/home/weblogic/oracle/user_projects/domains/base_domain/bin:/home/weblogic/oracle/wlserver/server/bin:/home/weblogic/oracle/wlserver/../oracle_common/modules/thirdparty/org.apache.ant/1.10.5.0.0/apache-ant-1.10.5/bin:/home/weblogic/java/jre/bin:/home/weblogic/java/bin:.:/home/weblogic/java/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/weblogic/.local/bin:/home/weblogic/bin . *************************************************** * To start WebLogic Server, use a username and * * password assigned to an admin-level user. For * * server administration, use the WebLogic Server * * console at http://hostname:port/console * *************************************************** Starting WLS with line: /home/weblogic/java/bin/java -server -Xms256m -Xmx512m -cp /home/weblogic/oracle/wlserver/server/lib/weblogic-launcher.jar -Dlaunch.use.env.classpath=true -Dweblogic.Name=AdminServer -Djava.security.policy=/home/weblogic/oracle/wlserver/server/lib/weblogic.policy -Dweblogic.ProductionModeEnabled=true -Djava.system.class.loader=com.oracle.classloader.weblogic.LaunchClassLoader -javaagent:/home/weblogic/oracle/wlserver/server/lib/debugpatch-agent.jar -da -Dwls.home=/home/weblogic/oracle/wlserver/server -Dweblogic.home=/home/weblogic/oracle/wlserver/server weblogic.Server 。。。。。。 <2021-5-26 下午04时02分48秒 CST> <Info> <Security> <BEA-090065> <Getting boot identity from user.> Enter username to boot WebLogic server:weblogic #这里的用户名、密码添加刚才创建域时写的,用户名为weblogic Enter password to boot WebLogic server: #密码为123456789abc! #每次重新启动都需要重新输入用户名,并且开启时间较长,而且还不能终端
-使用客户端访问weblogic
访问192.168.100.203:7001/console