Home >System Tutorial >LINUX >First introduction to Google Kubernetes Engine (GKE)
But so far, there are very few cloud service providers that can provide k8s fully managed services. Even AWS, which is currently the dominant cloud provider, does not fully provide k8s managed services and only provides limited customized services. In this regard, It's not mature yet.
However, Google’s k8s hosting service, namely GKE, has taken k8s hosting service to the extreme (at least for now). It not only provides a full set of k8s hosting services, but what is even more striking is that Google has integrated Autoscaler and k8s to achieve With the automatic scaling mechanism of k8s nodes, nodes can be automatically added or deleted according to the needs of pods. When existing nodes cannot carry new services, nodes will be added automatically to meet demand. When existing nodes are idle enough, the adjustment mechanism will be enabled to automatically shrink. Node, in a sense, this almost achieves the concept of serverless.
However, this may be just the tip of the iceberg, and more powerful functions need to be further explored. This article is just an introductory guide, which mainly provides guidance to quickly get started with GKE services (k8s hosting services) based on Google Cloud Platform.
Next, we will provide step-by-step instructions on how to use GKE to deploy services. The premise is that you have some understanding of k8s and can simply use the kubectl command.
Google Cloud SDK is a set of command line tools for accessing various resources on the GCP (Google Cloud Platform) platform, similar to the aws command line tool of aws.
Not much to say about installation and configuration. Click the link below to select the tar package of the corresponding operating system version to download, then unzip it and add google-cloud-sdk/bin to the PATH environment variable
Initializing the Google Cloud SDK is to bind the gcloud command to the Google account and set some other default values, such as region, proxy, account, project (new project in the Google account), etc.
Before executing gcloud init initialization, you must first configure the HTTP proxy (you know GFW) for gcloud. Please see my previous article for the specific configuration. Then execute gcloud init to complete the initialization and just follow the wizard.
gcloud components install kubectl
After creating the cluster, you need to obtain authentication credentials to interact with the cluster. To authenticate to the cluster, run the following command:
gcloud container clusters get-credentials <上一步创建的集群名称>
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
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 config set proxy/type http gcloud config set proxy/address 127.0.0.1 gcloud config set proxy/port 1087
kubectl create secret docker-registry regcred --docker-server= --docker-username= --docker-password= --docker-email=
注意:设置 docker 私服后,要在 GKE 部署 k8s 服务,必须得在 k8s 资源文件(yaml 格式)中的 container
同一级指定 imagePullSecrets 键,要不然仍然无法拉取配置的私服的镜像,示例资源文件如下:
apiVersion: v1 kind: Pod metadata: name: private-reg spec: containers: - name: private-reg-container image: imagePullSecrets: - name: regcred
kubectl get secret regcred --output=yaml #base64 格式 显示 kubectl get secret regcred --output="jsonpath={.data.\.dockerconfigjson}" | base64 -d # base64
The above is the detailed content of First introduction to Google Kubernetes Engine (GKE). For more information, please follow other related articles on the PHP Chinese website!