如今阿里雲服務器上申請SSL證書。而後綁定服務器ip。html
服務器配置:java
192.168.0.1(42.42.42.42(公網ip))mysql
192.168.0.2linux
192.168.0.3nginx
192.168.0.4c++
192.168.0.5web
服務器提供一個對外的彈性ip(公網ip),各服務器之間經過子網ip鏈接。redis
192.168.0.1配置redis+nginxspring
192.168.0.2,192.168.0.3 配置tomcatsql
192.168.0.4,192.168.0.5 配置mysql
每臺服務器上來直接
yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison pcre pcre-devel zlib zlib-devel openssl openssl-devel libaio
關閉防火牆:
個人是華爲服務器在安全組配置就行 防火牆若是再開就會訪問不了。
chkconfig iptables off 永久關閉防火牆
service iptables stop 這種關閉防火牆下次開機仍是會打開
修改配置文件
# vi /etc/selinux/config
將SELINUX=enforcing改成SELINUX=disabled
須要重啓機器生效!!通常購買的服務這個都關閉了。
nginx安裝:
cd /usr/local/src
官網下載。上傳服務器或直接wget
tar -zxvf nginx-1.13.6
cd nginx-1.13.6
mkdir /usr/local/nginx
./configure --prefix=/usr/local/nginx
make && make install
cd /usr/local/nginx
mkdir -p /usr/local/nginx/conf/cert
將證書nginx SSL證書放到 /usr/local/nginx/conf/cert目錄下
vim /conf/nginx.conf
user root; worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; #配置被代理的服務器 upstream my_servers{ #ip_hash server 192.168.0.6:8080; server 192.168.0.4:8080; } server { listen 81; server_name game.xxxxx.com; location / { root html; index index.html index.htm; proxy_pass http://my_servers; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # HTTPS server server { listen 443; server_name game.xxxxx.com; ssl on; ssl_certificate cert/214292271630849.pem; ssl_certificate_key cert/214292271630849.key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; location / { proxy_pass http://my_servers; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } }
/usr/local/nginx/sbin/nginx -t
測試若是successful
/usr/local/nginx/sbin/nginx
啓動nginx
/usr/local/nginx/sbin/nginx -s reload 從新加載nginx 至關於重啓
Redis安裝:
mkdir /usr/local/redis
cd /usr/local/src
上傳或直接wget redis。
tar -zxvf redis-4.0.1
cd redis-4.0.1
安裝
make PREFIX=/usr/local/redis install
複製配置文件
cp /usr/local/src/redis-4.0.1/redis.conf /usr/local/redis/
複製啓動腳本,並重命名
cp /usr/local/src/redis-4.0.1/utils/redis_init_script /etc/rc.d/init.d/redis
#!/bin/sh #chkconfig: 2345 80 90 # # Simple Redis init.d script conceived to work on Linux systems # as it does use of the /proc filesystem. REDISPORT=6379 EXEC=/usr/local/redis/bin/redis-server CLIEXEC=/usr/local/redis/bin/redis-cli PIDFILE=/var/run/redis_${REDISPORT}.pid CONF="/usr/local/redis/conf/${REDISPORT}.conf" case "$1" in start) if [ -f $PIDFILE ] then echo "$PIDFILE exists, process is already running or crashed" else echo "Starting Redis server..." $EXEC $CONF & fi ;; stop) if [ ! -f $PIDFILE ] then echo "$PIDFILE does not exist, process is not running" else PID=$(cat $PIDFILE) echo "Stopping ..." $CLIEXEC -p $REDISPORT shutdown while [ -x /proc/${PID} ] do echo "Waiting for Redis to shutdown ..." sleep 1 done echo "Redis stopped" fi ;; *) echo "Please use start or stop as first argument" ;; esac
$EXEC $CONF & 用於後臺啓動,不要忘記&
#chkconfig: 2345 80 90 這個註釋也要加上,若是不添加上面的內容,在註冊服務時會提示: service redis does not support chkconfig。
EXEC=/usr/local/bin/redis-server 改成 EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli 改成 CLIEXEC=/usr/local/redis/bin/redis-cli
CONF="/etc/redis/${REDISPORT}.conf" 改成 CONF="/usr/local/redis/conf/${REDISPORT}.conf"
mkdir /usr/local/redis/conf
cp /usr/local/src/redis3.0/redis.conf /usr/local/redis/conf/6379.conf
以上配置操做完成後, 即可將 Redis 註冊成爲服務:
# chkconfig --add redis
修改 redis 配置文件設置:
# vi /usr/local/redis/conf/6379.conf
修改以下配置
daemonize no 改成> daemonize yes
pidfile /var/run/redis.pid 改成> pidfile /var/run/redis_6379.pid
protected-mode yes 若是不設置密碼這個要改爲no
port 6379 是端口號 若是修改 文件名和上面的啓動腳本也要修改一下
requirepass 123456 這裏是密碼設置
啓動 Redis 服務
# service redis start
將 Redis 添加到環境變量中:
# vi /etc/profile
在最後添加如下內容:
## Redis env
export PATH=$PATH:/usr/local/redis/bin
使配置生效:
# source /etc/profile
啓動服務
service redis start
Tomcat 安裝:192.168.0.2-192.168.0.3
安裝前先安裝jdk
mkdir /usr/local/java
cd /usr/local/src
tar -zxvf jdk-8u152-linux-x64.tar.gz
mv /usr/local/src/jdk1.8.0_152 /usr/local/java/
添加環境變量
vim /etc/profile
加入以下內容:
JAVA_HOME=/usr/local/java/jdk1.8.0_152/ JRE_HOME=/usr/local/java/jdk1.8.0_152/jre CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin export JAVA_HOME JRE_HOME CLASS_PATH PATH
配置生效
source /etc/profile
測試
java –version
mkdir /usr/local/tomcat
cd /usr/local/src
上傳或直接wget安裝包
tar -zxvf apache-tomcat-8.5.23
mv apache-tomcat-8.5.23/* /usr/local/tomcat
POM.XML <!-- Jedis --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency> <!-- Spring Data Redis --> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</artifactId> <version>1.7.3.RELEASE</version> </dependency> <!-- Spring Session --> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session</artifactId> <version>1.2.2.RELEASE</version> </dependency> <!-- Apache Commons Pool --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> <version>2.4.2</version> </dependency> WEB.XML <filter> <filter-name>springSessionRepositoryFilter</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> </filter> <filter-mapping> <filter-name>springSessionRepositoryFilter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <dispatcher>ERROR</dispatcher> </filter-mapping> redis.xml <bean class="org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration"/> <bean class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"> <property name="hostName" value="localhost" /> <property name="password" value="your-password" /> <property name="port" value="6379" /> <property name="database" value="10" /> </bean>
時間問題先整理這些。。。 過幾天在好好整理整理