目錄
一 應用環境使用服務器狀況 2
二 服務器硬件配置參數2
三 服務器系統安裝版本2
四 應用安裝步驟 2
1 JDK安裝 2
2 安裝red53
2.1 origin 服務器集羣方案步驟3
2.2 edge服務器集羣方案步驟4
3 mysql安裝mysql-5.5.8.tar.gz5
3.1安裝cmake編譯器5
3.2 mysql 安裝5
4 mysql主從配置6
4.1 配置slave my.cnf6
4.2 Master服務器上進行操做6
4.3 配置從服務器7
4.4 主從同步檢查7
4.5 主服務器上的操做7
5 memcached安裝8
5.1 安裝 libevent-2.0.16-stable8
5.2 簡單測試8
一,
本應用環境使用服務器狀況
共 11 臺,用於各類應用的搭建;搭建的服務應用以及所對應的內網IP以下:
1,
red5-origin(red5源服務器) 10.0.0.23
2,
red5-origin(red5源服務器) 10.0.0.24
3,
red5-edge(red5邊服務器) 10.0.0.26
4,
red5-edge(red5邊服務器) 10.0.0.27
5,
red5-edge(red5邊服務器) 10.0.0.28
6,
mysql-master(mysql主服務器) 10.0.0.129
7,
mysql-slave(mysql從服務器) 10.0.0.130
8,
memcached(緩存服務器) 10.0.0.150
9,
memcached(備用緩存服務器) 10.0.0.151
10,
web服務器 *2 10.0.0.20,10.0.0.21
二,
服務器硬件配置參數
服務器應用 供應商 設備型號 厚度 CPU 內存 硬盤
1,
web服務器: DELL R410 1U E5606*2 16GB 300GB
2,
red5源服務器: DELL R410 1U E5620*2 8GB 300GB
3,
red5邊服務器: DELL R410 1U E5606*2 32GB 300GB
4,
mysql服務器: DELL R710 2U E5620*2 16GB 450GB
5,
緩存服務器: DELL R410 1U E5606 16GB 250GB
三,
服務器系統安裝版本
web使用windows 2003,其餘應用均使用centOS6.2 64位版本
四,
應用安裝步驟
這裏咱們爲了之後便於查看,軟件統一放到/home/software下,應用安裝到/usr/local下:
1
JDK安裝
首先安裝red5服務,red5須要jdk的支持,所以須要在5臺red5服務器上安裝jdk,這裏採用jdk6版本,步驟以下:(注意,這裏須要安裝64的jdk版本)
1.1 先把jdk安裝文件放入/home,配置權限chmod a+x jdk.*.bin,而後再當前目錄下解壓JDk
./jdk.*.bin
你會看到版權提示,無論它,按Ctrl+c。而後會提示你是否贊成版權協議[yes/no],此時輸入yes,回車,安裝程序就會把文件解壓到當前目錄下的jdk1.x這樣的目錄下面
1.2 添加JAVA_HOME/JRE_HOME環境變量
這裏以最經常使用的bash命令解釋器爲例,編輯用戶目錄下的.bashrc或.profile文件。若是你想在全部用戶的shell下都生效,就編輯/etc/profile文件。一樣都是加入如下內容:
vi /etc/profile
export JAVA_HOME=/home/jdk1.6
export JRE_HOME=/home/jdk1.6/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
source /etc/profile 刷新profile文件
1.3 查看java本版
java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06)
Java HotSpot(TM) Client VM (build 10.0-b23, mixed mode, sharing)
2,安裝red5
首先到官網下載red5數據包
#cd /home/software
#wget http://trac.red5.org/downloads/0_9/red5-0.9.1.tar.gz
#tar zxvf red5-0.9.1.tar.gz –C /usr/local/red5-origin
2.1 origin服務器集羣方案步驟
修改origin中conf/的red5-origin-core.xml文件:將
<bean id="customEditorConfigurer"
class="org.springframework.beans.factory.config.CustomEditorConfigurer">
<property name="customEditors">
<map>
<entry key="java.net.SocketAddress">
<bean
class="org.apache.mina.integration.spring.InetSocketAddressEditor" />
</entry>
中的spring改成beans。
修改origin中conf/的red5.xml文件。將
<!--
<bean id="default.context"
class="org.springframework.context.support.FileSystemXmlApplicationContext">
<constructor-arg><value>/webapps/red5-default.xml</value></constructor-arg>
<constructor-arg><ref bean="red5.common" /></constructor-arg>
</bean>
-->
這段註釋的代碼還原出來。
.保存後啓動origin中的red5.sh,這時origin會正常啓動。
2.2 edge服務器集羣方案步驟
2.2.1 修改edge中conf/的red5-edge-core.xml文件:
將
<bean id="customEditorConfigurer"
class="org.springframework.beans.factory.config.CustomEditorConfigurer">
<property name="customEditors">
<map>
<entry key="java.net.SocketAddress">
<bean
class="org.apache.mina.integration.spring.InetSocketAddressEditor" />
</entry>
中的spring改成beans。並找到<bean id="mrtmpClient"項,將<property name="server"的value值改成你origin服務器所在機器的IP。
2.2.2 修改edge中conf/的red5-edge-core.xml文件:
將
<!-- RTMP Mina Transport -->
<bean id="rtmpTransport" class="org.red5.server.net.rtmp.RTMPMinaTransport" init-method="start" destroy-method="stop">
<property name="ioHandler" ref="rtmpMinaIoHandler" />
<property name="address" value="${rtmp.host}" />
<property name="port" value="${rtmp.port}" />
修改成:
<!-- RTMP Mina Transport -->
<bean id="rtmpTransport" class="org.red5.server.net.rtmp.RTMPMinaTransport" init-method="start" destroy-method="stop">
<property name="ioHandler" ref="rtmpMinaIoHandler" />
<property name="connectors">
<list>
<bean class="java.net.InetSocketAddress">
<constructor-arg index="0" type="java.lang.String" value="${rtmp.host}" />
<constructor-arg index="1" type="int" value="${rtmp.port}" />
</bean>
<!-- You can now add additional ports and ip addresses
<bean class="java.net.InetSocketAddress">
<constructor-arg index="0" type="java.lang.String" value="${rtmp.host}" />
<constructor-arg index="1" type="int" value="1936" />
</bean>
-->
</list>
</property>
2.2.3 修改其餘edge中的red5.properties文件
將rtmp.port=1935的端口改爲與其餘edge不一樣的端口。
3,
mysql安裝mysql-5.5.8.tar.gz
3.1安裝cmake編譯器
3.1.1下載cmake
#cd /home/software
# wget http://www.cmake.org/files/v2.8/cmake-2.8.3.tar.gz
3.1.2 解壓cmake
#tar –zxvf cmake-2.8.3.tar.gz –C /usr/local/
3.1.3 配置編譯
#cd /usr/local/cmake-2.8.3
#yum –y install gcc
#yum -y install gcc-c++
#./configure
#make
#make install
3.2
安裝mysql
3.2.1
下載mysql
#cd /home/software
#wget http://mirrors.ircam.fr/pub/mysql/Downloads/MySQL-5.5/mysql-5.5.8.tar.gz
3.2.2 添加必要的組和擁有者
#groupadd mysql
#useradd -r -g mysql mysql
3.2.3 解壓MySQL
#tar -zvxf mysql-5.5.8.tar.gz
#cd /usr/local/mysql-5.5.20
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/datashow -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_USER=mysql -DWITH_DEBUG=0 -DWITH_COMMENT='*******.com' -DMYSQL_TCP_PORT=3306
# make && make install && ldconfig && echo "OK ! "
chmod +x ./scripts/*.sh
./scripts/mysql_install_db.sh --basedir=/usr/local/mysql --datadir=/datashow --user=mysql
cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chown -R mysql:mysql /usr/local/mysql
chkconfig --add mysqld
chkconfig --level 345 mysqld on
/etc/init.d/mysql start
ln -s /usr/local/mysql/bin/* /usr/sbin/
mysqladmin -u root password 'password'
/etc/init.d/mysqld start
mysqladmin -u root password 'password'
mysql -uroot -p
exit
4 mysql主從配置
Master IP10.0.0.129
Slave IP 10.0.0.130
配置master my.cnf
server-id = 1
log-bin=mysql-log
binlog-do-db=jjm
binlog-ignore-db=mysql
binlog-ignore-db=test
保存退出
4.1 配置slave my.cnf
server-id = 10
replicate-do-db = jjm
replicate-ignore-db = mysql
replicate-ignore-db = test
保存退出;
4.2 Master服務器上進行操做
啓動mysql服務
/etc/init.d/mysqld start
Mysql –u root –p
輸入密碼
受權給從數據庫服務器
mysql> GRANT REPLICATION SLAVE ON *.* to 'slave'@'10.0.0.130' identified by 'baomihua';
查詢master數據庫狀態
Mysql>show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000005 | 261 | | |
+------------------+----------+--------------+------------------+
記錄下file及position的值,在後面進行從服務器操做的時候須要用到
4.3 配置從服務器
啓動mysql服務
/etc/init.d/mysqld start
Mysql –u root –p
執行同步sql語句
Mysql > change master to master_host=’10.0.0.129’,master_user=’slave’,master_password=’baomihua’,master_log_file=’mysql-bin.000005’,master_log_pos=261;
正確執行後啓動slave同步進程
Mysql > slave start;
4.4 主從同步檢查
Mysql>show slave status\G;
其中Slave_IO_Running 與 Slave_SQL_Running 的值都必須爲YES,才代表狀態正常
若是主服務器已經存在應用數據,則在進行主從複製時,須要作如下處理:
4.4.1
主數據庫進行鎖表操做,不讓數據再進行寫入動做
mysql> FLUSH TABLES WITH READ LOCK;
4.4.2
查看主數據庫狀態
mysql> show master status;
4.4.3 記錄下 FILE 及 Position 的值。
將主服務器的數據文件(整個/opt/mysql/data目錄)複製到從服務器,建議經過tar歸檔壓縮後再傳到從服務器解壓。(tar zcvf ***.tar.gz ***)經過scp ./***.tar.gz root@*.*.*.*:路徑 複製在解壓縮,覆蓋原來的文件;
4.4.4
取消主數據庫鎖定
mysql> UNLOCK TABLES;
驗證主從複製效果
4.5 主服務器上的操做
在主服務器上建立數據庫jjm
Mysql>create database jjm;
在主服務器上建立表jjm—tb;
Use jjm;
Create table jjm-tb(id int(3),name char(10));
在主服務器上的表jjm-tb中插入記錄
Insert into jjm-tb values(001,’myself’);
在從服務器上查看
Mysql>show databases;
5 memcached安裝
5.1 先安裝 libevent-2.0.16-stable 在安裝 memcached-1.4.10.tar.gz
tar zxvf libevent-2.0.16-stable.tar.gz
cd libevent-2.0.16-stable
./configure --prefix=/usr/local/libevent
make && make install
tar zxvf memcached-1.4.10.tar.gz
cd memcached-1.4.10
./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent/
make && make install
5.2
簡單測試
#/usr/local/memcached/bin/memcached –u root –d –m 200 –l 127.0.0.1 –p 11211 –P /var/memcached.pid
#ps aux|grep memcache |grep –v ‘grep’
root 8979 0.0 0.2 64732 1072 ? Ssl 12:03 0:00 /usr/local/memcached/bin/memcached -u root -d -m 200 -l 127.0.0.1 -p 11211 -P /var/memcached.pid
#lsof –I :11211
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
memcached 8999 root 26u IPv4 12244 TCP one.t.com:11211 (LISTEN)
memcached 8999 root 27u IPv4 12245 UDP one.t.com:11211
你們有不懂的能夠加qq羣:82026839