# linux单机部署(>= V3.5.0)
# 基于商派封装的源进行快速简易的安装
这是一个使用yum源安装shopex OMS的标准化教程,可以大大减轻搭建环境的工作量。
我们希望提供给部署运维人员的不仅仅是一个教程,也是一个思路,而不是一个傻瓜式的部署步骤(ctrl+c加ctrl+v),在实际安装部署过程中,由于操作系统或环境的差异,出现依赖库冲突等问题,可自行调整或咨询官方后进行解决。
# 约定
- 操作系统为Centos 6.5 x64 或6系列的以上版本(centos 6.x 或者el6)
- 系统基于最小化安装即可
PS : 7.0以上 是不支持的,注意系统必须是64位
# 关闭selinux
#命令行临时关闭 SeLinux
setenforce 0
#修改SeLinux配置,下次启动则默认关闭
修改 /etc/selinux/config 文件
将 SELINUX=enforcing 改为 SELINUX=disabled
1
2
3
4
5
2
3
4
5
# 初始化yum源
将shopex-lnmp源加入到系统中,在线地址查看有哪些软件 http://mirrors.shopex.cn/shopex/shopex-lnmp/ 可以安装
yum install wget -y
cd /etc/yum.repos.d/
wget http://mirrors.shopex.cn/shopex/shopex-lnmp/shopex-lnmp.repo
1
2
3
4
2
3
4
# 安装epel扩展源
yum install epel-release -y
1
# 安装OMS环境,主要是php apache mysql zend redis以及任务管理器(taskmgr)的运行php(支持线程)
apache+php+mysql51
yum install -y httpd php-pdo php-xml php-pecl-imagick php-soap php php-fpm php-bcmath php-pecl-memcached php-pecl-igbinary php-common php-mysql php-mcrypt php-mbstring php-pecl-memcache php-pecl-redis php-gd php-cli php-xmlrpc php-pecl-mongo php-ZendGuardLoader mysql51 redis
安装 php-pthreads
yum install php-pthreads -y
1
2
3
4
5
2
3
4
5
# 配置文件以及相关目录说明
站点根目录 建议/data/httpd/oms.xxx.com(xxx为具体客户的真实域名)
apache:
配置文件目录 /etc/httpd/conf/httpd.conf
php:
配置文件 /etc/php.ini
php 扩展配置文件目录 /etc/php.d/
zend 配置文件 /etc/php.d/Zend.ini
mysql5.1:
basedir /usr/local/mysql51
datadir /data/mysql/3306
配置文件 /usr/local/mysql51/my.cnf
可以使用 mysqladmin password 'xxxxxx' 设置mysql的root密码
php-pthreads:
basedir /usr/local/php-pthreads
memcache:
配置文件 /etc/sysconfig/memcached
redis :
配置文件 /etc/redis.conf
关于启动命令
apache
service httpd start
mysql51
service mysql51 start
memcache
service memcached start
redis
service redis start
关于加入开机启动项
chkconfig xxx on
xxx 为服务名
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
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
# php配置
修改 /etc/php.ini
date.timezone = "Asia/Shanghai" //调整时区
修改 /etc/php.d/zend.ini
zend_loader.license_path = '/data/httpd/oms.xxx.com/config/developer.zl' //请根据实际情况进行配置
1
2
3
4
5
2
3
4
5
# 1) 复制代码到安装目录
/data/httpd/oms.xxx.com/
1
# 2) 对 data,config,public 目录赋 777
chmod -R 777 /data/httpd/oms.xxx.com/data
chmod -R 777 /data/httpd/oms.xxx.com/config
chmod -R 777 /data/httpd/oms.xxx.com/public
1
2
3
2
3
# 3) 配置apache
#ServerName www.example.com:80
修改为
ServerName oms.xxx.com:80
DocumentRoot "/var/www/html"
修改为
DocumentRoot "/data/httpd/oms.xxx.com/"
<Directory "/var/www/html">
修改为
<Directory "/data/httpd/oms.xxx.com/">
当然如果apache服务下设置多个站点话,我们也可以设置vhost:
<VirtualHost *:80>
DocumentRoot "/data/httpd/oms.xxxx.com"
ServerName oms.xxxx.com
<Location /script/>
Order deny,allow
Deny from all
</Location>
<Location /config/>
Order deny,allow
Deny from all
</Location>
<Directory "/data/httpd/oms.xxxx.com">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
使用/etc/init.d/httpd configtest进行配置文件检测,出现 Syntax OK 表示检查没有问题,使用 /etc/init.d/httpd start 启动web服务
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
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
# 4) 开始安装应用
直接访问OMS访问地址,一步步执行下去即可。
1
# 5) taskmgr app 配置(详细说明请查看"任务管理"章节说明)
App/taskmgr/config/config.php
一般默认安装后只要修改以下两个参数
//设置定时任务的请求域名,建议直接走内网127.0.0.1(或内网ip),执行脚本服务器能通过127.0.0.1(或内网ip)访问OMS站点即可,如果设置真实域名还要从本机跳到外网再绕一圈再进来,有点多余。
define('DOMAIN', '127.0.0.1');
//定义内部任务请求的token
define('REQ_TOKEN', 'SzjJ7VF9w2Dy3yt4K9vcV3LEwFc5pX3cXHu');
1
2
3
4
5
6
7
2
3
4
5
6
7
# 6) crontab 部署
部署前,检查下redis队列有没有起来,没有的话执行/etc/init.d/redis start
//任务管理器守护进程
* * * * * /bin/sh /alidata1/httpd/oms.xxx.com/app/taskmgr/check.sh
//历史任务处理日志清理
0 0 * * * /bin/sh /alidata1/httpd/oms.xxx.com/app/taskmgr/cleanlogs.sh
1
2
3
4
5
6
7
2
3
4
5
6
7
完成以上步骤后,OMS系统即可正常访问使用。