设为首页收藏本站language 语言切换
查看: 929|回复: 0
收起左侧

初识Google Kubernetes Engine(GKE)

[复制链接]
发表于 2018-4-25 13:02:58 | 显示全部楼层 |阅读模式
导读
Google 的 k8s 在 2017 年已经从容器编排领域的竞争中取得主导地位,从 Docker 之前的一度排挤到最终完全拥抱 k8s,显然 k8s 已经成了目前业界的标准。


但是到目前为止能提供 k8s 完全托管服务的云服务商少之又少,即便是目前在云提供商有统治力的 AWS 也没有完全提供 k8s 托管服务,仅仅提供有限的定制服务,在这一方面并不成熟。
然而 Google 的 k8s 托管服务,即 GKE,却将 k8s 托管服务做到了极致(至少目前看来),不仅提供了全套的 k8s 托管服务,更引人注目的是 Google 已然将 Autoscaler 和 k8s 集成,实现了 k8s 节点的自动伸缩机制,能根据 pod 的需求自动化添加或删除节点,当现有节点无法承载新的服务时会自动添加节点来满足需求,当现有节点足够空闲时会启用调节机制自动化收缩节点,从某种意义上来说这几乎做到了无服务器的理念。
然而这也许只是冰山一角,更多强大的功能还需要进一步探索,本文只是一个入门指南,主要指导能快速开始上手基于 Google Cloud Platform 的 GKE 服务(k8s 托管服务)。
GKE 入门指南
接下来我们一步步指引如何使用 GKE 来部署服务,前提是对 k8s 有所了解,能简单使用 kubectl 命令。
1. 安装并配置 Google Cloud SDK
Google Cloud SDK 是 访问 GCP(Google Cloud Platform)平台各种资源的命令行工具集,类似 aws 的 aws 命令行工具。
安装和配置就不多说了,点击下面链接选择相应操作系统版本的 tar 包下载,然后解压,在 PATH 环境变量中添加 google-cloud-sdk/bin 即可
2. 初始化 Google Cloud SDK
初始化 Google Cloud SDK 是将 gcloud 命令和 Google 账号绑定起来并设置一些其他的默认值,比如区域,代理,账号,项目(Google 账号中新建的项目)之类的。
在执行 gcloud init 初始化之前得先给 gcloud 配置 HTTP 代理(GFW 你懂得),具体配置见我之前这篇文章。然后执行 gcloud init 完成初始化,直接根据向导来即可。
3. 到 Google Cloud Platform 控制台建一个 k8s 集群,记住名称

4. 安装 gcloud kubectl 组件
gcloud components install kubectl 5. 获取群集的身份验证凭据
创建群集后,您需要获取身份验证凭据以与群集进行交互。要为集群进行身份验证,请运行以下命令:
gcloud container clusters get-credentials <上一步创建的集群名称> 6. 接下来部署一个简单的 hello-server 服务到 GKE
kubectl run hello-server --image gcr.io/google-samples/hello-app:1.0 --port 8080相关链接
https://cloud.google.com/kubernetes-engine/docs/quickstart https://cloud.google.com/sdk/docs/quickstart-macos?hl=zh-cn附录
gloud 常用命令
gcloud auth login --no-launch-browser # gcloud 登录认证gcloud config set compute/zone [COMPUTE_ZONE] # 设置默认区域gcloud components list # 列出可安装组件gcloud components install [组件名称] # 安装组件gcloud components update  # 更新所有已安装组件gcloud components remove [组件名称] # 卸载已安装组件设置 gcloud http 代理
gcloud config set proxy/type httpgcloud config set proxy/address 127.0.0.1gcloud config set proxy/port 1087设置集群 docker 私服认证
kubectl create secret docker-registry regcred --docker-server= --docker-username= --docker-password= --docker-email=注意:设置 docker 私服后,要在 GKE 部署 k8s 服务,必须得在 k8s 资源文件(yaml 格式)中的 container
同一级指定 imagePullSecrets 键,要不然仍然无法拉取配置的私服的镜像,示例资源文件如下:
apiVersion: v1kind: Podmetadata:  name: private-regspec:  containers:  - name: private-reg-container    image:   imagePullSecrets:  - name: regcred查看集群 docker 私服配置
kubectl get secret regcred --output=yaml      #base64 格式 显示kubectl get secret regcred --output="jsonpath={.data.\.dockerconfigjson}" | base64 -d # base64
免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好,开源站点:https://www.linuxprobe.com/

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-3-13 22:06 , Processed in 0.062180 second(s), 21 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表