【实操】Kubernetes如何搭建游戏架构?

摘要 Kubernetes,简称K8s,是Google开发的,目前最为流行的容器编排和管理引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。K8s的特性使得它适用于架构复杂且要求高的服务,也就是游戏架构的搭建。 由于Cloud Ace为谷歌云代理公司,所以我们本次分享的实操是在谷歌开发的Google Kubernetes Engines上运行的,GKE是谷歌基于K8s所开发的Kubernetes管理平台,主要在谷歌云平台上运行。 Kubernetes与微服务架构 随着应用的发展,程序变得越来越复杂,传统一体化架构的服务会造成巨大的不便,比如说:新增功能与测试放在一起,使得程序十分复杂;开发和利用新语言和新框架的效率低;安全性低,所有的模块构建在一个process里,一旦出现bug可能牵一发而动全身。 而微服务 (microservices) 架构正好解决了这样的问题,将每一个具有商业逻辑的服务独立出来,例如不再将所有资料都写入同一个资料库,而是每个单独的服务都有一个最适合自己本身结构的资料库。好处是让每个服务都可以用最适合自己的语言、资料库来开发。在实操时,每一个商业功能/服务都可能是一台 VM 或者一个容器。 微服务架构的出现给了游戏一个新的选择,下图的两个架构就是游戏使用的架构,都是通过不同的功能模块来划分的,按功能模块划分不同的服务,前端通过HAProxy来代理用户请求,后端服务可以根据负载来实现扩缩容。在服务发现模块中,通过registrator来监视容器的启动和停止,根据容器暴露的端口和环境变量自动注册服务,后端存储使用了consul,结合consul-template来发现服务的变化时,可以更新业务配置,并重载。 K8s就是微服务架构 前面提到K8s适合微服务架构,为什么呢? 因为k8s的架构与微服务十分相似,在某些功能上是一致的,第一就是k8s的master和node,可以实现不同功能不同服务器之间的隔离;第二是k8s上面提供了API server,基本上可以等同于网关;第三是k8s的服务编排性能好,可以实现弹性伸缩;第四点是k8s的configmap基本上可以作为配置中心;第五是k8s可以通过在node上部署agent来实现日志的收集和监控。 Kubernetes 将数个容器组合起来成一个服务(Service,注:Service 是 K8S 的专有名词,下面会介绍),Kubernetes 也提供了良好的服务发现(Service discovery)机制,让每个服务彼此可以通信。最重要的是 K8S 强大的编程可以自动扩展服务,甚至还可以对大规模的容器作滚动更新 (Rolling update) 以及回滚机制…

Continue Reading 【实操】Kubernetes如何搭建游戏架构?

如何为自定义源站启用 Google CDN (外部网站的 Google CDN 配置)

(1)作为第一步,让我们配置新的 HTTP(S) 负载均衡器。 首先打开谷歌云平台,直接搜索CDN,单击上一个屏幕上的“ Add origin”。 (2)然后单击“继续” (3)选择“use a custom origin”并单击“Create a load balancer”。 (4)输入负载均衡器的唯一名称,单击“backend configuration”并创建后端服务(create a backend service)。 (5)输入名称并选择后端类型为“Internet network endpoint group”,根据需要更改协议 - Google 负载均衡器将使用此协议连接到源服务器。我将使用 HTTP 协议进行演示,从“Internet network endpoint…

Continue Reading 如何为自定义源站启用 Google CDN (外部网站的 Google CDN 配置)

如何通过谷歌云平台设置 Load Balancing 和 CDN

1.创建instance templates(实例模板) 首先,创建一个实例模板来启动一个在负载均衡器后面充当应用服务器的实例。在这个演示中,我们不会在实例中实际启动 Web 应用程序。相反,将 Apache HTTP Server 配置为在端口 80 上运行并响应端口 80 的请求。启动多个这样的实例并将它们放在您的负载均衡器后面。 打开浏览器控制台后,点击左侧菜单中的Compute Engine-> Instance template。就是下图中红框包围的部分。 当实例模板屏幕打开时,单击创建实例模板以转到实例模板创建屏幕。 [Machine type] 选择“Small (1 shared vCPU)”,[Firewall] 勾选“Allow HTTP Traffic”。然后单击管理、磁盘、网络、SSH 密钥并在其下方的启动脚本(可选)文本区域中输入以下内容: sudo apt-get…

Continue Reading 如何通过谷歌云平台设置 Load Balancing 和 CDN

谷歌开源项目open saves介绍:游戏专用的云原生存储

今天许多大型 AAA 级游戏,都致力打造“身历其境”的丰富体验,让玩家穿梭于逼真的游戏世界与故事线中。当然,要运营这样的一款游戏,就需要大量的储存、高效能的储存技术来确保游戏资料能达到玩家要求水平。游戏开发人员不仅需要储存不同类型的资料(例如存档、库存、补丁、回放等),还必须保持储存系统的高性能、可用​​性、可扩展性和成本效益。 近期 Google 就与游戏商 2K 共同开源一项 Open Saves 项目,这是一项专为多个储存后端所打造的单一界面,由 Google Cloud 提供支援并与 2K 合作开发。现在,开发团队可以储存游戏资料,而无需为该使用哪种储存解决方案如:Cloud Storage、Memorystore、Firestore 做出技术决策。 2K 的 IT 安全副总裁 Joe Garfola 表示:“Open Saves 表明了我们致力与顶尖开发者,合作游戏解决方案的承诺。要做到这件事,需要具备游戏产业的丰富经验,以及 Google 这样的规模。我们很期待和 Google…

Continue Reading 谷歌开源项目open saves介绍:游戏专用的云原生存储

BigQuery——谷歌企业级大数据分析工具介绍

BigQuery 是什么?在这个强调大数据分析的时代,BigQuery 为何能享有"地表最强资料分析工具"的称号?这次 Cloud Ace 将彻底比较 BigQuery 和传统资料仓储,从速度、费用和技术门槛等方面切入,带大家认识这个由Google 推出的强大云端资料仓储服务。 BigQuery 为何适合大数据分析?原来和Google Ads有关 要理清 BigQuery 为什么适合大数据分析,我们可以先思考一个问题:Google 是做什麽起家的?答案很显而易见就是"搜寻引擎"。但这边大家可能会困惑,搜寻引擎不是免费吗?那它靠什么赚钱?答案很简单,搜寻引擎的收入就是大家都很熟悉的 Google Ads ! Google Ads 对 Google 来说有多重要?搜寻引擎满足全世界的用户查询资料的需求,于是全世界的商家都在 Google 搜寻引擎上面买广告。而这时问题来了,Google Ads 的投放方式必须要依照使用者输入的关键字、使用者所使用的语言及他所在的国家来正确投放和关键字相关的广告,但像这麽大的资料量,每天有几十亿人在线上查询,Google 到底是如何做到能够正确投放广告的呢?这时就要欢迎 Google 的超高速分析工具…

Continue Reading BigQuery——谷歌企业级大数据分析工具介绍

十分钟看懂谷歌云数据湖解决方案

根据Advanced Market Analytics 的数据,到 2024 年全球数据湖市场预计将达到近 120 亿美元。什么是数据湖?它是如何工作的?利用数据湖有什么好处?谷歌云又是如何搭建自己的数据湖解决方案的? 一、什么是数据湖? 云数据湖是一个云托管的集中式存储库,允许我们以任何规模存储所有结构化和非结构化数据,通常使用对象存储。云数据湖可用于存储组织的数据,包括从内部和外部操作和交互生成的数据。 数据湖能够打破数据孤岛并集成各种分析,以深入了解行业并指导更好的业务决策。 二、谷歌云的数据湖解决方案 数据湖分为数据摄取、数据存储、数据处理和分析、工作流创建和实施四个阶段(数据集市、实时分析、机器学习),而谷歌云针对四个阶段可提供其独家解决方案。 1.数据摄取 数据湖架构必须能够从不同来源摄取不同数量的数据,例如物联网 (IoT) 传感器、网站上的点击流活动、在线交易处理 (OLTP) 数据和本地数据等。而谷歌可以提供以下服务用于摄取数据: Pub/Sub 与 Dataflow: 可以将实时数据直接摄取和存储到 Cloud Storage,根据数据量进行扩展和扩展。 Storage Transfer Service: 移动大量数据不像发出单个命令那样简单,必须处理诸如安排定期数据传输、在源和接收器之间同步文件或根据过滤器有选择地移动文件等问题。Storage Transfer Service 提供了一种强大的机制来完成这些任务。…

Continue Reading 十分钟看懂谷歌云数据湖解决方案

Google Cloud 大数据:在 GCP 上构建您的大数据架构

大数据是目前互联网热词之一,而众多云计算平台也纷纷搭建了数据处理架构,让用户在使用云服务的时候储存、处理、分析数据。接下来我们就来聊一下谷歌云平台提供的大数据服务。 Google Cloud Platform(以下简称GCP) 提供多种支持大数据存储和分析的服务。可能最重要的是 BigQuery,这是一个高性能的 SQL 兼容引擎,可以在几秒钟内对非常大的数据量进行分析。GCP 提供多种其他服务,包括 Dataflow、Dataproc 和 Data Fusion,可帮助您创建完整的基于云的大数据基础架构。 谷歌云大数据服务 谷歌提供了许多大数据服务,包括以下 谷歌云大数据服务一览 Google Cloud BigQuery BigQuery 可让我们存储和查询包含大量数据的数据集。该服务采用表结构,支持 SQL,并与所有 GCP 服务无缝集成。可以将 BigQuery 用于批处理和流式处理。此服务非常适合离线分析和交互式查询。 Google Cloud Dataflow Dataflow…

Continue Reading Google Cloud 大数据:在 GCP 上构建您的大数据架构

选择谷歌云作为海外云服务商的7个理由!

根据Canalys的统计数据,2021年第二季度谷歌云业务占比排名全球第三,占比8%,成为全球第三云服务提供商,相比2020年第二季度谷歌云营收同比增速53.9%。而21年6月,有消息称苹果成谷歌云存储最大企业客户,今年将为谷歌云服务花费约 3 亿美元。而在苹果购买谷歌云服务后,谷歌云的前5大客户分别为:苹果、字节跳动、Spotify、Twitter、Snapchat。在公布了第二季度财报后,谷歌母公司Alphabet的股价上升3%,而股价分析师也上调了对Alphabet的股价指导。 为什么众多企业纷纷选择了谷歌云(GCP)呢? 1. 价格 在ToB业务中,价格永远是第一要素,Google 以分钟为单位计费(最低收费为 10 分钟),因此只需为使用的计算时间付费,而且谷歌云在客户作出使用承诺后,可提供了相应的折扣,用的越多则价格越低。 以下是某网站的GCP和AWS价格对比,相同的服务器和数据库,相同的使用量,谷歌云的价格为AWS价格的77%。虽然在实际的使用过程中,需求有所不同,但是总体而言,谷歌云的定价会比AWS低20%-30%。 价格对比 2. 独家私有全球光纤+分层网络 2016 年 6 月 29 日,Google 宣布投资FASTER Cable System,该系统使 Google 可以访问美国和日本之间 60Tbps 的电缆总带宽中的 10Tbps(每秒太比特)。他们将其用于 Google Cloud…

Continue Reading 选择谷歌云作为海外云服务商的7个理由!