在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:ubuntu-server-deploy开源软件地址:https://gitee.com/janpoem/ubuntu-server-deploy开源软件介绍:#Ubuntu服务器常用组件安装包
补充说明一下,我管理的服务器比较多,我的做法是,先获取这个项目的代码到服务器 一般来说,都不会在一台服务器上集中全部功能组件,一般会区分如:tengine_node_blancer、tengine_php_server、memcached_cluster、memcached_router等。这个安装包的作为开源项目,只提供了一个基础的环境,而具体的服务器配置,则保存在用户自己的版本库中(这个项目的user目录已经设置了忽略)。 ##todo ###phase1
###phase2
##server.sh ./tengine.sh init|prepare|timezone|upgrade|clean|dns 这个脚本主要执行apt-get upgrade和修正服务器的时区。
用户可修改变量 #!/usr/bin/env bash# file: user/dns.sh# oneDNSDNS[1]=112.124.47.27DNS[2]=114.215.126.16# 时区TIMEZONE=Asia/Shanghai# 有需要追加的安装包,请使用这个变量,但最好使用+=的方式追加。SERVER_REQUIRE_PKGS+="...需要增加的包..." ##tengine.sh 可用的命令 ./tengine.sh install|rebuild|conf|conf-all|conf-main|conf-deny|conf-common|conf-php|script|sh|test|ensite|enphpsite
上述的所谓重新初始化,是指,修改了配置,并按照最新的配置覆盖到指定的配置文件。 用户可修改变量 # 所需要的包的版本号……这个最好和要下载的包名称保持一致,这里需要调整一下TENGINE_NAME=tengine-2.1.0PCRE_NAME=pcre-8.36ZLIB_NAME=zlib-1.2.8OPENSSL_NAME=openssl-1.0.2a# www_user和www_group,这个配置也对应到php编译使用WWW_USER=www-dataWWW_GROUP=www-data# tengine的目录,呃,这个不用怎么修改TENGINE_CONF_DIR=/etc/tengine# tengine pidfile 这个也不用改了吧TENGINE_PID_FILE=/var/run/tengine.pid# ...不说了TENGINE_LOG_DIR=/var/log/tengineTENGINE_TMP_DIR=/var/tmp/tengine# ...不说了TENGINE_TMP_CLIENT=${TENGINE_TMP_DIR}/client_bodyTENGINE_TMP_PROXY=${TENGINE_TMP_DIR}/proxyTENGINE_TMP_FCGI=${TENGINE_TMP_DIR}/fcgiTENGINE_TMP_UWSGI=${TENGINE_TMP_DIR}/uwsgiTENGINE_TMP_SCGI=${TENGINE_TMP_DIR}/scgi# tengine config配置变量TENGINE_WORK_PROS=8TENGINE_RLIMIT=102400TENGINE_WORKER_CONNS=102400TENGINE_DEFAULT_MIME_TYPE=text/htmlTENGINE_DEFAULT_CHARSET=text/htmlTENGINE_VHOST_LOG_DIR=/var/log/vhostTENGINE_VHOST_CONF_DIR=${TENGINE_CONF_DIR}/vhost# www的根目录TENGINE_WWW_HOME=/var/www ##mc.sh memcached和mcrouter相关的安装和配置。 mcrouter,facebook团队荣誉出品,安装过程十分费劲,所以也打包在这个脚本里面了。
可用的命令 ./mc.sh install|conf|mcr-install|mcr-build|mcr-fb-build|mcr-conf|mcr-script|mcr-sh
如果你的服务器已经安装过facebook/folly,再执行mcr-install的时候,安装过程无异常,但是安装完毕,当你执行mcrouter --help,有可能会报出如下的错误:
不管你如何重新编译安装folly,都无法解决,目前可行的方案是用facebook提供的方式进行安装,不过他会将你的gcc和g++用4.8替换掉。 如果你是全新的服务器安装,执行mcr-install都不会有这个异常出现,如果你已经自己手动编译安装过folly,则可能会出现上述的问题。发生这个问题的时候,请使用mcr-fb-build。 并且,mcr-fb-build和mcr-install安装的目标目录是不同的。 这个问题已经提交到mcrouter的issues了。https://github.com/facebook/mcrouter/issues/39 用户可修改变量 # memcached的配置MC_HOST=127.0.0.1MC_PORT=11211MC_LOG_FILE=/var/log/memcached.logMC_USER=memcacheMC_SIZE=64# mcrouter配置MCR_PORT=5000MCR_CONF_FILE=/etc/mcrouter.jsonMCR_LOG_FILE=/var/log/mcrouter.logMCR_PID_FILE=/var/run/mcrouter.pid# mcrouter pooled servers配置,这里当时没想清楚,所以实现的好,以后会改成数组的模式MCR_POOL_SERVERS="\"${MC_HOST}:${MC_PORT}\",\"other_ip:other_port\"" ###/etc/init.d/mcrouter使用说明 执行./mc.sh mcr-sh,会生成一个服务启动的脚本 service mcrouter start|stop|restart|status|proc
调试 如上所述,因为folly的这个问题,所以适当的调试是必要的。如果当你执行 这时你可以尝试直接执行: # 上面省略....# 在这一行开始. /lib/lsb/init-functions${DAEMON} ${DAEMON_ARGS}exit 1# 下面省略.... 然后执行 当调试完毕服务已经可以正常启动了,再执行 ##php.sh ./php.sh install|rebuild|fpm-conf|fpm-sh|ini|bin
用户可修改变量 以下只列出推荐用户修改的 # PHP源代码下载的目录,可以留空,会以ubuntu-server-deploy/temp作为下载目录PHP_TEMP_DIR=# 所需要的PHP版本,注意,目前这个编译,测试过php5.5和php5.6,其它的版本要实际测试PHP_VER=5.5.23# php的下载连接,注意,这里可选的有:${PHP_HK_SOURCE}、${PHP_CN_SOURCE}、${PHP_US_SOURCE}PHP_SOURCE=${PHP_HK_SOURCE}# php可执行命令的前缀,提供这个变量,主要为了能让系统同时存在多个php的版本,比如有些开源代码只支持php5.3...PHP_BIN_PREFIX=php# 需要追加apt-get的包名称,如果要多行,请用双引号包起来PHP_REQ_PKGS=# php编译的命令,如果不是必要,最好不要直接修改这个命令,而是使用+=的方式追加,如下:PHP_CONF_CMD+="...追加的编译配置..."# php日志、pid文件PHP_FPM_LOG_DIR=/var/log/${PHP_BIN_PREFIX}-fpmPHP_FPM_PID_FILE=/var/run/${PHP_BIN_PREFIX}-fpm.pidPHP_FPM_ERR_FILE=${PHP_FPM_LOG_DIR}/error.logPHP_FPM_LOG_LEVEL=warning# FPM最大进程数、超时时间、RLIMITPHP_FPM_PROCESS_MAX=10PHP_FPM_PROCESS_TIMEOUT=30PHP_FPM_RLIMIT=65535# FPM listen,你可以修改为unix:....PHP_FPM_LISTEN="127.0.0.1:9902"# listen modePHP_FPM_LISTEN_MODE=0666# FPM PM设定PHP_FPM_PM_MODE=staticPHP_FPM_PM_START=10PHP_FPM_PM_MAX_CHILDREN=10PHP_FPM_PM_MAX_REQUESTS=0# php.ini设置相关PHP_INI_MAX_EXECUTION_TIME=60PHP_INI_MAX_INPUT_TIME=60PHP_INI_DEFAULT_CHARSET=UTF-8PHP_INI_POST_MAX_SIZE=10MPHP_INI_UPLOAD_MAX_SIZE=10M ##user.sh示例 #!/usr/bin/env bashMC_HOST=192.168.55.122MC_PORT=11212MC_LOG_FILE=/var/log/memcached.logMC_USER=memcacheMC_SIZE=64MCR_POOL_SERVERS="\"${MC_HOST}:${MC_PORT}\"" ##ubuntu的中国源 如果你需要使用中国的apt-get更新源,请使用sohu源,已知163源在一些包的版本上有错误,谨慎谨慎。 sohu源 deb http://mirrors.sohu.com/ubuntu/ trusty main restricted universe multiversedeb http://mirrors.sohu.com/ubuntu/ trusty-security main restricted universe multiversedeb http://mirrors.sohu.com/ubuntu/ trusty-updates main restricted universe multiversedeb http://mirrors.sohu.com/ubuntu/ trusty-proposed main restricted universe multiversedeb http://mirrors.sohu.com/ubuntu/ trusty-backports main restricted universe multiversedeb-src http://mirrors.sohu.com/ubuntu/ trusty main restricted universe multiversedeb-src http://mirrors.sohu.com/ubuntu/ trusty-security main restricted universe multiversedeb-src http://mirrors.sohu.com/ubuntu/ trusty-updates main restricted universe multiversedeb-src http://mirrors.sohu.com/ubuntu/ trusty-proposed main restricted universe multiversedeb-src http://mirrors.sohu.com/ubuntu/ trusty-backports main restricted universe multiverse |
请发表评论