[自动运维]weblogic自动发布

  近期一个项目属于测试过渡期,bug修复比较频繁,每次都会伴随着项目的打包、上传、发布,此类重复操作近乎每天都会进行,刚好最近在看python相关资料,决定重新将此前学习的weblogic的wlst相关内容重新整理一份脚本:

#!/home/weblogic/wlserver_10.3/common/bin/wlst.sh

import sys
if len(sys.argv)==2:
    appName=sys.argv[1]
    print "start connect weblogic"
    connect(‘weblogic‘,‘weblogic‘,‘t3://localhost:7001‘)
    print "===========stop "+appName+" ==============="
    stopApplication(appName)
    #edit()
    #print "========undeploy web=========="
    #undeploy(‘web‘)
    #activate()

    print "==============reploy  "+appName+"  ========"
    redeploy(appName)

    #print "=========deploy web============="
    #deploy(‘web‘,‘/home/weblogic/user_projects/domains/base_domain/servers/pweb/deploy/web‘,‘web‘)
    #activate()
    print "==========deploy "+appName+"========="
    startApplication(appName)
    exit()
else:
    print "please input the appName"

以下为逐一说明:

1、由于wlst脚本基于jyphon,但又不能直接使用python进行解析,因此需要首先定义解析器,解析器为weblogic自带脚本wlst.sh
#!/home/weblogic/wlserver_10.3/common/bin/wlst.sh

2、由于有多个项目,每次启动无法确定,因此从外部传输要启动的appName,python使用sys.argv获取外部参数,外部参数第一个固定为脚本名称,第二个开始为外部参数。因此判断是否传入appName

import sys
if len(sys.argv)==2:
    appName=sys.argv[1]

3、wlst操作weblogic需要首先登陆

connect(‘weblogic‘,‘weblogic‘,‘t3://localhost:7001‘)

4、登陆后依次进行如下操作,停止应用,重新发布,启动应用,

    stopApplication(appName)#停止应用
    redeploy(appName)#重新发布
    startApplication(appName)#启动应用

5、为了防止内存溢出,也可以采用删除应用和重新部署

    edit()#启用编辑模式
    undeploy(‘web‘) #删除应用发布
  deploy(‘web‘,‘/home/weblogic/user_projects/domains/base_domain/servers/deploy/web‘,‘web‘)#发布应用
    activate()#激活
时间: 2025-01-15 13:34:33

[自动运维]weblogic自动发布的相关文章

[自动运维]oracle自动备份

数据是应用的核心部分,程序坏了换台机器重新发布就可以,但数据一旦丢失,造成的损失将不可挽回,程序发布到生产后,数据的备份便显得尤为重要,由于不一定所有的服务均有资金完成高级的备份如RAC和DG,在我们只有一台数据库服务器的,暂时采取最简单的备份策略,export出dmp进行保存. 一.备份脚本 1.初始化变量,记录开始日志 #变量 sysname=填写自己的系统名称 syspath=/home/oracle/databak/$sysname v_date=$(date '+%Y%m%d%H%M%

基于开源打造智能云上自动运维

自动化能自动化的一切 然后介绍了使用Terraform和Packer开源工具完成云上自动运维的具体实现过程 云上自动化资源架构和变更实践 https://yq.aliyun.com/articles/218891?spm=5176.100239.blogcont159008.36.Vzs09S 如何用开源工具进行Multi-Cloud的自动化资源架构和变更? DevOps和基础设施自动化 据数据统计,在2015年DevOps的被采纳率是66%,而到了2016年就达到了74%,在这短短的一年间增加

Windows服务器Pyton辅助运维--01.自动Copy文件(文件夹)到远程服务器所在目录

Windows服务器Pyton辅助运维 01.自动Copy文件(文件夹)到远程服务器所在目录 开发环境: u  Web服务器: Windows Server 2008 R2 SP1 IIS 7.5 u  运维服务器: Python 2.7.8 组件:pywin32(219)  wmi(1.4.9) 工作内容说明: 生产环境中有很多台Web服务器,均为IIS环境,每次开发人员都提供站点补丁包给我进行系统升级,我需要将这些补丁包更新到所有Web服务器的指定目录下以完成系统更新的工作. 实现过程: 整

写了一款自动运维监控工具

AisinGioro 是一款自动运维监控工具,用于监控主机性能参数(心跳.CPU.内存.硬盘.网站连接数).网络连通性(Ping.Port.Http).监控异常通知,基于B/S架构,主要技术 .Net/C#, SignalR, OWIN, AngularJs, Bootstrap,欢迎下载使用,或进行二次开发. 开发环境 Visual Studio 2015, .Net Framework 4.6.1 项目分支介绍 AisinGiroro.Core 基础库 C# Library AisinGio

自动运维模块批量监控linux主机

1.修改linux agent解压即用包用解压缩软件打开zabbix_linux_agent.zip并进入到以下目录: 右键install_zabbix_linux_agent.sh 选择 在记事本打开,在参数区找到Agent_Server参数,并且值改为zabbix服务器的地址.结果如下图: 保存并更新到压缩包中: 2.自动运维模块添加主机管理操作步骤:自动运维->主机管理->新增信息填写:分组名:Linux ,主机名:192.168.1.10 ,IP:192.168.1.10 ,操作系统:

Linux自动运维工具Ansible的使用

Linux自动运维工具Ansible的使用 我们熟悉这个工具后, 可以很轻松的安装k8s. 一.介绍 ansible - run a task on a target host(s) Ansible是一个用Python开发的运维工具, 可以在本地让远程主机执行命令, 项目地址: Github源码, 中文文档 二.安装 简单上阵, 我们的主机都是ubuntu, 请使用root用户: sudo su apt install ansible ansible --version 配置文件: ls /et

自动运维工具 -saltstack安装使用(实例演示!!!)

saltstack概述 在生产环境中,服务器往往不止一两台,一般都是成千上万台服务器.这对运维人员来说管理难度太大了,而saltstack是一个新的基础平台管理工具,可以支持管理上万台服务器规模,数秒钟即可完成数据传递,是现在用的比较多的自动化运维工具之一. Salt是一个基础平台管理工具.SaltStack采用 C/S模式,server端就是salt的master,client端就是minion,minion与master之间通过ZeroMQ消息队列通信.master监听4505和4506端口

数据中心的自动运维之路

自动化运维其实也算是老生常谈,一谈谈了十几年,但却一直没有质的提升.数据中心的运维工作反而变得越来越繁重与复杂,当然这和这些年数据中心巨大的变化紧密相关,数据中心承载的各种应用越来越多,运维工作也变得异常复杂,简单的自动化运维已经不能彻底解决数据中心运维工作效率低下的问题.以前,数据中心运维人员就像流水线上的一名工人,不断重复地做着同样的工作,枯燥又容易出错,自动化运维就是要引入一些工具,通过这些工具来替代运维人员来工作,从而减少人力成本,同时提升数据中心的运维水平. 那么自动化运维,其实就是向

ansible自动运维工具之ansible-playbook详解

本博文衔接上篇:Ansible自动化运维的安装及常用模块解释 一.Playbook简介 playbook配置文件使用YAML语法,具有简洁明了.结构清晰等特点.playbook配置文件类似于shell脚本,是一个YAML格式的文件,用于保存针对特定需求的任务列表.上面介绍的ansible命令虽然可以完成各种任务,但是当配置一些复杂任务时,逐条输入就显得效率非常低下了.更有效的方案是在playbook配置文件中放置所有的任务代码,利用ansible-playbook命令执行该文件,可以实现自动化运