Google | GCP HTTP负载均衡
theme: orange
我正在参加「掘金·启航计划」
本篇文章首先回顾之前讲到的虚拟机,K8s的创建方式,同时介绍HTTP负载均衡器创建方法,整个过程基于Cloud Shell 命令行工具。
创建计算实例
- 将实例命名为 nucleus-jumphost-923 。
- 使用“f1-micro”机器类型。
- 使用默认映像类型 (Debian Linux)。
- 配置可用区域为us-east1-b
```
gcloud config set compute/zone us-east1-b
gcloud compute instances create nucleus-jumphost-853 --machine-type f1-micro --zone us-east1-b ```
创建K8s服务集群
- 创建集群(位于 us-east1-b 可用区)以托管该服务。
- 使用 Docker 容器 hello-app (gcr.io/google-samples/hello-app:2.0) 作为临时占位;该团队稍后会将该容器替换为自己创建的容器。
- 在端口 8081 上公开该应用。
``` gcloud config set compute/zone us-east1-b
gcloud container clusters create --machine-type=e2-medium lab-cluster
gcloud container clusters get-credentials lab-cluster
kubectl create deployment hello-server --image=gcr.io/google-samples/hello-app:2.0
kubectl expose deployment hello-server --type=LoadBalancer --port 8081
```
设置HTTP负载均衡器
上文讲到了传统的网络负载均衡器,接下来您将基于包含 2 个 nginx 网络服务器的代管式实例组创建 HTTP 负载均衡器。并且使用以下代码配置网络服务器;
``` cat << EOF > startup.sh
! /bin/bash
apt-get update apt-get install -y nginx service nginx start sed -i -- 's/nginx/Google Cloud Platform - '"\$HOSTNAME"'/' /var/www/html/index.nginx-debian.html EOF ``` 您需要执行的操作:
- 创建一个实例模板。
``` gcloud compute instance-templates create lb-backend-template \ --region= \ --network=default \ --subnet=default \ --tags=allow-health-check \ --machine-type=e2-medium \ --image-family=debian-11 \ --image-project=debian-cloud \ --metadata=startup-script='#! /bin/bash apt-get update
apt-get install -y nginx
service nginx start
sed -i -- "s/nginx/Google Cloud Platform - " \$HOSTNAME"'/' /var/www/html/index.nginx-debian.html'
```
- 创建目标池。
gcloud compute target-pools create www-pool \ --region --http-health-check basic-check
创建代管式实例组。
gcloud compute instance-groups managed create lb-backend-group \ --template=lb-backend-template --size=2 --zone=
创建一条名为 accept-tcp-rule-315 的防火墙规则,以允许定向到端口 80 的 TCP 流量。
```
gcloud compute firewall-rules create accept-tcp-rule-315 \ --network=default \ --action=allow \ --direction=ingress \ --source-ranges=130.211.0.0/22,35.191.0.0/16 \ --target-tags=allow-health-check \ --rules=tcp:80
```
创建一项健康检查。
gcloud compute health-checks create http http-basic-check \ --port 80
创建后端服务,然后使用指定端口 (http:80) 挂接代管式实例组。
``` gcloud compute backend-services create web-backend-service \ --protocol=HTTP \ --port-name=http \ --health-checks=http-basic-check \ --global
gcloud compute backend-services add-backend web-backend-service \ --instance-group=lb-backend-group \ --instance-group-zone= \ --global
```
- 创建网址映射并定位到 HTTP 代理,以将请求路由到您的网址映射。
``` gcloud compute url-maps create web-map-http \ --default-service web-backend-service
gcloud compute target-http-proxies create http-lb-proxy \ --url-map web-map-http
```
- 创建转发规则。
``` gcloud compute forwarding-rules create http-content-rule \ --address=lb-ipv4-1\ --global \ --target-http-proxy=http-lb-proxy \ --ports=80
```
Google | GCP HTTP负载均衡相关推荐
- 转载和积累系列 - L4负载均衡的设计与实现
目录 简介 一.LVS的局限性 1. 数据包转发性能问题 2. HA-主备结构的浪费 3. 转发模式的优缺点 二.google maglev负载均衡 Maglev Consistent Hash Go ...
- 从Google Maglev说起,如何造一个牛逼的负载均衡?
Maglev是谷歌为自己的数据中心研发的解决方案,并于2008开始用于生产环境.在第十三届网络系统设计与实现USENIX研讨会(NSDI '16)上, 来自谷歌.加州大学洛杉矶分校.SpaceX公司的 ...
- 从Google Maglev到UCloud Vortex,如何造一个牛逼的负载均衡?
Maglev是谷歌为自己的数据中心研发的解决方案,并于2008开始用于生产环境.在第十三届网络系统设计与实现USENIX研讨会(NSDI '16)上, 来自谷歌.加州大学洛杉矶分校.SpaceX公司的 ...
- 企业级负载均衡解决方案之一:Google四层负载均衡解决方案Meglev
一.前言 在之前的文章<IPVS概览>中给出了IPVS作为负载均衡解决方案的一些技术要求,但是从产品部署的角度讲,IPVS比较适用的场景还是小规模的内网或者外网部署.由于IPVS是使用Li ...
- 负载均衡_Maglev
昨天在开发者头条上看到了一篇关于G家的负载均衡的介绍:Google 是如何做负载均衡的? 又勾起了之前对负载均衡的研究回忆,因此把负载均衡总结一下,并加入G家的Maglev.(我之前虽然预研了这些负载 ...
- 负载均衡,会话保持,session同步
一,什么负载均衡 一个新网站是不要做负载均衡的,因为访问量不大,流量也不大,所以没有必要搞这些东西.但是随着网站访问量和流量的快速增长,单台服务器受自身硬件条件的限制,很难承受这么大的访问量.在这种情 ...
- 服务器集群负载均衡(F5,LVS,DNS,CDN)区别以及选型
服务器集群负载均衡(F5,LVS,DNS,CDN)区别以及选型 下面是"黑夜路人"的<大型网站架构优化(PHP)与相关开源软件使用建议> =============== ...
- 利用nginx+tomcat+memcached组建web服务器负载均衡
1 起因 最近对新开发的web系统进行了压力测试,发现tomcat默认配置下压到600人的并发登录首页响应速度就有比较严重的影响,一轮出现2000多个的500和502错误.我把登录的时间统计做了一下, ...
- nginx 反向代理和负载均衡
1.nginx负载均衡 网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器.分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上.有时候来自web ...
最新文章
- 有这一篇机器学习全够了
- 图书网上商城blog
- bootstrap 列表--水平定义列表
- idea 这么还原debug_看源码,我为什么推荐IDEA ?
- linux文本编辑器vi实验心得,linux中vi编辑器的练习心得
- 单个像素 亮度 HTML,YUV与像素值之间的关系
- fastcopy比正常复制快多少_高中三年,每个阶段考多少分才正常?快对比一下
- STM32F103C8T6引脚功能分布
- 【LeetCode 剑指offer刷题】特殊数题3:204 Count Primes
- t-sql中引号的使用规则 转
- MaskFlownet图
- C++面试题(数据结构)
- 前端上传组件Plupload使用指南
- 高薪职位不少,这个行业为什么如此缺人才?
- centos7安装mplayer+smplayer
- TensorFlow实现中文字体分类
- 车联网:基于spark的车辆分析
- 大数据时代:大数据发展必备三个条件
- python之函数用法isupper()
- 李航(统计学习方法第四章)
热门文章
- Continual Learning with Deep Generative Replay笔记
- Module windrvr6 is not loaded. Please reinstall the cable drivers. See Answer Record 22648.
- Busybox 安装
- mockmvc技术分享
- 古语云:工欲善其事必先利其器 最新、最全的 IntelliJ IDEA(2018.3.3) 的介绍、安装、破解、配置与使用
- 详解 JavaScript 的 IIFE 语法
- 一级计算机演示文稿试题,计算机等级一级MS Office试题:第四套演示文稿题
- 数据库存储过程(全网最全)
- 未来的交通,需要什么样的道路基础设施?
- apple pencil值不值得购买,ipad第三方电容笔了解下