info:libros:devops-kubernetes:cap3

Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
info:libros:devops-kubernetes:cap3 [13/04/2020 11:07] – [nodes] mateinfo:libros:devops-kubernetes:cap3 [13/04/2020 13:48] (actual) – suprimit mate
Línia 1: Línia 1:
-= Getting started with Kubernetes 
-== components 
-=== master 
-{{ :info:libros:devops-kubernetes:pasted:20200413-095418.png }} 
-  * api Server 
-    * kube-apiserver 
-    * RESTful API 
-  * Controller Manager 
-    * kube-controller-manager 
-    * observa los cambios en la API y mantiene el cluster en el estado deseado 
-    * deployment controller: se asegura que el deployment se ejecuta en el número establecido de contenedores 
-    * node controller: responde y desaloja el pod cuando los nodos se caen 
-    * endpoint controller: relaciones entre pods y servicios 
-    * service account & toker controller: crear cuenta por defecto y tokens de acceso 
-  * Scheduler 
-    * kube-scheduler 
-    * determina que nodos son los mejores candidaros para ejecutar los pods 
-    * no solo se basa en el uso de los recuros, (más adelante) 
-  * etcd: 
-    * base de datos distribuida key-value 
-    * todos los objetos de la RESTful API se guardan aquí 
-    * etcd se encarga de guardar y replicar los datos 
- 
-=== nodes 
-{{ :info:libros:devops-kubernetes:pasted:20200413-100803.png }} 
-  * kubelet 
-    * es el proceso principal 
-    * reporta la actividad del nodo a **kube-apiserver** periodicamente 
-  * proxy 
-    * kube-proxy 
-    * enruta a través del pod balanceador y los pods 
-    * enruta desde internet a los servicios 
-    * 3 modos: 
-      * userspace:  
-      * iptables:  
-      * ipvs:  
-  * docker 
- 
-{{ :info:libros:devops-kubernetes:pasted:20200413-103049.png }} 
- 
-== getting started 
-=== kubectl 
-  * <code bash>kubectl version</code> 
-  * <code bash>kubectl logs --help</code> 
- 
-=== objects 
-  * Namespaces 
-    * permite implementar el aislamiento entre múltiples clusters virtuales 
-    * objetos de diferentes namespaces no se ven entre ellos 
-    * ciertos recursos genéricos no pertenecen a ningún namespace 
-    * por defecto, existen 3 namespaces: 
-      * default 
-      * kube-system: almacenar objetos creados por el sistema kubernetes 
-      * kube-public: visible por todos los usuarios 
-    * <code yaml>apiVersion: v1 
-kind: Namespace 
-metadata: 
-name: project1 
-</code> 
-    * <code bash>kubectl create -f 3-2-1_ns.yaml</code> 
-    * <code bash> kubectl get [namespaces|ns]</code> 
-    * <code bash>kubectl run nginx --image=nginx:1.12.0 --replicas=2 --port=80 --namespace=project1</code> 
-    * <code bash>kubectl get pods --namespace=project1</code> 
-  * Name 
-    * único en cada namespace 
-    * usa este nombre como parte de la URL de acceso al recurso 
-    * menor a 254c, letras minúsculas, números, guiones y puntos 
-    * kubernetes también le asigna un UID 
-  * Labels y selector 
-    * asigna etiquetas arbitrarias a los objetos 
-    * <code yaml>labels: 
-  $key1: $value1 
-  $key2: $value2</code> 
-    * se pueden filtrar las etiquetas con selectores 
-    * <code yaml>selector: 
-  matchLabels: 
-    $key1: $value1 
-  matchExpressions: 
-  - {key: $key2, operator: In, values: [$value1, $value2]} 
-</code> 
-  * Annotations 
-    * al igual que los tags, usado para especificar metadatos no identificables 
-    * almacenar configuración 
-  * Pods 
-    * miníma unidad deployable 
-    * puede contener uno o varios contenedores (sidecar containers, como por ejemplo el proxy de istio) 
-    * los contenedores de un mismo pod comparten contexto (en el mismo nodo), y por lo tanto red y volúmenes compartidos 
-    * <code bash> kubectl explain pods</code> 
-    * ejemplo, sin uso práctico, de 2 contenedores en 1 pod:<code yaml>// an example for creating co-located and co-scheduled container by pod 
-apiVersion: v1 
-kind: Pod 
-metadata: 
-  name: example 
-spec: 
-  containers: 
-  - name: web 
-    image: nginx 
-  - name: centos 
-    image: centos 
-    command: ["/bin/sh", "-c", "while : ;do curl http://localhost:80/; sleep 10; done"] 
-</code> 
-{{ :info:libros:devops-kubernetes:pasted:20200413-110331.png }} 
-    * <code bash>kubectl create -f 3-2-1_pod.yaml</code> 
-    * <code bash>kubectl logs example -c centos</code> 
-    * <code bash>kubectl describe pods example</code> 
  
  • info/libros/devops-kubernetes/cap3.1586801262.txt.gz
  • Darrera modificació: 13/04/2020 11:07
  • per mate