J-one 信息配置

信息配置

在首页点击该应用,将会跳转到该应用的工作区,,在左侧树点击信息总览,即可进行信息配置。

信息配置是实现一个应用发布上线的前提条件;包含:基本信息编译配置测试配置,以及部署配置

基本信息

即,应用信息,在应用申请时将会把该信息填写完毕,并同步过来;

当应用信息在申请时,填写错误,应用负责人可在基本信息处,点击编辑,修改相应的内容。

编译

编译配置是在工作区中编译的前提条件,需要将该配置配置完成后,在工作区界面才可以执行编译。

编译环境:根据应用的实际情况,填写所需的编译环境信息。

源码地址:填写程序代码所存放的url地址。

是否支持JDF:仅支持静态资源类型

编译地址:即为应用的英文名称。

编译命令:根据应用的实际情况,选择所使用的命令。

编译参数:包含上线包编译参数和测试包上线参数;如果有依赖关系的地址,点击新增依赖地址,即可添加相应的信息。

邮件通知:选择是否需要编译完成后,将结果通知到相应的成员。

抽包地址:选择所需要编译的包地址信息;如果包地址无法选择,点击获取抽包地址即可,然后点击框框,选择抽包地址。

测试

在提交测试前需要对测试信息进行配置,目前主要包含:功能测试和安全测试。

性能测试 填写功能测试人员的erp信息以及邮箱信息。
安全测试

是否需要安全测试,是由安全部门确定,如果是对外的域名,必须进行安全测试。

填写以下相关信息:

  • 安全测试链接地址:
  • 安全测试host信息:需要测试的host信息
    目前仅支持一个host信息(必须是测试host) 
  • 安全测试是否需要登录:选择是否使用用户名和密码登录host主机进行安全测试 
  • 安全测试登录用户名: 即,为登录安全测试host主机的用户名(选填项)
  • 安全测试登录密码: 即,为登录安全测试host主机的密码(选填项)

PS:如果host主机设置了登录用户名和密码,建议此处填写,防止安全测试时,调用不通,导致安全测试无法进行。

部署

部署配置阶段是应用发布上线的前提条件,主要包含以下几个方面的配置信息;

如果想对相应的配置信息进行编辑,点击右侧编辑按钮,即可进入编辑状态。

全局环境配置

主要配置变量和脚本文件两个方面的信息:

变量配置:根据应用的实际情况在新增/修改配置下拉框中,选择相应的变量信息,配置参数。

脚本文件:目前不支持编辑,仅可查看。

分组配置 分组信息在发布部署前是必选项。
主机配置

主机配置信息与cap保持一致;

若需申请弹性资源,点击机器申请--cap弹性云,跳转到cap系统填写相应的申请流程即可;若cap端机器已经申请完毕,但是未同步到该界面,联系运维,在信息总览--部署--主机,点击同步CAP机器即可。

如需申请物理机,点击机器申请--cmdb物理机,根据提示,到cmdb系统填写相应的申请流程即可,申请完毕后,cmdb会自动同步到j-one系统。

若需要对该主机添加相应的配置,点击主机配置,在新增/修改配置下拉框中,选择相应的变量信息,配置参数。

若修改机器的所属分组,直接操作批量移动分组

实例配置 在实例配置界面,可以进行相应的新增实例删除实例编辑实例及配置实例,批量添加实例等操作。

 

基本信息

 

应用信息,在应用申请时将会把该信息填写完毕,并同步过来;

当应用信息在申请时,填写错误,系统负责人和应用负责人可在基本信息处,点击编辑,修改相应的内容。

应用负责人对该应用有绝对的编辑权和控制权,可以对该应用的基本信息进行编辑修改。

应用名称

英文,全局唯一,不能包含特殊字符

注:申请后,不能修改

应用中文名 不能包含特殊字符,应用负责人可以对此进行相应的修改
所属系统

输入系统名称,支持模糊匹配

注:此处所选择的所属系统,后续提交上线计划时,将会提交到相应的系统负责人进行审批

系统负责人和应用负责人可以对应用修改所属系统

应用域名

该域名是是从np同步到j-one的,需要到np申请,申请的注意事项见链接:

应用类型

主要有以下类型:

应用负责人

根据erp或者姓名选择负责人;权限如下:

  • 编辑修改应用的基本信息(包括选择所属系统)
应用组成员 根据erp或者姓名选择,可添加多个
所属部门 默认应用负责人所属部门,无需填写
业务类型

为区分编译包上传不同的云存储环境,主要有以下类型:

注:默认使用私有云,无需纠结,主要是解决印尼机房下载失败的问题。

备注 选填,可以对应用进行相应的描述

 

测试

 

在提交测试前需要对测试信息进行配置,目前主要包含:功能测试和安全测试。

功能测试

填写功能测试人员的erp信息以及邮箱信息。

PS:测试人员必须登录过j-one。

如何关闭功能测试请参考:13、如何将提测设置成自测? 

安全测试

是否需要安全测试,是由安全部门确定;目前需要安全测试的有以下两类应用:

  • 所属系统是0,1级系统的应用;
  • 所属系统为2,3级系统,但是对外的域名,或者安全中心认为需要安全测试的应用;

填写以下相关信息:

  • 安全测试链接地址:比如:http://j-one.jd.com
  • 安全测试host信息:需要测试的host信息,比如:10.0.0.1 j-one.jd.com
    目前仅支持一个host信息(必须是测试host) 
  • 安全测试是否需要登录:选择是否使用用户名和密码登录host主机进行安全测试 
  • 安全测试登录用户名: 即,为登录安全测试host主机的用户名(选填项)
  • 安全测试登录密码: 即,为登录安全测试host主机的密码(选填项)

PS: 如果host主机设置了登录用户名和密码,建议此处填写,防止安全测试时,调用不通,导致安全测试无法进行。

编译

 

编译配置是在工作区中编译的前提条件,需要将该配置配置完成后,在工作区界面才可以执行编译。

编译模板

 编译环境

根据应用的实际情况,填写所需的编译环境信息。

java maven
C++/GO语言 MAKE
静态资源 STATIC


源码地址

填写程序代码所存放的url地址。

编译地址

根据应用源码所需要编译的地址,可能是应用的英文名称。

编译命令(只适用于maven编译环境

根据应用的实际情况,选择所使用的命令。

编译参数只适用于maven编译环境

包含上线包编译参数和测试包上线参数;如果有依赖关系的地址,点击新增依赖地址,即可添加相应的信息。

环境变量列表(只适用于自定义编译环境:MAKE/.net

此处无需操作。

邮件通知

选择是否需要编译完成后,将结果通知到相应的成员。

是否支持JDF只适用于静态资源

选择是否需要支持JDF,关于JDF的相关说明,请查看:http://baike.baidu.com/view/399188.htm

抽包地址适用于maven和静态资源

选择所需要编译的包地址信息;如果包地址无法选择,点击获取抽包地址即可,然后点击框框,选择抽包地址。

自定义命令(只适用于自定义编译环境:MAKE/.net

研发自行填写编译命令

注意:C++类型的编译,需要添加如下命令:

工作区/.build/online

工作区/.build/test

工作区/.build/build 

部署

[ 配置文件 ] [ TOMCAT类型配置 ] [ 脚本文件 ] [ 自定义脚本变量 ]


配置文件

点击信息总览--部署--分组,选择某个分组,点击配置文件按钮,即可添加相应的配置文件;

注意:

  • 配置文件是以分组为维度的
  • 目前配置文件支持的格式:xml,properties,json,cfg,lua,conf,yml,ini

目前仅支持以上格式的配置,其他格式,建议放在代码中

  • 预发分组的配置文件不可以克隆正式分组的文件
  • 不可以跨应用克隆

important文件的授权如下

  1. 找到important.properties 文件(J-ONE应用-信息总览--部署--分组配置--important.properties) ;如果没有这个文件,自己创建一个

    说明:
    1. 该应用若是首次申请dba授权,授权完成后(申请链接:http://dbsv3.jd.com/flow/ApplicationAuthorization/),应用负责人 会收到包含用户名和密码的邮件通知。
    2. 分库类型申请权限,申请完成将不会收到用户名和密码的邮件。分库的权限申请账号密码不变,只需要修改连接的URL。
    3. 该应用非首次授权,或者是新建分组后,研发同事可以自行到相同配置的分组配置中,找到important文件,点击查看,copy相应的配置项,添加即可。(支持批量copy)
    4. 如果无important.properties文件,点击新增配置文件,新增important文件,新增时,先将“test=test”文本添加到配置中(取值类型选择:原始的字符串),点击保存,然后点击编辑,将该条记录删除,根据步骤2添加真实配置即可;
    5.  
  2. 点击编辑,点击新增配置后界面如下,选择取值类型为【需解密的字符串】,将所需要配置的配置项添加到配置项,
    说明:
    1. 支持配置项的批量操作;
    2. 多配置项以回车换行符进行分割
    3. 格式如下:比如加密后的文本为“password=asdsfdfg”,将“password=asdsfdfg”直接添加到配置项中即可
  3. 添加完成后,需发布操作,配置文件方可生效。

TOMCAT类型配置

TOMCAT类型的配置分方式:多层分级配置,实现了灵活的实例设置, 配置的优先级:实例>主机>分组>全局环境 ;

该功能研发可以自行配置,无需运维操作。下表是针对添加的配置信息进行说明:

JDK版本

目前支持以下版本:

  • JDK1.6.0_25
  • JDK1.7.0_71
  •   JDK1.8.0_20
  •   JDK1.8.0_45
  •   JDK1.8.0_51
  • JDK1.8.0 _60

在j-one选择JDK版本的 前提 :需要在目标机器上安装相应的jdk版本。

在主机,分组,全局环境均可设置JDK版本,

如果出现JDK版本不一致的情况请逐级检查:

相应的报错如下:

default_env.sh

路径: /export/Instances/<APP KEY>/server1/ default_env.sh

 TOMCAT版本

目前支持以下版本:

  • TOMCAT6.0.33
  • TOMCAT6.0.44
  • TOMCAT7.0.61
  • TOMCAT7.0.57
  • TOMCAT8.0.24
  •   TOMCAT8.0.26
  • TOMCAT8.0.30

在j-one选择TOMCAT版本的 前提 :需要在目标机器上安装相应的TOMCAT版本。

在主机,分组,全局环境均可设置TOMCAT版本;

如果出现TOMCAT版本不一致的情况请逐级检查:

相应的报错如下:

default_env.sh

路径: /export/Instances/<APP KEY>/server1/ default_env.sh

TOMCAT最大线程

根据实际情况填写

只有首次发布生效,后续调整请联系运维修改server.xml文件

后续发布将不会覆盖该文件

在实例,主机,分组,全局环境均可设置;

如果出现不一致的情况请根据优先级逐级检查;

server.xml中的 maxThreads字段

路径: /export/Instances/<APP KEY>/server1/conf/server.xml

TOMCAT最大备用线程

根据实际情况填写

只有首次发布生效,后续调整请联系运维修改server.xml文件

后续发布将不会覆盖该文件

在实例,主机,分组,全局环境均可设置;

如果出现不一致的情况请根据优先级逐级检查;

server.xml中 的maxSpareThreads 字段

路径: /export/Instances/<APP KEY>/server1/conf/server.xml

TOMCAT最小备用线程

根据实际情况填写

只有首次发布生效,后续调整请联系运维修改server.xml文件

后续发布将不会覆盖该文件

在实例,主机,分组,全局环境均可设置;

如果出现不一致的情况请根据优先级逐级检查;

server.xml中 的minSpareTHreads 字段

路径: /export/Instances/<APP KEY>/server1/conf/server.xml

TOMCAT排队请求个数

根据实际情况填写

只有首次发布生效,后续调整请联系运维修改server.xml文件

后续发布将不会覆盖该文件

在实例,主机,分组,全局环境均可设置;

如果出现不一致的情况请根据优先级逐级检查;:

server.xml中 的acceptCount 字段

路径: /export/Instances/<APP KEY>/server1/conf/server.xml

TOMCAT URI 编码

分为一下两种:GBK,UTF-8

只有首次发布生效,后续调整请联系运维修改server.xml文件

后续发布将不会覆盖该文件

在实例,主机,分组,全局环境均可设置;

如果出现不一致的情况请根据优先级逐级检查;

server.xml中 的URIEncoding 字段

路径:  /export/Instances/<APP KEY>/server1/conf/server.xml

TOMCAT语言编码 默认是:zh_CN.UTF-8

在实例,主机,分组,全局环境均可设置;

如果出现不一致的情况请根据优先级逐级检查;

default_env.sh中的LANG字段

路径: /export/Instances/<APP KEY>/server1/ default_env.sh

 JVM初始化内存(单位:M) 根据实际情况填写

在实例,主机,分组,全局环境均可设置;

如果出现不一致的情况请根据优先级逐级检查;

default_env.sh中的Xms 字段

路径: /export/Instances/<APP KEY>/server1/ default_env.sh

JVM最大内存(单位:M) 根据实际情况填写

在实例,主机,分组,全局环境均可设置;

如果出现不一致的情况请根据优先级逐级检查;

default_env.shXmx 字段

路径: /export/Instances/<APP KEY>/server1/ default_env.sh

JVM最大非堆内存(单位:M) 根据实际情况填写

在实例,主机,分组,全局环境均可设置;

如果出现不一致的情况请根据优先级逐级检查;

default_env.sh中的 XX:MaxPermSize 字段

路径: /export/Instances/<APP KEY>/server1/ default_env.sh

其它 jvm 启动参数 根据实际情况填写 该配置信息将会记录在线上文件default_env.sh中

default_env.sh

路径: /export/Instances/<APP KEY>/server1/ default_env.sh

启动检查URL 如果填写了该URL地址,在发布过程中,将会检测该地址的正确性。检查失败会自动将Nginx置为down。

相关报错信息如下:

报错提示:启动实例阶段:checkurlreturnstatusisNOTHTTP200intime30sec

 
是否需要域名 如有不需要域名访问,可以将此处设置为否,在进行发布的时候,即不会对域名进行检测

相关报错信息如下:

为什么域名已经解析完毕,但是同步不到j-one?

 
部署过程自动重启Nginx 如果设置成否,在部署过程中将不会执行Nginx重启操作    
包以外网的方式下载 主要针对于公有云和国外印尼的应用进行设置的    
deploy的实例路径

此配置只可以在实例基本进行配置,是为兼容deploy所设置的选项;

如果已经在j-one发布过,该选项可以删除

 
Nginx文件名

此配置只可以在实例基本进行配置;

  • 如果配置了该项,首次创建Nginx文件时,将以此名称为Nginx的文件名,
  • 如果没有设置,将默认使用应用名为Nginx的文件名

相关报错信息如下:

为什么修改Nginx配置文件时,报查询Nginx信息失败?

 

脚本文件

点击信息总览--部署--全局环境,选择脚本文件页签,即可添加相应的脚本;

目前支持7种脚本的添加,编辑与删除。

env.sh 默认脚本 可以将环境变量添加到该文件中,并在启动脚本中添加相应的逻辑关系。
start_before.sh 启动前脚本

设置在启动前所要实现的逻辑关系,可以在该脚本中添加;

发布过程中出现的相关问题如下:

start_after.sh 启动后脚本 设置在启动后所要实现的逻辑关系,可以在该脚本中添加
stop_before.sh 停止前脚本 设置在停止前所要实现的逻辑关系,可以在该脚本中添加
stop_after.sh 停止后脚本 设置在停止后所要实现的逻辑关系,可以在该脚本中添加
update_before.sh 更新前脚本 设置在更新前所要实现的逻辑关系,可以在该脚本中添加
update_after.sh 更新后脚本 设置在更新后所要实现的逻辑关系,可以在该脚本中添加

自定义脚本变量

添加自定义脚本时,在判断逻辑中,一定要输出错误码:成功 exit 0,失败 exit 1,否则出错后无结果会影响脚本生效情况!!!

J-ONE自定义脚本变量

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

#!/bin/bash

#path

export def_task_type=1

#def开头变量为兼容老的hook脚本

export def_app_id="284"

export def_app_name="pop-vender-center"

export def_app_domain="seller.soa.pop.360buy.com"

export

def_app_deploy_path="/export/Packages/pop-vender-center/20170406165340_1491533641455/"

export def_instance_id="239618"

export def_instance_name="server1"

export def_instance_path="/export/Instances/pop-vender-center/server1"

export def_host_ip="10.191.60.8"

#TOMCAT参数

unset LC_ALL

export LANG="zh_CN.UTF-8"

export CATALINA_HOME="/export/servers/tomcat6.0.33"

export CATALINA_BASE="/export/Instances/pop-vender-center/server1"

export CATALINA_PID="$CATALINA_BASE/work/catalina.pid"

export

CATALINA_LOG_FILE="/export/Instances/pop-vender-center/server1/logs/catalina.out"

export STARTUP_OPTIONS="-config ${CATALINA_BASE}/conf/server.xml"

#JAVA参数

export JAVA_HOME="/export/servers/jdk1.6.0_25"

export JAVA_BIN="/export/servers/jdk1.6.0_25/bin"

export

PATH="$JAVA_BIN:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/bin"

export CLASSPATH=".:/lib/dt.jar:/lib/tools.jar"

export JAVA_OPTS="-Djava.library.path=/usr/local/lib -server -Xms1024m -Xmx4096m -XX:MaxPermSize=256m -XX:+UnlockExperimentalVMOptions -Djava.awt.headless=true -Dsun.net.client.defaultConnectTimeout=60000

-Dsun.net.client.defaultReadTimeout=60000 -Djmagick.systemclassloader=no

-Dnetworkaddress.cache.ttl=300 -Dsun.net.inetaddr.ttl=300 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$CATALINA_BASE/logs

-XX:ErrorFile=$CATALINA_BASE/logs/java_error_%p.log"

export JAVA_TOOL_OPTIONS="$JAVA_TOOL_OPTIONS

-Dlog.path.prefix=/export/Logs/pop-vender-center/server1

-Ddeploy.app.id=284 -Ddeploy.app.name=pop-vender-center

-Ddeploy.instance.id=239618

-Ddeploy.data.path=/export/Instances/pop-vender-center

-Ddeploy.logs.path=/export/Logs/pop-vender-center

-Ddeploy.instance.logs.path=/export/Logs/pop-vender-center/server1

-Dins_id=239618

-Ddeploy.dynamic.config.dir=/export/Packages/pop-vender-center/20170406165340_1491533641455/WEB-INF/classes"

export JAVA_HOME JAVA_BIN PATH CLASSPATH JAVA_OPTS

export TOMCAT_PUBLIC_SHELL="/export/Data/public_shell/tomcat"

#应用信息

export APP_ID="284"

export APP_CHECK_URL="/deploy.action"

export PACKAGE_PATH="$CATALINA_BASE/runtime"

export APP_SHELL_PATH="$PACKAGE_PATH/lt_hooks_sh"

#分组信息

export GROUP_ID="32518"

#实例信息

export INSTANCE_ID="239618"

export INSTANCE_PORT="1601"

export INSTANCE_SHELL_PATH="/export/Instances/pop-vender-center/server1"

##老实例路径,用于获取老部署应用的应用id和实例id

export OLD_INSTANCE_PATH="/export/Domains/seller.soa.pop.360buy.com/server1"

##文件锁,用于发布过程中暂停存活监控

#export FILE_LOCK_PATH="$OLD_INSTANCE_PATH/file_lock"

export FILE_LOCK_PATH="$CATALINA_BASE/file_lock"

tomcat类型获取PID方式

1

2

export CATALINA_PID="$CATALINA_BASE/work/catalina.pid"

export PID=$(cat $CATALINA_PID)

猜你喜欢

转载自blog.csdn.net/u010029064/article/details/81669235