Prefacio
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Kubernetes es una tecnología extraordinariamente potente y ha alcanzado una popularidad meteórica. Ha constituido la base de auténticos avances en la forma en que gestionamos las Implementaciones de software. El software basado en API y los sistemas distribuidos estaban bien establecidos, aunque no ampliamente adoptados, cuando surgió Kubernetes. Aportó excelentes versiones de estos principios, que son fundamentales para su éxito, pero también aportó algo más que es vital. En el pasado reciente, el software que convergía de forma autónoma en un estado declarado y deseado sólo era posible en empresas tecnológicas gigantes con los equipos de ingeniería más talentosos. Ahora, las Implementaciones de software de alta disponibilidad, autorreparación y autoescalado están al alcance de cualquier organización, gracias al proyecto Kubernetes. Tenemos ante nosotros un futuro en el que los sistemas de software aceptan de nosotros directivas amplias y de alto nivel y las ejecutan para ofrecer los resultados deseados descubriendo condiciones, sorteando obstáculos cambiantes y reparando problemas sin nuestra intervención. Además, estos sistemas lo harán más rápido y de forma más fiable de lo que jamás podríamos hacerlo con operaciones manuales. Kubernetes nos ha acercado mucho más a ese futuro. Sin embargo, esa potencia y capacidad tiene el coste de cierta complejidad adicional. El deseo de compartir nuestras experiencias ayudando a otros a navegar por esa complejidad es la razón por la que decidimos escribir este libro.
Deberías leer este libro si quieres utilizar Kubernetes para construir una plataforma de aplicaciones de nivel de producción. Si buscas un libro que te ayude a iniciarte en Kubernetes, o un texto sobre cómo funciona Kubernetes, éste no es el libro adecuado. Hay abundante información sobre estos temas en otros libros, en la documentación oficial y en innumerables entradas de blog y en el propio código fuente. Recomendamos emparejar el consumo de este libro con tu propia investigación y pruebas de las soluciones que tratamos, por lo que rara vez nos sumergimos profundamente en ejemplos de estilo tutorial paso a paso. Intentamos cubrir tanta teoría como sea necesaria y dejamos la mayor parte de la implementación como ejercicio para el lector.
A lo largo de este libro, encontrarás orientación en forma de opciones, herramientas, patrones y prácticas. Es importante que leas estas orientaciones sabiendo cómo ven los autores la práctica de crear plataformas de aplicaciones. Somos ingenieros y arquitectos que nos desplegamos en muchas empresas de Fortune 500 para ayudarles a llevar sus aspiraciones de plataforma de la idea a la producción. Llevamos utilizando Kubernetes como base para conseguirlo desde 2015, cuando Kubernetes llegó a 1.0
. Hemos intentado en la medida de lo posible centrarnos en patrones y filosofía más que en herramientas, ¡ya que las nuevas herramientas aparecen más rápido de lo que podemos escribir! Sin embargo, inevitablemente tenemos que demostrar esos patrones con la herramienta du jour más adecuada.
Hemos tenido grandes éxitos guiando a los equipos a través de su viaje nativo en la nube para transformar completamente la forma en que construyen y entregan el software. Dicho esto, también hemos tenido nuestras dosis de fracaso. Un motivo común de fracaso es la idea errónea que tiene una organización de lo que Kubernetes puede resolver. Por eso profundizamos tanto en el concepto desde el principio. A lo largo de este tiempo hemos descubierto varias áreas especialmente interesantes para nuestros clientes. Las conversaciones que ayudan a los clientes a avanzar en su camino hacia la producción, o incluso les ayudan a definirlo, se han convertido en rutina. Estas conversaciones se han vuelto tan habituales que hemos decidido que tal vez ha llegado el momento de escribir un libro.
Aunque hemos hecho este viaje a la producción con organizaciones una y otra vez, sólo hay una consistencia clave en todas ellas. Y es que el camino nunca es igual, por mucho que a veces lo deseemos. Teniendo esto en cuenta, queremos establecer la expectativa de que si entras en este libro buscando el "programa de 5 pasos" para llegar a la producción o las "10 cosas que todo usuario de Kubernetes debe saber", te vas a sentir frustrado. Estamos aquí para hablar de los muchos puntos de decisión y las trampas que hemos visto, y para respaldarlo con ejemplos concretos y anécdotas cuando sea apropiado. Existen buenas prácticas, pero siempre hay que verlas a través de la lente del pragmatismo. No existe un enfoque único para todos, y "Depende" es una respuesta totalmente válida a muchas de las preguntas a las que inevitablemente te enfrentarás en el camino.
Dicho esto, ¡te animamos encarecidamente a que desafíes este libro! Cuando trabajamos con clientes, siempre les animamos a que desafíen y aumenten nuestras orientaciones. El conocimiento es fluido, y siempre estamos actualizando nuestros enfoques en función de las nuevas funciones, la información y las limitaciones. Deberías seguir esa tendencia; a medida que el espacio nativo de la nube siga evolucionando, seguramente decidirás tomar caminos alternativos a los que te recomendamos. Estamos aquí para hablarte de los que hemos recorrido para que puedas sopesar nuestra perspectiva con la tuya.
Convenciones utilizadas en este libro
En este libro se utilizan las siguientes convenciones tipográficas:
- Cursiva
-
Indica nuevos términos, URL, direcciones de correo electrónico, nombres de archivo y extensiones de archivo.
Constant width
-
Se utiliza en los listados de programas, así como dentro de los párrafos para referirse a elementos del programa como nombres de variables o funciones, bases de datos, tipos de datos, variables de entorno, sentencias y palabras clave.
Constant width bold
-
Muestra comandos u otros textos que deben ser tecleados literalmente por el usuario.
Constant width italic
-
Muestra el texto que debe sustituirse por valores proporcionados por el usuario o por valores determinados por el contexto.
Los tipos de Kubernetes se escriben con mayúsculas, como en Pod, Service y StatefulSet.
Consejo
Este elemento significa un consejo o sugerencia.
Nota
Este elemento significa una nota general.
Advertencia
Este elemento indica una advertencia o precaución.
Utilizar ejemplos de código
Si tienes una pregunta técnica o un problema al utilizar los ejemplos de código, envía un correo electrónico a bookquestions@oreilly.com.
Este libro está aquí para ayudarte a hacer tu trabajo. En general, si se ofrece código de ejemplo con este libro, puedes utilizarlo en tus programas y documentación. No es necesario que te pongas en contacto con nosotros para pedirnos permiso, a menos que estés reproduciendo una parte importante del código. Por ejemplo, escribir un programa que utilice varios trozos de código de este libro no requiere permiso. Vender o distribuir ejemplos de los libros de O'Reilly sí requiere permiso. Responder a una pregunta citando este libro y el código de ejemplo no requiere permiso. Incorporar una cantidad significativa de código de ejemplo de este libro en la documentación de tu producto sí requierepermiso.
Agradecemos la atribución, pero en general no la exigimos. Una atribución suele incluir el título, el autor, la editorial y el ISBN. Por ejemplo "Production Kubernetes " de Josh Rosso, Rich Lander, Alexander Brand y John Harris (O'Reilly). Copyright 2021 Josh Rosso, Rich Lander, Alexander Brand y John Harris, 978-1-492-09230-8".
Si crees que el uso que haces de los ejemplos de código no se ajusta al uso legítimo o al permiso concedido anteriormente, no dudes en ponerte en contacto con nosotros en permissions@oreilly.com.
Aprendizaje en línea O'Reilly
Nota
Durante más de 40 años, O'Reilly Media ha proporcionado formación tecnológica y empresarial, conocimientos y perspectivas para ayudar a las empresas a alcanzar el éxito.
Nuestra red única de expertos e innovadores comparten sus conocimientos y experiencia a través de libros, artículos y nuestra plataforma de aprendizaje online. La plataforma de aprendizaje en línea de O'Reilly te ofrece acceso bajo demanda a cursos de formación en directo, rutas de aprendizaje en profundidad, entornos de codificación interactivos y una amplia colección de textos y vídeos de O'Reilly y de más de 200 editoriales. Para más información, visita http://oreilly.com.
Cómo contactar con nosotros
Dirige tus comentarios y preguntas sobre este libro a la editorial:
- O'Reilly Media, Inc.
- 1005 Gravenstein Highway Norte
- Sebastopol, CA 95472
- 800-998-9938 (en Estados Unidos o Canadá)
- 707-829-0515 (internacional o local)
- 707-829-0104 (fax)
Tenemos una página web para este libro, donde se enumeran erratas, ejemplos y cualquier información adicional. Puedes acceder a esta página en https://oreil.ly/production-kubernetes.
Envía un correo electrónico a bookquestions@oreilly.com para comentar o hacer preguntas técnicas sobre este libro.
Para obtener noticias e información sobre nuestros libros y cursos, visita http://oreilly.com.
Encuéntranos en Facebook: http://facebook.com/oreilly
Síguenos en Twitter: http://twitter.com/oreillymedia
Míranos en YouTube: http://youtube.com/oreillymedia
Agradecimientos
Los autores desean dar las gracias a Katie Gamanji, Michael Goodness, Jim Weber, Jed Salazar, Tony Scully, Mónica Rodríguez, Kris Dockery, Ralph Bankston, Steve Sloka, Aaron Miller, Tunde Olu-Isa, Alex Withrow, Scott Lowe, Ryan Chapple y Kenan Dervisevic por sus revisiones y comentarios sobre el manuscrito. Gracias a Paul Lundin por alentar el desarrollo de este libro y por formar el increíble equipo de Ingeniería de Campo de Heptio. Todos los miembros del equipo han contribuido de algún modo colaborando y desarrollando muchas de las ideas y experiencias que tratamos en las próximas 450 páginas. Gracias también a Joe Beda, Scott Buchanan, Danielle Burrow y Tim Coventry-Cox de VMware por su apoyo mientras iniciábamos y desarrollábamos este proyecto. Por último, gracias a John Devins, Jeff Bleiel y Christopher Faucher de O'Reilly por su apoyo y comentarios constantes.
Los autores también desean dar las gracias personalmente a las siguientes personas:
Josh: Me gustaría dar las gracias a Jessica Appelbaum por sus absurdos niveles de apoyo, concretamente por sus tortitas de arándanos, mientras dedicaba mi tiempo a este libro. También me gustaría dar las gracias a mi madre, Angela, y a mi padre, Joe, por ser mi base mientras crecía.
Rich: Me gustaría dar las gracias a mi mujer, Taylor, y a mis hijos, Raina, Jasmine, Max y John, por su apoyo y comprensión mientras me tomaba tiempo para trabajar en este libro. También me gustaría dar las gracias a mi madre, Jenny, y a mi padre, Norm, por ser grandes modelos a seguir.
Alejandro: Mi amor y mi agradecimiento a mi increíble esposa, Anaïs, que me apoyó increíblemente mientras dedicaba tiempo a escribir este libro. También doy las gracias a mi familia, amigos y colegas que me han ayudado a convertirme en quien soy hoy.
John: Me gustaría dar las gracias a mi bella esposa, Christina, por su amor y paciencia durante mi trabajo en este libro. También quiero dar las gracias a mis amigos íntimos y a mi familia por su continuo apoyo y ánimo a lo largo de los años.
Get Kubernetes de producción now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.