环境管理
对于状态为“运行”的环境,点击环境名称进入环境管理页面。环境管理一共分为“环境详情”、“设置”、“资源监控”和“日志”4个页签。
管理环境配置参数
环境详情页面主要进行对环境参数进行管理,可以进行如下操作:
- 代码部署或创建RDS实例;
- 续费或升级配置;
- 实例重启;
-
WebSSH登录
-
单击“部署”按钮进行代码部署,该代码部署功能和应用列表页签的“代码管理”功能相同。
- 点击“创建RDS实例”可以购买RDS数据库。购买RDS数据库的详细操作可参见RDS操作指南。
-
如果当前的环境配置即将到期且需要继续使用,请点击“续费”。续费支持按月和按年两种续费方式。
-
如果当前的环境配置参数已经不能满足客户要求需要扩容,请点击“升级配置”。
- 如果实例管理中显示实例状态异常,可以重启实例。
-
如果用户需要临时调试或批量查看日志信息时,可以通过WebSSH远程登录环境。WebSSH支持通过浏览器登录linux系统,系统为Ubuntu,操作和SSH一样,命令行即为linux通用的命令行。
说明:
- WebSSH不支持直接上传和下载文件。如果希望下载Container中的文件,用户可以将文件上传到BOS上然后下载。
- 在WebSSH页面上操作时,执行拷贝操作时选中内容后使用
Ctrl+Shift
命令,执行粘贴操作使用Shift+Insert
命令。
自动发布
代码上传后,系统可以自动执行发布操作。对于新建的环境,自动发布功能默认处于关闭状态。可以通过控制台打开自动发布功能,具体操作如下:
- 选择“产品服务>应用引擎BAE>BAE专业版”,进入“应用列表”页面。
-
单击环境名称,进入环境详情页面,打开“自动发布设置”开关。自动发布功能适用于所有代码管理方式。
“自动发布设置开关”仅针对当前环境有效,不影响其它环境的发布设置。
设置环境
设置页签主要实现添加环境变量、关联RDS或SCS、HTTPS监听协议及添加端口等功能。
注意:
设置环境页签添加变量和添加端口后的“保存修改”操作会导致环境重启。
添加环境变量
当同一个应用需要不同的环境时可以添加环境变量,即使用相同的代码和不同的环境变量来实现。单击“创建变量”及“保存修改”可以添加多个环境变量。
关联RDS或SCS
单击关联RDS或关联SCS下的“创建关联”然后选择需要关联的RDS或SCS集群就可以实现与RDS及SCS的无缝对接,创建关联后该环境的实例会添加到RDS或SCS的白名单中。
当在BAE部署环境的实例数大于1时,用户无法通过内存实现分布式session,这是因为环境的多个实例并不共享内存;但用户可以利用SCS实现分布式session,具体操作方法请查看如何让你的PHP服务支持分布式session。
HTTPS监听配置
在应用HTTPS之前,用户应先配置SSL证书。SSL证书是由证书授权中心(CA)签发的对用户公钥的认证。证书的内容包括:电子签证机关的信息、公钥用户信息、公钥、权威机构的签字和有效期等。关于证书的申请方法,请参看证书管理。
开启了HTTPS监听功能后,用户的HTTPS请求需先通过web server进行解密(ssl offload),然后发送至后台web服务处理;后端web服务处理后,将响应消息首先返回至web server进行加密,然后再将加密后的响应消息回传至用户侧。
注意:
开启了HTTPS监听功能的BAE专业版用户需要拥有SSL证书才能完成加密解密操作。
开启了HTTPS监听功能后系统性能会损失10%左右,详细的性能对比数据请参考性能。
-
在设置环境页签的“HTTPS监听协议”下点击“选择证书”并勾选SSL证书即可使用选中的证书进行HTTPS监听。证书选择成功后会在列表中显示“使用中”。
默认情况下,HTTPS协议监听功能被关闭。如果用户没有上传过SSL证书,点击“创建证书”。关于证书的创建和申请方法,请参看证书管理
-
填写SSL证书信息:将通过CA、二级证书供应商申请的证书或用户自生成的证书中证书名称、公钥、私钥、证书链信息填写进去即可。
信息项 填写说明 证书名称 必填,用户自定义的证书名称。同一个用户的多个证书可以使用相同名称。 公钥 必填,CA机构或二级证书供应商所颁发的服务器证书文件,证书中包含了用于认证的公钥,PEM编码格式如下: -----BEGIN CERTIFICATE----- Server certificate in pem -----END CERTIFICATE----- 不能包含额外的字符、空格或者换行。 私钥 必填,用户在申请证书过程中第一步所创建的文件,PEM编码格式如下: -----BEGIN RSA PRIVATE KEY----- Rsa private key in pem -----END RSA PRIVATE KEY----- 不能包含额外的字符、空格或者换行。 证书链 选填,如果用户是通过中级CA机构或二级证书提供商申请证书,则证书文件会包含多个中间证书和根证书(根证书可选),该项必填。PEM编码格式如下: -----BEGIN CERTIFICATE----- Intermediate certificate 2 in pem -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- Intermediate certificate 1 in pem -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- Optional: Root certificate in pem -----END CERTIFICATE----- 不能包含额外的字符、空格或者换行。 - 证书上传完成后会在下拉框中出现证书名称,选中证书名称并保存,当前环境的所有实例就会开启HTTPS监听功能,通过https访问环境域名。同时,环境的Port端口会新增443/8443端口的监听。
-
如果需要关闭HTTPS监听功能,只需要在下拉框中选择“关闭HTTPS”并保存即可。
注意:保存操作会导致环境重启。
- 用户可以根据需要勾选“强制HTTPS”开启强制HTTPS监听。开启强制HTTPS监听后,用户所有的HTTP请求会被强制转换成HTTPS的请求。开启强制HTTPS监听时,需要确认是否配套的其他产品或服务都支持HTTPS,如果存在不支持HTTPS的产品或功能,会出现不兼容问题。
创建SSL证书
创建一个SSL证书必须先生成一个RSA私钥和CSR文件。用户可以将CSR文件发送给CA机构申请一个SSL证书,也可以在本地生成一个用户自定义证书进行测试。本节以Linux系统为例介绍如何创建SSL证书。SSL证书管理详细内容请参见证书管理
-
本地生成私钥文件。
openssl genrsa -out my-private-key.pem 2048
-
基于上一步所生成的私钥文件创建CSR证书请求文件。生成CSR文件的过程中需要用户输入公司、地理、域名等信息。
openssl req -sha256 -new -key my-private-key.pem -out csr.pem
- 将CSR文件递交给CA机构。CA机构在完成审核后会将相关的证书文件发给用户。
-
(可选)用户可以执行以下命令在本地生成用户自定义证书用于测试,因为用户自定义证书非官方认证,所以客户端打开时会提出不信任的警告,需要安装才能消除警告。
openssl x509 -req -days 365 -in csr.pem -signkey my-private-key.pem -out my-certificate.pem
端口服务
当用户需要自定义某些端口进行访问和监听功能时,可以在设置页面添加相应端口。
注意:
- 系统默认开放HTTP的80为访问端口,8080为监听端口;HTTPS的443为访问端口,8443为监听端口,不可修改和删除。
- 用户自定义的端口只支持TCP协议,且最多支持添加100个。
资源监控
BAE专业版提供针对实例的资源监控数据查询,监控范围包括:内存使用量、CPU使用率、磁盘使用量、流出流量、请求数及平均响应时间。
-
内存使用量
内存使用量即RSS使用的内存数,内存限制值即为购买套餐内的内存大小。
注意:这种策略可能会导致小程序占据过高内存,但这部分内存可被系统快速回收,所以开发者可忽略由此引发的内存占用。
-
CPU使用率
运行的程序占用的CPU资源。
-
磁盘使用
统计磁盘使用量,目前每个实例的限制值为20G。
-
流出流量
统计间隔内目标部署的流出流量(KB),间隔时间同上。
-
HTTP请求数
统计间隔时间内目标部署的请求数,开发者可通过图表查询到最近60分钟、最近24小时的HTTP请求相关数据。 请求数资源显示中会通过不同颜色来表示不同类型的返回代码,如返回代码为404的会以玫红色标识。
- 最近60分钟:每个点代表1分钟间隔内的请求数;
- 最近24小时:每个点代表15分钟间隔内的请求数。
-
平均响应时间
最近5s的请求数平均耗时。
查看日志
单击运行状态的环境名称,选择“查看日志”以查看本地日志。本地日志实时反映系统当前状态,与环境绑定,在环境回收时会被全部清空,主要用于调试。
用户可以选择实例及日志文件名进行查询,日志列表中最多可以显示200条日志。
-
日志文件类型
-
系统日志
以php-web部署类型为例,支持下述系统日志:
- appconf.log:应用部署异常及错误日志
- error.log:lighttpd执行错误日志
- access.log:lighttpd访问日志
- phperror.log:PHP脚本错误日志
-
slowlog.log:PHP慢请求日志
注意:
单个web请求最大执行时间为30s,超过30s的请求会被kill并将其记录到slowlog中。
-
用户日志
使用任意后缀名将日志文件存入日志目录“/home/bae/log”后,即可使用特定编程语言提供的日志模块进行日志打印。例如,将用户日志:example.log.1和example.log.2存入/home/bae/log并先后进行了修改,则查询example.log,BAE按时间戳显示最后被修改的日志,即默认显示下述命令的输出:
# 按时间戳显示最后被修改的日志 $ tail /home/bae/log/example.log.2
-
-
命名规范
必须符合正则表达式:"\^(.?).log.?[^.](.*)\$",第2个分组为数字或空;例如access.log,error.log.2014112811, debug.log.modelA.20141128,符合开发者按时间或大小对日志进行切分的习惯,同时便于BAE将分组内容相同的日志文件归为一组展示给用户。例如,/home/bae/log目录下有access.log.1, access.log.2,页面上只显示access.log。