La forma más fácil de poner en marcha un cluster Kubernetes en producción.
Queremos pensar que es algo como kubectl
para clusters.
kops
ayuda a crear, destruir, mejorar y mantener un grado de producción, altamente
disponible, desde las líneas de comando de Kubernetes clusters. AWS (Amazon Web Services)
está oficialmente soportado actualmente, con GCE en soporte beta , y VMware vSphere
en alpha, y otras plataformas planeadas.
Para reproducir exactamente el demo anterior, visualizalo en el tutorial para lanzar un anfitrión de Kubernetes cluster en AWS.
Para instalar un Kubernetes cluster en GCE por fabor siga esta guide.
- Automatiza el aprovisionamiento de Kubernetes clusters en AWS y GCE
- Un Despliegue Altamente Disponible (HA) Kubernetes Masters
- Construye en un modelo de estado sincronizado para dry-runs y idempotency automático
- Capacidad de generar Terraform
- Soporta un Kubernetes personalizado add-ons
- Línea de comando autocompletion
- YAML Archivo de Manifiesto Basado en API Configuration
- Templating y ejecutar modos de simulacro para crear Manifiestos
- Escoge de ocho proveedores CNI diferentes Networking
- Capacidad para añadir contenedores, como enganches, y archivos a nodos vía cluster manifest
La documentación está en el directorio /docs
, and the index is here.
kOps está destinado a ser compatible con versiones anteriores. Siempre es recomendado utilizar la última versión de kOps con cualquier versión de Kubernetes que estés utilizando. Siempre utilize la última versión de kOps.
Una excepción, en lo que respecta a la compatibilidad, kOps soporta el equivalente a un número de versión menor de Kubernetes. Una versión menor es el segundo dígito en el número de versión. la versión de kOps 1.8.0 tiene una versión menor de 8. La numeración sigue la especificación de versión semántica, MAJOR.MINOR.PATCH.
Por ejemplo kOps, 1.8.0 no soporta Kubernetes 1.9.2, pero kOps 1.9.0 soporta Kubernetes 1.9.2 y versiones anteriores de Kubernetes. Sólo cuando coincide la versión menor de kOps, La versión menor de kubernetes hace que kOps soporte oficialmente el lanzamiento de kubernetes. kOps no impide que un usuario instale versiones no coincidentes de K8, pero las versiones de Kubernetes siempre requieren kOps para instalar versiones de componentes como docker, probado contra la versión particular de Kubernetes.
kOps version | k8s 1.17.x | k8s 1.18.x | k8s 1.19.x | k8s 1.20.x | k8s 1.21.x |
---|---|---|---|---|---|
1.21.0 | ✔ | ✔ | ✔ | ✔ | ✔ |
1.20.x | ✔ | ✔ | ✔ | ✔ | ⚫ |
✔ | ✔ | ✔ | ⚫ | ⚫ | |
✔ | ✔ | ⚫ | ⚫ | ⚫ | |
✔ | ⚫ | ⚫ | ⚫ | ⚫ |
Utilice la última versión de kOps para todas las versiones de Kubernetes, con la advertencia de que las versiones más altas de Kubernetes no cuentan con el respaldo oficial de kOps.
Este proyecto no sigue el cronograma de lanzamiento de Kubernetes. kops
tiene como objetivo
proporcionar una experiencia de instalación confiable para Kubernetes, y, por lo general, se lanza
aproximadamente un mes después de la publicación correspondiente de Kubernetes. Esta vez, permite que el proyecto Kubernetes resuelva los problemas que presenta la nueva versión y garantiza que podamos admitir las funciones más recientes. kOps lanzará pre-lanzamientos alfa y beta para las personas que están ansiosas por probar la última versión de Kubernetes.
Utilice únicamente lanzamientos pre-GA kOps en ambientes que puedan tolerar las peculiaridades de las nuevas versiones, e informe cualquier problema que surja.
kubectl
es requerido, visualize here.
brew update && brew install kops
El binario kops
también está disponible a través de nuestro releases.
curl -LO https://github.com/kubernetes/kops/releases/download/$(curl -s https://api.github.com/repos/kubernetes/kops/releases/latest | grep tag_name | cut -d '"' -f 4)/kops-linux-amd64
chmod +x kops-linux-amd64
sudo mv kops-linux-amd64 /usr/local/bin/kops
visualize el releases para más información sobre cambios entre lanzamientos.
¿Estás interesado en contribuir con kOps? Nosotros, los mantenedores y la comunidad,
nos encantaría sus sugerencias, contribuciones y ayuda.
Tenemos una guía de inicio rápido en adding a feature. Además, se
puede contactar a los mantenedores en cualquier momento para obtener más información sobre
cómo involucrarse.
Con el interés de involucrar a más personas con kOps, estamos comenzando a
etiquetar los problemas con good-starter-issue
. Por lo general, se trata de problemas que tienen
un alcance menor, pero que son buenas maneras de familiarizarse con la base de código.
También alentamos a TODOS los participantes activos de la comunidad a actuar como si fueran mantenedores, incluso si no tiene permisos de escritura "oficiales".Este es un esfuerzo de la comunidad, estamos aquí para servir a la comunidad de Kubernetes. Si tienes un interés activo y quieres involucrarte, ¡tienes verdadero poder! No asuma que las únicas personas que pueden hacer cosas aquí son los "mantenedores".
También nos gustaría agregar más mantenedores "oficiales", así que ¡muéstranos lo que puedes hacer!
Lo que esto significa:
Issues
- Ayude a leer y clasifique los problemas, ayúdelo cuando sea posible.
- Señale los problemas que son duplicados, desactualizados, etc.
- Incluso si no tiene permisos para etiquetar, tome nota y etiquete mantenedores (
/close
,/dupe #127
).
- Incluso si no tiene permisos para etiquetar, tome nota y etiquete mantenedores (
Pull Requests
- Lee y revisa el código. Deja comentarios, preguntas y críticas (
/lgtm
). - Descargue, compile y ejecute el código y asegúrese de que las pruebas pasen (make test).
- También verifique que la nueva característica parezca cuerda, siga los mejores patrones arquitectónicos e incluya pruebas.
Este repositorio usa los bots de Kubernetes. Hay una lista completa de los comandos aqui.
Los mantenedores de kOps reservaron una hora cada dos semanas para horas de oficina públicas. Los horarios de oficina se alojan en un zoom video chat los viernes en 5 pm UTC/12 noon ET/9 am US Pacific, en semanas impares numeradas. Nos esforzamos por conocer y ayudar a los programadores, ya sea trabajando en kops
o interesados en conocer más sobre el proyecto.
Incluye pero no limitado a:
- Ayuda y guía para aquellos que asisten, que están interesados en contribuir.
- Discuta el estado actual del proyecto kOps, incluidas las versiones.
- Diseña estrategias para mover
kops
hacia adelante. - Colabora sobre PRs abiertos y próximos.
- Presenta demos.
Esta vez se enfoca en los programadores, aunque nunca rechazaremos a un participante cortés. Pase por alto, incluso si nunca ha instalado kOps.
Le recomendamos que se comunique de antemano si planea asistir. Puedes unirte a cualquier sesión y no dudes en agregar un elemento a la agenda donde rastreamos notas en el horario de oficina.
Los horarios de oficina están alojados en una Zoom video conferencia, celebrada los viernes a las 5 pm UTC/12 noon ET/9 am US Pacific cada otra semana impare numerada.
Puede verificar su número de semana utilizando:
date +%V
Los mantenedores y otros miembros de la comunidad están generalmente disponibles en kubernetes slack en #kops, ¡así que ven y conversa con nosotros sobre cómo los kOps pueden ser mejores para ti!
Si cree que ha encontrado un error, siga las instrucciones a continuación.
- Dedique una pequeña cantidad de tiempo a prestar la debida diligencia al rastreador de problemas. Tu problema puede ser un duplicado.
- Establezca la
-v 10
línea de comando y guarde la salida de los registros. Por favor pegue esto en su issue. - Note the version of kOps you are running (from
kops version
), and the command line options you are using. - Abra un new issue.
- Recuerde que los usuarios pueden estar buscando su issue en el futuro, por lo que debe darle un título significativo para ayudar a otros.
- No dude en comunicarse con la comunidad de kOps en kubernetes slack.
También usamos el rastreador de problemas para rastrear características. Si tiene una idea para una función, o cree que puede ayudar a que los kOps se vuelvan aún más impresionantes, siga los pasos a continuación.
- Abra un new issue.
- Recuerde que los usuarios pueden estar buscando su issue en el futuro, por lo que debe darle un título significativo para ayudar a otros.
- Defina claramente el caso de uso, usando ejemplos concretos. P EJ: Escribo
esto
y kOps haceeso
. - Algunas de nuestras características más grandes requerirán algún diseño. Si desea incluir un diseño técnico para su función, inclúyalo en el problema.
- Después de que la nueva característica sea bien comprendida, y el diseño acordado, podemos comenzar a codificar la característica. Nos encantaría que lo codificaras. Por lo tanto, abra una WIP (trabajo en progreso) solicitud de extracción, y que tenga una feliz codificación.