精英盒子 -> 管理 -> RP主机设施细则 [打印本页]

jybox 2012-09-03 22:31

RP主机设施细则


算是个人的笔记,对RP主机感兴趣的也可以来看一看
不保证以后RP主机一定按本文写的来....


这是之前RP主机的第一个预告贴:http://jybox.net/bbs/read.php?tid-1164.html


#概述
##RP主机的定位是什么?
对于我来说,RP主机的唯一一个目的——赚零花钱
对于用户来说,RP主机是一款为技术宅(Geek)提供的Linux虚拟主机


##RP主机和大多市面上的卖的虚拟主机有什么区别?
更加自由,你几乎可以在上面搭建所有服务器,事实上,这相当于合租VPS了.


##RP主机和神马终端有什么区别?
RP主机是神马终端的升级版,神马终端的用户会被强制升级到RP主机
和神马终端相比,RP主机会提供更加专业的服务、RP主机会有一个自主开发的控制面板。


##RP主机的工作模式
RP主机实际上就是一台划分了用户的Linux服务器,每个用户都可以干自己想做的事情。
当然,会有以root权限运行的监控程序限制你的资源使用,以免影响到其他用户。
为了能够使效率最大化,我们将最常用的一些服务(例如Apache、MySQL等)独立出来,以root权限运行,大家共同使用。而不是每个人都单独运行一份.


##Root Panel
Root Panel是我专为RP主机开发的一套虚拟主机管理系统,它会分成三个部分:


* 核心,核心部分负责管理各种服务器软件(例如Apache、MySQL、Nginx等)的配置文件、还负责记录和限制每个用户的资源使用量,这个部分会以root的权限来运行,大部分情况下,他们会一直运行在后台.每个节点都会运行一个核心
* 用户工具,这是提供给用户的一些工具,例如自动备份等等,它会放在用户的目录中,用户可以修改它。这些工具运行时将以实际用户的权限运行。
* 管理面板GUI,这个部分就是提供给用户用来管理自己的虚拟主机的一个Web界面,它事实上就是一个网站,通过核心提供的接口与核心交互,来应用用户的操作(修改配置文件).用户也可以通过这个管理界面来调用一些用户工具.管理面板只存在于中心节点。


以上三个部分都打算用PHP和bash来写.



以上是针对半个月前的那个帖子的修订,未提到的地方即表示没有修改,请看http://jybox.net/bbs/read.php?tid-1164.html

#细节(从用户的角度看)
##用户系统
所有人都可以注册,注册需要填写用户名、邮箱、密码
其中邮箱非常重要,将用来接收通知,也是验证账号所属权的唯一凭证

账号有三种状态:未付费账号、试用账号、付费账号

刚刚注册完成后的账号就是未付费账号,未付费账号无法使用RP主机的各种功能,未付费账号可以写试用申请,试用申请被批准后,即转为试用账号,试用账号期限是一个月。过期后将重新变成未付费账号。

如果希望付费,那么就可以到淘宝上拍下相应商品并付款,备注填写你的账号。收到付款后(人工),你的账号将转为付费账号

##客服系统
客服系统仍然是基于邮件

##管理面板功能
* 新建和管理Web站点,提供几套模板,例如反向代理、PHP站点、PythonWSGI站点、CGI站点。至于其他的,就需要与客服沟通,人工编写配置文件了
* 新建和删除MySQL/PPTP/Mongodb账号
* 查看流量使用情况、查看CPU使用情况(只有试用账号有CPU限制)


#细节(从实现的角度看)
##Web服务的架构
不得不承认,Web应该说是RP主机提供的主要业务。
Nginx将负责静态内容的请求和反向代理,
动态内容,例如PHP、Python、CGI,交给Apache.

用户可以选择两种模式:
* 按照上面说的,Nginx处理静态内容,Apache处理动态内容
* 直接用Apache处理全部内容

##数据库
统一的数据库支持有Mongodb和MySQL
会提供一个统一的PHPMyAdmin

##核心部分
###资源监控
####CPU
每10秒检测一次:
* 若一个进程30秒内CPU时间增长超过5秒,将该进程调至最低优先级
* 若一个进程10秒内CPU时间增长超过3秒,将该进程调至最低优先级
* 若某用户的进程总数超过了其他所有用户的进程数之和,将该用户所有进程调至最低优先级
* 被调低优先级的进程,240秒后调至正常
* 若某个进程20秒内CPU时间增长超过10秒,结束进程
* 试用用户要记录进程的CPU时间
####内存
每10秒检测一次:
* (前置条件)若空闲内存大于100M,则不结束任何进程
* (前置条件)试用用户在所有内存数值上乘0.4的竞争系数
* 若一个进程内存超过80M,持续120秒,结束进程
* 若一个进程内存超过100M,持续10秒,结束进程
* 若一个进程内存超过150M,结束进程
* 若一个用户的总内存超过150M,持续10秒,由高至低,结束进程,直到内存达到100M以下
* 若一个用户的总内存超过120M,持续120秒,由高至低,结束进程,直到内存达到100M以下
####流量
每天凌晨两点,清算所有组件的流量
流量分为:
* Nginx静态页面和反向代理
* PPTP VPN
* 该用户的进程的流量
####硬盘


每天凌晨两点,清算硬盘空间

###数据备份隔天的凌晨两点,全盘备份,主要储存在较可靠的网盘上。
这是强制性的,对用户不可见的

###节点分布我们会在不同的机房购买VPS,也会支持自动化地在节点之间转移。
每个机房会根据情况对硬盘空间、流量按照一定系数进行调整。用户自主的转移需要消耗服务的剩余天数(暂定每次消耗两天)

所有有效的设置信息都保存在主节点,管理面板也在主节点。
在主节点的管理面板修改设置后,主节点通知所属节点更新配置文件。
同时将该用户的设置备份到所属节点。

每天凌晨两点,所属节点将一天的资源统计汇报给主节点

scxy 2012-09-04 13:29
soga - -




Powered by phpwind v8.7 Code ©2003-2011 phpwind
Time 0.039726 second(s),query:5 Gzip enabled