25.2.3.5. 启动 Apache HTTP 服务器实例作为 VPC 的 mod_cluster 代理和 NAT 实例
概述
本节介绍启动 Apache HTTP 服务器实例作为 VPC 的 mod_cluster 代理和 NAT 实例所需的步骤。
过程 25.9. 启动 Apache HTTP 服务器实例作为 VPC 的 mod_cluster 代理和 NAT 实例
- 为这个实例创建一个有弹性的 IP 地址。
- 选择 AMI
- 进入 Security Group 并允许所有流量(如果需要的话用 Red Hat 企业版 Linux 的内置防火墙功能来限制访问)。
- 在 VPC 的公共子网里选择 "
running"。 - 选择一个静态 IP (如:
10.0.0.4)。 - 在 User Data: 字段添加下列内容:
JBOSSCONF=disabled cat > $USER_SCRIPT << "EOS" echo 1 > /proc/sys/net/ipv4/ip_forward echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter iptables -I INPUT 4 -s 10.0.1.0/24 -p tcp --dport 7654 -j ACCEPT iptables -I INPUT 4 -p tcp --dport 80 -j ACCEPT iptables -I FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -I FORWARD -s 10.0.1.0/24 -j ACCEPT iptables -t nat -A POSTROUTING -o eth0 ! -s 10.0.0.4 -j MASQUERADE # balancer module incompatible with mod_cluster sed -i -e 's/LoadModule proxy_balancer_module/#\0/' /etc/httpd/conf/httpd.conf cat > /etc/httpd/conf.d/mod_cluster.conf << "EOF" #LoadModule proxy_module modules/mod_proxy.so #LoadModule proxy_ajp_module modules/mod_proxy_ajp.so LoadModule slotmem_module modules/mod_slotmem.so LoadModule manager_module modules/mod_manager.so LoadModule proxy_cluster_module modules/mod_proxy_cluster.so LoadModule advertise_module modules/mod_advertise.so Listen 7654 # workaround JBPAPP-4557 MemManagerFile /var/cache/mod_proxy/manager <VirtualHost *:7654> <Location /mod_cluster-manager> SetHandler mod_cluster-manager Order deny,allow Deny from all Allow from 127.0.0.1 </Location> <Location /> Order deny,allow Deny from all Allow from 10. Allow from 127.0.0.1 </Location> KeepAliveTimeout 60 MaxKeepAliveRequests 0 ManagerBalancerName mycluster ServerAdvertise Off EnableMCPMReceive On </VirtualHost> EOF echo "`hostname | sed -e 's/ip-//' -e 'y/-/./'` `hostname`" >> /etc/hosts semanage port -a -t http_port_t -p tcp 7654 #add port in the apache port list for the below to work setsebool -P httpd_can_network_relay 1 #for mod_proxy_cluster to work chcon -t httpd_config_t -u system_u /etc/httpd/conf.d/mod_cluster.conf #### Uncomment the following line when launching a managed domain #### # setsebool -P httpd_can_network_connect 1 service httpd start EOS - 禁用这个实例的 Amazon EC2 云源/目的地检查,让它可以充当路由器。
- 右击运行的 Apache HTTP 服务器实例并选择 "Change Source/Dest check"。
- 点击 Yes, Disable。
- 为这个实例分配弹性 IP 地址。
结果
已成功启动 Apache HTTP 服务器实例。