设为首页 | 收藏本站欢迎来到卓越网络免费免备案CDN加速,DDoS和CC攻击防御,高防CDN管理平台!

已阅读

使用Nginx实例组实现免备案CDN加速外部源站

作者:cdnfine      来源:cdnfine      发布时间:2020-02-25
本文将介绍如何在 Google Cloud 上创建一个 Nginx 反向代理实例组,实现 Google Cloud CDN 回源到外部源站。

本文的配置主要基于下面架构:

使用Nginx实例组实现免备案CDN加速外部源站
文中将介绍的配置主要分为以下几个部分:
  • 创建配置文件存储桶
  • 创建模板虚机实例
  • 创建自定义镜像
  • 创建实例模板
  • 创建托管实例组
  • 创建负载均衡和 CDN
  • 修改和更新代理配置

创建配置文件存储桶

首先创建一个 Cloud Storage 的存储桶,用来存放代理服务器配置文件。

使用Nginx实例组实现免备案CDN加速外部源站

在本地创建一个名为 nginx-proxy-config.conf 的配置文件,并上传到存储桶。配置文件的内容如下,注意将回源域名改为实际使用的域名:

server {
  listen    80;
  server_name ~^(.+)$;
  gzip on;
  gzip_proxied any;
  location / {
    access_log /var/log/nginx/upstream.log;
    add_header Cache-Control "public, max-age=604800";
    proxy_http_version 1.1;
    proxy_pass  https://xxx.s3.amazonaws.com/;
  }
}

创建模板虚机实例

创建一个 GCE VM 实例,用来制作实例组的模板。

使用Nginx实例组实现免备案CDN加速外部源站

在实例创建完毕后,点击“SSH”按钮登录到虚机命令行。

使用Nginx实例组实现免备案CDN加速外部源站

运行以下命令,安装 gcsfuse。

export GCSFUSE_REPO=gcsfuse-`lsb_release -c -s`
echo "deb http://packages.cloud.google.com/apt $GCSFUSE_REPO main" | sudo tee /etc/apt/sources.list.d/gcsfuse.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo apt-get update
sudo apt-get install gcsfuse

修改 /etc/fuse.conf,将”user_allow_other”前面的注释符去掉。

使用Nginx实例组实现免备案CDN加速外部源站

运行下面的命令,将之前创建的存放配置文件的存储桶挂载到本地目录。

mkdir ~/gcs
gcsfuse -o allow_other cdn-proxy-config /home/eugeneyu/gcs

运行下面的命令,确认可以访问到存储桶上的配置文件。

使用Nginx实例组实现免备案CDN加速外部源站

运行下面命令,将可使用的文件句柄上限提高。

sudo su -
ulimit -n 99999
echo "fs.file-max=99999" >> /etc/sysctl.conf
echo "* soft nofile 99999" >> /etc/security/limits.conf
echo "* hard nofile 99999" >> /etc/security/limits.conf
exit

运行以下命令,安装 Nginx 服务。

sudo apt-get update
sudo apt-get install -y nginx

修改 Nginx 的主配置文件 /etc/nginx/nginx.conf,增加最大连接数,并将反向代理配置文件导入。

使用Nginx实例组实现免备案CDN加速外部源站
使用Nginx实例组实现免备案CDN加速外部源站

运行下面命令重启 Nginx:

sudo service nginx restart

测试 Nginx 代理访问源站资源是否成功。请将下面地址中的 IP 替换成 Nginx 服务器的公网 IP,将文件路径替换成源站测试文件的路径。

curl -X GET http://35.198.234.55/do_not_delete/test.txt

创建自定义镜像

基于 Nginx 服务器系统盘创建自定义镜像。

使用Nginx实例组实现免备案CDN加速外部源站
 

创建实例模板

镜像创建好后,创建一个 Instance Template。修改以下配置:
1. “Machine type”根据需要选择 2 vCPUs 或者 4 vCPUs 机型;
2. 修改“Boot disk”配置,选择刚刚创建好的镜像;

使用Nginx实例组实现免备案CDN加速外部源站

3. “Firewall”勾选”Allow HTTP traffic”和”Allow HTTPS traffic”;
4. “Networking”中的“Network tags”填写“cdn-proxy”;

5. Management 中的 Startup script 中填入以下内容,确保新实例启动时自动挂载配置文件存储桶,并增加文件句柄上限。

使用Nginx实例组实现免备案CDN加速外部源站

配置好后,点击“Create”按钮创建模板。

创建托管实例组

创建实例组。修改以下配置。

  1. Location 选择 Multiple zones
  2. Region 选择离源站最近的区域,比如新加坡为 asia-southeast1
  3. Instance template 选择上一步创建好的模板
  4. Minimum number of instances 根据预估用量选择机器数量,比如 5000 QPS 可以选择 5 台
  5. Health check 创建一个 80 端口的健康检查,各项配置采用默认值

使用Nginx实例组实现免备案CDN加速外部源站

配置好后,点击“Create”按钮创建实例组。

创建负载均衡和 免备案CDN加速

  • 选择 HTTP(S) Load Balancing

使用Nginx实例组实现免备案CDN加速外部源站
  • Backend Configuration 选择 Create a backend service

使用Nginx实例组实现免备案CDN加速外部源站
  • 在新建的 Backend service 配置中选择之前创建的 Instance group,勾选“Enable Cloud CDN”,并选择之前创建的 HTTP 健康检查。

使用Nginx实例组实现免备案CDN加速外部源站
  • 在 Frontend configuration 中的 IP address 选择 Create IP address,创建一个固定公网地址用于 CDN 前端访问地址。

配置好后,点击“Create”按钮创建负载均衡和 CDN。

负载均衡和 高防CDN加速大概需要 15-20 分钟初始化。之后可以访问相关文件进行测试。

修改和更新代理配置

如果源站域名等配置需要修改,可以更新 Nginx 代理配置,重新上传到配置存储桶覆盖之前文件,并用以下脚本将实例组中所有实例的 Nginx 运行 reload 更新配置。

#!/bin/bash
# Example: ./nginx_reload.sh mig_nginx
mig_nginx='mig-cdn-proxy-india-v8'
region=asia-south1
if [ "$1" != "" ]; then
	mig_nginx=$1
fi
instance_array=( $(gcloud compute instance-groups list-instances --region=$region $mig_nginx | cut -d" " -f1) )
total_instances=$(expr ${#instance_array[@]} - 1)
if [ ${#instance_array[@]} -eq 0 ]; then
	echo "Instance Group doesn't exist or is empty!"
	exit
else
	echo "Instance Group has $total_instances instances"
fi
for (( i=1; i<=$(( ${#instance_array[@]} )) - 1; i++ ))
do
	echo -n "Reload Nginx config file on ${instance_array[i]}..."
	gcloud compute ssh ${instance_array[i]} --command="sudo service nginx reload"
done
echo -e '\nDone!'
 
套餐价格
新闻资讯
  • > 图片CDN加速将再次爆发吗?
  • > 使用Nginx实例组实现免备案CDN加速外部源
  • > 新冠疫情下,网站CDN加速成为口罩一样的
  • > 中国人要是闲起来,什么高防服务器都能
  • > 用国内高防CDN加速实现了钉钉打卡没有崩
  • > 绕过国内免备案cdn查找网站真实ip
  • > 高防CDN行业点评:云视频带动海外CDN行业
  • > 云高防CDN加速,云诊疗,你真的了解云计
  • > 创业互联网公司如何搭建自己的技术架构
Keywords: 免费CDN加速 免备案CDN加速 高防CDN加速

玻璃钢生产厂家钦州玻璃钢雕塑制作江西户内玻璃钢雕塑图片商场主题创意商业美陈步骤湖北锻铜玻璃钢人物雕塑厂家四川室内商场美陈怎么样赣州玻璃钢雕塑摆件商场美陈管理规范动物玻璃钢雕塑哪家便宜辽宁玻璃钢鹿雕塑安徽大型玻璃钢雕塑厂中山加工玻璃钢卡通雕塑河北超市商场美陈多少钱济南定制玻璃钢雕塑优势成都玻璃钢广场雕塑厂家佛像玻璃钢雕塑多少钱滁州动物玻璃钢雕塑厂家中式玻璃钢雕塑加工厂玉溪玻璃钢雕塑厂上海盐城玻璃钢雕塑内蒙古商场美陈装饰台前玻璃钢雕塑价格深圳周年庆典商场美陈厂家供应温州塑像玻璃钢雕塑珠海玻璃钢雕塑供应南昌玻璃钢商场美陈肇庆玻璃钢卡通雕塑经销商贵州动物玻璃钢雕塑制作黄埔商场美陈玻璃钢猎狗雕塑山东人物玻璃钢雕塑价格香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化