Google cloud: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 176: Строка 176:
 
</PRE>
 
</PRE>
   
  +
>>>Backend services that do not have a valid global forwarding rule referencing it will not be health checked and so will have no health status.
==Ссылки===
 
  +
  +
===URL MAPS===
  +
  +
https://cloud.google.com/compute/docs/load-balancing/http/url-map
  +
  +
<PRE>
  +
gcloud compute url-maps create mmazur-test-url-map --default-service mmazur-test-backend-service
  +
Created [https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/urlMaps/mmazur-test-url-map].
  +
NAME DEFAULT_SERVICE
  +
mmazur-test-url-map mmazur-test-backend-service
  +
</PRE>
  +
  +
  +
<PRE>
  +
gcloud compute url-maps describe mmazur-test-url-map
  +
creationTimestamp: '2017-02-07T03:12:16.708-08:00'
  +
defaultService: https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/backendServices/mmazur-test-backend-service
  +
description: ''
  +
fingerprint: VIXzHlhGDb8=
  +
id: '8910554993819653503'
  +
kind: compute#urlMap
  +
name: mmazur-test-url-map
  +
selfLink: https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/urlMaps/mmazur-test-url-map
  +
</PRE>
  +
  +
  +
===Target Proxy===
 
==Ссылки==
 
* http://containertutorials.com/get_started_kubernetes/k8s_example.html
 
* http://containertutorials.com/get_started_kubernetes/k8s_example.html

Версия 13:14, 7 февраля 2017

Заметки

  • gcloud init --console-only
  • gcloud container clusters list
 gcloud container clusters list
NAME                    ZONE           MASTER_VERSION  MASTER_IP       MACHINE_TYPE   NODE_VERSION  NUM_NODES  STATUS
amp-kubernetes-cluster  us-central1-b  1.4.8           104.198.73.45   n1-standard-2  1.4.7 *       5          RUNNING
k-poc-search-1          us-central1-b  1.4.8           104.198.72.131  n1-standard-4  1.4.7 *       4          RUNNING
k-poc-search-2          us-central1-b  1.5.2           104.154.220.59  n1-highmem-4   1.5.2         2          RUNNING
mmazur-sandbox-1        us-central1-b  1.5.2           104.198.34.251  n1-standard-1  1.5.2         3          RUNNING

Получить креденции (kubectl будет настроен автоматически)

  • gcloud container clusters get-credentials mmazur-sandbox-1
Fetching cluster endpoint and auth data.
kubeconfig entry generated for mmazur-sandbox-1.
kubectl get pods
No resources found.

Создать тестовый деплоймент

kubectl run hello-node --image=gcr.io/google-samples/node-hello:1.0 --port=8080
 kubectl expose deployment hello-node --type="NodePort"

Таким образом сервис будет доступен на всех нодах кластера на случайно выбранном порту

kubectl get service
NAME         CLUSTER-IP     EXTERNAL-IP   PORT(S)          AGE
hello-node   10.3.246.117   <nodes>       8080:31824/TCP   1m
kubernetes   10.3.240.1     <none>        443/TCP          13m


kubectl  describe service hello-node
Name:			hello-node
Namespace:		default
Labels:			run=hello-node
Selector:		run=hello-node
Type:			NodePort
IP:			10.3.246.117
Port:			<unset>	8080/TCP
NodePort:		<unset>	31824/TCP
Endpoints:		10.0.0.4:8080
Session Affinity:	None


Внешний Port --> 31824


gcloud compute addresses create mmazur-test-address --region us-central1

gcloud compute addresses list
NAME                 REGION       ADDRESS          STATUS
mmazur-test-address  us-central1  104.154.132.207  RESERVED

Создание Load Balancer

Файрволл

Для того тото бы хелс чек работал нужно разрешить траффик от сети 130.211.0.0/22 (о чем написано в инструкции https://cloud.google.com/compute/docs/load-balancing/health-checks)
Создать правило с именем mmazur-lb

 gcloud compute firewall-rules  create mmazur-lb  --allow=tcp,udp,icmp  --source-ranges 130.211.0.0/22

Health Check

gcloud compute http-health-checks  create mmazur-test-health-check --check-interval="5s" --port=31824
Created [https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/httpHealthChecks/mmazur-test-health-check].
NAME                      HOST  PORT   REQUEST_PATH
mmazur-test-health-check        31824  /

gcloud compute http-health-checks  describe mmazur-test-health-check
checkIntervalSec: 5
creationTimestamp: '2017-02-07T02:33:30.454-08:00'
description: ''
healthyThreshold: 2
host: ''
id: '2338322503345380501'
kind: compute#httpHealthCheck
name: mmazur-test-health-check
port: 31824
requestPath: /
selfLink: https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/httpHealthChecks/mmazur-test-health-check
timeoutSec: 5
unhealthyThreshold: 2


backend-services

gcloud compute backend-services create mmazur-test-backend-service  --http-health-checks  mmazur-test-health-check
Created [https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/backendServices/mmazur-test-backend-service].
NAME                         BACKENDS  PROTOCOL
mmazur-test-backend-service            HTTP
gcloud compute backend-services describe  mmazur-test-backend-service
affinityCookieTtlSec: 0
connectionDraining:
  drainingTimeoutSec: 0
creationTimestamp: '2017-02-07T02:40:16.526-08:00'
description: ''
enableCDN: false
fingerprint: y_d4_k-DcCA=
healthChecks:
- https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/httpHealthChecks/mmazur-test-health-check
id: '7566473235126295295'
kind: compute#backendService
loadBalancingScheme: EXTERNAL
name: mmazur-test-backend-service
port: 80
portName: http
protocol: HTTP
selfLink: https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/backendServices/mmazur-test-backend-service
sessionAffinity: NONE
timeoutSec: 30


gcloud compute backend-services get-health mmazur-test-backend-service
Listed 0 items.


gcloud compute instance-groups list
NAME                                                LOCATION       SCOPE  NETWORK       MANAGED  INSTANCES
<SKIP>
gke-mmazur-test-2-default-pool-36fd4440-grp         us-central1-b  zone   default       Yes      3
<SKIP>




 gcloud compute backend-services add-backend mmazur-test-backend-service  --instance-group=gke-mmazur-test-2-default-pool-36fd4440-grp  --balancing-mode=UTILIZATION --max-utilization="1.0"
WARNING: This backend service is assumed to be global. To access a regional backend service, provide the --region flag.
In the future, backend services will be regional by default unless the --global flag is specified.
Updated [https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/backendServices/mmazur-test-backend-service].


 gcloud compute backend-services get-health mmazur-test-backend-service
WARNING: This backend service is assumed to be global. To access a regional backend service, provide the --region flag.
In the future, backend services will be regional by default unless the --global flag is specified.
---
backend: https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/zones/us-central1-b/instanceGroups/gke-mmazur-test-2-default-pool-36fd4440-grp
status:
  kind: compute#backendServiceGroupHealth

>>>Backend services that do not have a valid global forwarding rule referencing it will not be health checked and so will have no health status.

URL MAPS

https://cloud.google.com/compute/docs/load-balancing/http/url-map

gcloud compute url-maps  create mmazur-test-url-map --default-service mmazur-test-backend-service
Created [https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/urlMaps/mmazur-test-url-map].
NAME                 DEFAULT_SERVICE
mmazur-test-url-map  mmazur-test-backend-service


gcloud compute url-maps  describe mmazur-test-url-map
creationTimestamp: '2017-02-07T03:12:16.708-08:00'
defaultService: https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/backendServices/mmazur-test-backend-service
description: ''
fingerprint: VIXzHlhGDb8=
id: '8910554993819653503'
kind: compute#urlMap
name: mmazur-test-url-map
selfLink: https://www.googleapis.com/compute/v1/projects/kohls-ecom-sandbox/global/urlMaps/mmazur-test-url-map


Target Proxy

Ссылки

* http://containertutorials.com/get_started_kubernetes/k8s_example.html