论坛

Google Kubernetes E ...
 
通知事项
全部清除

Google Kubernetes引擎快速入门-使用Redis和PHP中国体育彩票开奖留言簿  


太极
帖子:83
主持人
(@太极)
会员
已加入:8个月前

本教程演示了如何构建多层Web应用程序  使用  Google Kubernetes引擎(GKE)。教程应用程序是一个留言簿,它允许 visitors to enter text in a log 和 see 的 last few logged entries.

本教程显示了如何在带有负载的外部IP地址上设置留言簿Web服务 balancer 和 how to run a  雷迪斯  cluster 与 a single master 和 multiple workers.

GCP 将资源组织到项目中。这使您能够 在一个地方收集单个应用程序的所有相关资源。

首先,为本教程中国体育彩票开奖一个新项目或选择一个现有项目。

选择一个项目,或

导航到Kubernetes引擎

打开  在控制台的左上角,然后选择 Kubernetes引擎.

中国体育彩票开奖一个Kubernetes集群

一个集群至少由一个集群主计算机和多个工作服务器组成 机器叫  节点 . You deploy applications to clusters, 和 的 applications 在节点上运行。

  1. 点击  按钮。

  2. 进入一个  对于这个集群。

  3. 选择一个  对于这个集群。

  4. 请点击   中国体育彩票开奖集群。

 

获取示例应用程序代码

云 Shell是控制台的内置命令行工具。在这个部分, 您将启动Cloud Shell并将其用于获取示例应用程序代码。后来, 您将使用Cloud Shell通过预构建的容器映像运行示例应用程序。

开放云壳

通过单击打开Cloud Shell   控制台右上角导航栏中的按钮。

获取示例代码

克隆示例代码:

 

导航到包含示例代码的目录:

cd范例/来宾

 

设置Redis主服务器

在本部分中,您将部署Redis主服务器并验证其是否正在运行。

Set up gcloud 和 kubectl credentials

gcloud容器群集\ get-credentials [cluster-name] \ --zone [cluster-zone]
 
更换[cluster-name] and [cluster-zone] with 的 名称 和 区 of 的 instance that you created.

探索控制器

查看控制器的配置文件:

cat redis-master-deployment.yaml
 
该文件包含用于部署Redis主服务器的配置。的spec 栏位定义广告连播 控制器用于中国体育彩票开奖Redis Pod的规范。的 image tag 指从注册表中提取的Docker映像。

部署主控制器

部署Redis主服务器:

kubectl中国体育彩票开奖-f \ redis-master-deployment.yaml
 
 
 

查看正在运行的吊舱

验证Redis主Pod是否正在运行:

kubectl得到豆荚

 

中国体育彩票开奖redis-master服务

在本部分中,您将中国体育彩票开奖一个服务以将流量代理到Redis主pod。

查看您的服务配置:

cat redis-master-service.yaml
 
 

此清单文件定义了一个名为 redis-master 带有一组标签 选择器。这些标签与部署在 前一步。

中国体育彩票开奖服务:

kubectl中国体育彩票开奖-f \ redis-master-service.yaml
 
 

验证服务已中国体育彩票开奖:

kubectl获得服务

 

中国体育彩票开奖Redis Worker服务

留言簿应用程序需要与Redis工作者进行通信以读取数据。为了使  雷迪斯 工人可发现,您需要设置服务。服务提供透明 对一组Pod进行负载平衡。

查看定义工作者服务的配置文件:

catredis-slave-service.yaml
 

该文件定义了一个名为 redis-slave 在端口6379上运行。请注意,  selector 服务的字段与上一个中国体育彩票开奖的Redis worker容器匹配  步。

中国体育彩票开奖服务:

kubectl中国体育彩票开奖-f \redis-slave-service.yaml
 
 
验证服务已中国体育彩票开奖:
kubectl获得服务

 

设置留言簿Web前端

现在,您已经建立并运行了访客留言簿的Redis存储,现在启动访客留言簿网站 服务器。与Redis worker一样,这是由部署管理的复制应用程序。

本教程使用一个简单的PHP前端。它配置为与Redis工作人员对话 或主服务,具体取决于请求是读还是写。它暴露了一个简单的 JSON interface 和 serves a user experience based on jQuery 和 Ajax.

中国体育彩票开奖前端部署

kubectl中国体育彩票开奖-f \frontend-deployment.yaml
 
 

将前端公开在外部IP地址上

您在先前步骤中中国体育彩票开奖的服务只能在容器集群中访问, 因为服务的默认类型不会将其公开给Internet。

要使Guestbook Web前端服务在外部可见,您需要指定类型 LoadBalancer 在服务配置中。

使用以下命令替换 NodePort  LoadBalancer 在里面 type 规范 在里面 frontend-service.yaml 配置文件:

sed -i -e \'s / NodePort / LoadBalancer / g'\frontend-service.yaml
 
 

中国体育彩票开奖服务

中国体育彩票开奖服务:

kubectl中国体育彩票开奖-f \frontend-service.yaml
 
 
 

访问留言簿网站

您的网站正在运行!

查找您的外部IP地址

列出服务:

kubectl获得服务--watch
 
 
 
 

等到您在 External IP  frontend 服务。 这可能需要一分钟。要停止监视服务,请按Ctrl + C。

访问应用程序

从以下地址复制IP地址 External IP column, 和 load 的 page in your browser.

 

 
 

清理

With a GKE cluster running, you can create 和 delete resources 与 的 kubectlcommand-line client.

要删除集群,请选择nextto 的 cluster 名称 和 click 的 按钮。

 

结论

恭喜你!您已使用部署了多层留言簿应用程序 Google Kubernetes引擎。

以下是一些有关下一步操作的建议:

 

2 回覆
太极
帖子:83
主持人
(@太极)
会员
已加入:8个月前

[电子邮件 protected]:〜/ examples / guestbook(jyan-51sec-org-test1)$ kubectl获取广告连播
名称就绪状态重启年龄
redis-master-596696dd4-m875s 1/1运行中0 7m1s
redis-slave-96685cfdb-jvnrm 0/1 ContainerCreating 0 4秒
redis-slave-96685cfdb-qq5gs 0/1 ContainerCreating 0 4秒
[电子邮件 protected]:〜/ examples / guestbook(jyan-51sec-org-test1)$ catredis-slave-service.yaml
apiVersion:v1
种类:服务
元数据:
名称:redis-slave
标签:
应用:redis
角色:奴隶
层:后端
规格:
端口:
-端口:6379
选择器:
应用:redis
角色:奴隶
层:后端
[电子邮件 protected]:〜/ examples / guestbook(jyan-51sec-org-test1)$ kubectl create -f \
>redis-slave-service.yaml
服务/重新中国体育彩票开奖从属
[电子邮件 protected]:〜/ examples / guestbook(jyan-51sec-org-test1)$ kubectl获取服务
名称类型集群IP外部IP端口的年龄
kubernetes ClusterIP 10.8.0.1<none> 443/TCP 8m48s
redis-master ClusterIP 10.8.3.215<none> 6379/TCP 7m19s
redis-slave ClusterIP 10.8.15.157<none> 6379/TCP 4s
[电子邮件 protected]:〜/ examples / guestbook(jyan-51sec-org-test1)$ kubectl create -f \
>frontend-deployment.yaml
已中国体育彩票开奖deployment.apps / frontend
[电子邮件 protected]:〜/ examples / guestbook(jyan-51sec-org-test1)$ sed -i -e \
>'s / NodePort / LoadBalancer / g'\
>frontend-service.yaml
[电子邮件 protected]:〜/ examples / guestbook(jyan-51sec-org-test1)$ kubectl create -f \
>frontend-service.yaml
服务/前端中国体育彩票开奖
[电子邮件 protected]:〜/ examples / guestbook(jyan-51sec-org-test1)$ kubectl获取服务--watch
名称类型集群IP外部IP端口的年龄
前端LoadBalancer 10.8.9.171<pending> 80:32744/TCP 17s
kubernetes ClusterIP 10.8.0.1<none> 443/TCP 9m41s
redis-master ClusterIP 10.8.3.215<none> 6379/TCP 8m12s
redis-slave ClusterIP 10.8.15.157<none> 6379/TCP 57s
姓名年龄
前端39

回复
太极
帖子:83
主持人
(@太极)
会员
已加入:8个月前

rGb1sxK.png(1321×622)

回复
分享: