CROSSPLANE: ¿Mejor que terraform?

Ғылым және технология

Hoy hablo de Crossplane, una nueva forma de manejar infraestructura usando manifiestos de Kubernetes. También hablo de las ventajas y desventajas vs Terraform y cuándo usar uno o el otro.
Guia de Crossplane: crossplane.io/docs/v1.6/getti...
--
Repo con todos los archivos que uso: github.com/pablokbs/peladonerd
Merchandising Pelado Nerd: merch.peladonerd.com
Micrófono: Rode VideoMicro + Zoom H1N
Cámara: Sony A7 Mark III
Lente: Sony 28-70mm 3.5
Laptop: Macbook Pro 16'' 2019
Puedes encontrar todos mis links en peladonerd.com

Пікірлер: 67

  • 2 жыл бұрын

    Creo que ambos pueden convivir. Por ejemplo terraform para crear la VPC, zonas de DNS, peering, API Gateway, clusters de k8s, etc. Y utilizar CrossPlane para cosas que tengan una relación más directa con cada servicio que mantienen los desarrolladores, un RDS de AWS, buckets u otros recursos que vayan a ser consumidos de forma directa por X servicio.

  • @AFPinerosG

    @AFPinerosG

    Жыл бұрын

    De una vez les cuento algo con lo que se van a chocar cuando se vuelvan dependientes de Crossplane. Kubernetes está obsesionado con mantener el estado sincronizado, eso significa que tiene que hacer llamados constantemente a los APIs para ver cambios. Lamentablemente los APIs externos de los providers no funcionan como ETCD que tiene eventos, lo que significa que es necesario estar constantemente haciendo peticiones GET para validar estados. Qué significa esto? Que van a estar estallando todos sus APIs con llamadas entre más recursos tengan. Por ejemplo, el API de Cloudflare tiene un límite de llamadas, cuando tengan 10 clusters y 100 nombres de dominio en cada cluster, van a matar al API de Cloudflare. Y no van a poder hacer nada, sus clusters se van a quedar pegados intentando actualizar las cosas y validando los estados. Lo mismo les va a pasar con otros APIs, como Hashicorp Vault y otras cosas. Tengan mucho cuidado con Crossplane, la verdad es que los APIs no están hechos para validar estados de la forma que Kubernetes lo hace. Si quieren el mismo comportamiento con Terraform pues simplemente hagan que el Terraform escriba un K8s Secret con el name y el secret de la DB en el namespace de la aplicación que va a consumirla. YA. Así se soluciona ese problema que plantea el Pelao con Terraform y queda igual que los outputs de Crossplane. No van a perder la capacidad de hacer Terraform plan y no van a tener cosas pasando mágicamente en su infrastructura de PRODUCCIÓN porque alguien hizo un cambio por accidente y Crossplane fue a remediar el estado inmediatamente. No sé, me parece una herrramienta muy peligrosa.

  • @badermaluff4119
    @badermaluff41192 жыл бұрын

    Está muy bueno el video!! Muchas gracias!! Solo para aportar, HCL es basado en yaml por lo que la sintaxis de los archivos de configuración son similares a los de CrossPlane, aunque ciertamente HCL le agrega más poder el incluir un poco de lógica a la infra. Además no es necesario intervención manual para la aplicación de las configuraciones con la opción -auto-approve. Cómo lo dijeron en otro comentario creo que podrían coexistir perfectamente!!! Saludos de Paraguay!!

  • @Bioingtutu
    @Bioingtutu2 жыл бұрын

    Hola Peladooo, esta vez levanto la mano. Nosotros hacemos todo lo que explicaste en el ejemplo del rds de forma automatizada usando tf; y mucho mas. Nuestros devs solo llenan un form (values en yml) y surge la magia.

  • @JorgeMolas

    @JorgeMolas

    2 жыл бұрын

    Exacto los recursos los podes escalar desde el pipeline con un template

  • @javierzolotarchuk4066
    @javierzolotarchuk40662 жыл бұрын

    Muy buen video y muy interesante lo de crossplane! Sin dudas cuando este más maduro va a ser una gran alternativa 🙂. Con respecto a lo que comentabas de que terraform no escala, creo que se debe más a una metodología de trabajo que a la tecnología. Por ej si el equipo de desarrollo es también el encargado de construir su infra con tf no estaria el problema 😉. Saludos desde Buenos Aires!

  • @sergiokaznowiecki575
    @sergiokaznowiecki5752 жыл бұрын

    Muy buena review. Me gustaría que hagas un video sobre cdk(aws), pros y contras que le ves. Ya que en mi caso lo vengo usando hace un tiempo, y todos los beneficios que mencionas de crossplane y terraform los trae resueltos de base

  • @gonzaloherreragonzalez1737
    @gonzaloherreragonzalez17372 жыл бұрын

    Buenisimo el video, justo estaba buscando nuevas herramientas/tecnologias para seguir evolucionando la forma de manejar la infra y arquitectura del trabajo!!!!! Un Saludo desde Chile Pablo!!!

  • @pelasilveira6690
    @pelasilveira66902 жыл бұрын

    Muy bueno viejo. Quedó a la espera del vídeo sobre crosshelicopter me pareció muy interesante ;)

  • @nachogonzalez7539
    @nachogonzalez75392 жыл бұрын

    Buen video!!! está bien conocer nuevas herramientas. Por cierto, ¿para cuando un video celebrando los 100k suscriptores? Felicidades

  • @jorgeguerrero3547
    @jorgeguerrero35472 жыл бұрын

    Brutal el vídeo! Muchas gracias. Estaría bien más videos sobre Terraform y como hacer CI/CD de forma segura y validación de los cambios sobre la Infra.

  • @felipedev_
    @felipedev_2 жыл бұрын

    Excelete herramienta, gracias nuevamente por compartir

  • @Ismacuch
    @Ismacuch2 жыл бұрын

    Geniales tus videos, muchas gracias!! Tengo una pregunta, es posible en raspberry pi 3 b, crear un servidor rtmp que recepciones una cámara con transmisor rtmp y luego recibirlo en OBS por una DNS de rtmp que me comuniqué con el servidor?

  • @ramiroandresvidela6592
    @ramiroandresvidela65922 жыл бұрын

    En algun trabajo anterior utilizabamos templates de terraform que implementabamos como un source, declarabamos los recursos en un repo utilizando estos templates y las configuraciones estaban en un repo aparte que se manejaba todo con terragrunt. Esto porque manejabamos el mismo script de terraform con la config de cada ambiente, y nuestro CICD se encargaba de ir moviendo las versiones entre ambientes. Es mucho laburo si el proyecto es chico, pero este es un unicornio y a la velocidad que crece, este tipo de herramientas te salvan las papas. Buen video

  • @VictorFernandez-wf5lj
    @VictorFernandez-wf5lj2 жыл бұрын

    Muy interesante, en el caso de Azure, que diferencia hay entre crossplane y Azure service operator?

  • @jsgiraldoh
    @jsgiraldoh2 жыл бұрын

    Nos gustan bastante los videos de tecnología que se puede aplicar 👍🏻

  • @arieldosk4671
    @arieldosk46712 жыл бұрын

    Muy bueno pela! Quizas podrian convivir ambas, con terraform creas lo basico y principal (ej el primer cluster) y despues lo otro lo manejas con crossplane. No conocia esta herramienta y parece interesante la verdad.

  • @Escabechada
    @Escabechada2 жыл бұрын

    muy bueno el vídeo pelardo. no conocía crossplane, lo probaré 😉

  • @brunomanuelcavagnaroolcese9845
    @brunomanuelcavagnaroolcese98452 жыл бұрын

    Hola Peladoo, me gusta mucho tu contenido, soy algo nuevo en Docker y Kubernetes, y estoy aprendiendo bastante con tus videos. ¿Qué opinas del uso de servicios serverless como AWS Fargate? ¿En que casos se debería usar, en lugar de administrar uno mismo la infraestructura? ¿Y cuando debería elegir el uso de serverless functions como Lambda, sobre el uso de containers?

  • @AlejandroHidalgoL
    @AlejandroHidalgoL2 жыл бұрын

    Gracias Pablo. excelente comparativa. En lo personal prefiero TF por lo predictivo del resultado y el manejo de versiones. ¿¿Será posible que pudieras hacer algún video sobre Service Mesh (Istio / Linkerd) con un cluster K8S en modo autopilot (GCP)??? o alguna mejor alternativa para saber qué ocurre dentro del cluster con los ms?? Muchas gracias nuevamente!

  • @eleeaz
    @eleeaz2 жыл бұрын

    Muy buena la review, no me quedo muy claro por qué lo llaman Infra como datos si en realidad tenés yamls y es como manejar un operador más de k8s, con sus CRDs etc. Saludos!

  • @PeladoNerd

    @PeladoNerd

    2 жыл бұрын

    Porque en lugar de escribir codigo escribís configuración

  • @DanielGomez-gv5xc
    @DanielGomez-gv5xc2 жыл бұрын

    Muy bueno!, en nuestro caso estamos usando Terraform, pero orquestamos con ECS, por lo que de momento no tengo la oportunidad de aplicar Crossplane je (Y que me suena algo rebuscado crear un cluster a partir de otro cluster, es como que estoy forzando a usar una tecnologia que no aplica en ese caso) Me parece muy copado el poder crear infra "On-demand" directo sobre Kubernetes, principalmente para a futuro poder tener más automatizado lo que son ambientes de desarrollo por servicio

  • @mijhaelcastrociviero2848
    @mijhaelcastrociviero2848 Жыл бұрын

    Buen video pela! interesante crossplane!

  • @ricardoraulbascunandufau631
    @ricardoraulbascunandufau6312 жыл бұрын

    Seco Pelado!! gracias

  • @javicarrara
    @javicarrara Жыл бұрын

    Me gustó para ciertos casos de uso, pero no tiene nada que ver con terraform. Creo que no es comparable con terraform, porque tf tiene su lenguaje específico HCL, para poder hacer cosas complejas, dinámicas, mantenés el estado, podés importar recursos, incluso podés aprovisionar, correr scripts y hacer templating. Muy bueno el video. Saludos

  • @cohandj
    @cohandj2 жыл бұрын

    increible tool, terraform tmb tiene una vision integral de la infra, como haces para bindear cosas entre si? ejemplo, un dns friendly para tu postgres.... por otro lado, que hace el operador para concilar cambios y/o destruir es algo que tambien hay que considerar y que terraform hace muy bien

  • @gonzaloarreche
    @gonzaloarreche2 жыл бұрын

    Noooo recién estoy empezando a entender terraform, pelado! El enriedo de datos en crosshelicopter lo solucionás con un buen backup, no es para tanto.

  • @bryansanjuan3059
    @bryansanjuan30592 жыл бұрын

    Esta muy bueno el uso de crossplane, pero tengo una duda como se diferencia habría en entre esta tecnología y Cloudformation que que todo se declara todos los servicios (en este caso AWS)!?

  • @henrydavilam
    @henrydavilam2 жыл бұрын

    Buen contenido otra opcion para hacer deploy y en .yaml lo hace mas sencillo. Saludos

  • @IVANLUISLG
    @IVANLUISLG2 жыл бұрын

    buenaa, al final te mamaste, gracias por el video

  • @klapcincuenta
    @klapcincuenta2 жыл бұрын

    Terraform hace lo q vos decís q no hace, nuestra Infra corre así. Ojooo peladooo cuando quieras charlamos y te mostramos nuestro laburo

  • @wfmc202
    @wfmc2022 жыл бұрын

    Buenos dias saludos

  • @jimmyadaro
    @jimmyadaro2 жыл бұрын

    Espectaculaaarrrrr

  • @marceamx
    @marceamx2 жыл бұрын

    Tenes algun analisis de pulumi vs terraform...? :)

  • @sergiosaez1007
    @sergiosaez10072 жыл бұрын

    El chiste final TOP 😂 Además muy interesante el vídeo. Gracias!

  • @devtao
    @devtao2 жыл бұрын

    Podría ser infra como objeto ?

  • @h3ct0rjs
    @h3ct0rjs2 жыл бұрын

    También pienso que esto es lo que mencionaba Kelsey en su talk, pero realmente no creo que terraform desaparezca quizás coexistan cómo muchos mencionan

  • @quiubolecab
    @quiubolecab2 жыл бұрын

    Interesante video Pelado como siempre. Exagerando un poco, creo que la comunidad de kubernetes quiere kubernetizar hasta el proceso de abrir una puerta. En mi opinión terraform seguirá teniendo el mayor segmento de mercado en el terreno de provisionar recursos de nube por mucho tiempo. Saludos.

  • @ChristianAltamiranoAyala
    @ChristianAltamiranoAyala2 жыл бұрын

    No me gusta la idea de que dependa de un k8s.

  • @joseluiscruz5847
    @joseluiscruz58472 жыл бұрын

    Vamos a tener que probar crosshelicopter a ver que tal 😂

  • @ea_stus
    @ea_stus2 жыл бұрын

    Pela! Te olvidaste de poner la intro cuando haces el chasquido de dedos. Mucho muy importante que necesitabamos.

  • @PeladoNerd

    @PeladoNerd

    2 жыл бұрын

    AJajaja me acabo de fijar y chasquié los dedos y despues dije vamos, deberia haber sido sin el "vamos"

  • 2 жыл бұрын

    Para mi Crossplane por lo que explicas, no tiene manera de desbancar a terraform... y el motivo principal es que no todo el mundo usa kubernetes. Por ejemplo, en mi empresa la política es de serverless first, casi todas nuestras aplicaciones utilizan lambda, algunas fargate, y muy pocas EKS... con terraform no tienes problemas para usarlo en ninguno de los escenarios. Aparte, terraform te permite sobre todo (muy importante para mí) crear módulos reutilizables y añadir cierta lógica (condicionales, bucles) a tus despliegues... De momento para mi no hay color...

  • @mrwakko5715
    @mrwakko57152 жыл бұрын

    Hola Pelado y gracias por el video. Hay algo que no termino de comprender y he leido los comentarios y no he visto que te lo hayan preguntado: por que hablas de Terraform cuando AWS tiene su propio servicio de Infrastructure as Code que es CloudFormation? No termino de comprenderlo poque yo siempre he creido que quien interactue con AWS en este respecto sera utilizando su propio servicio CloudFormation y no Terraform. Gracias

  • @PeladoNerd

    @PeladoNerd

    2 жыл бұрын

    Terraform tiene muchas más funcionalidades, no solo es compatible con otros servicios (por ejemplo, con el mismo código podes interactuar con GCP y AWS e intercambiar información entre ellos) sino que terraform tiene más posibilidades en el código, la lógica puede ser más compleja

  • @mrwakko5715

    @mrwakko5715

    2 жыл бұрын

    @@PeladoNerd Gracias

  • @emmanuelgelatimesa2712
    @emmanuelgelatimesa27122 жыл бұрын

    Muy buen video, prefiero terraform, la infra en una gestion automatica me da miedo.

  • @afutse
    @afutse2 жыл бұрын

    Muy bueno, puedes comentar sobre otras alternativas a terraform como pulumi. slds

  • @killbites4fun
    @killbites4fun2 жыл бұрын

    Soy un adelantado, odié Terraform antes de aprender qué era y me sigue haciendo ruido aprenderlo, ¿qué sentido tiene con tantos operadores últimamente?

  • @h3ct0rjs
    @h3ct0rjs2 жыл бұрын

    Creo que la parte que menciona que la parte de terraform es manual esto realmente va a depender del workflow que tenga cada equipo, no lo sé Rick 🤔

  • @jesuschavezbastias9739
    @jesuschavezbastias973910 ай бұрын

    Hasta que Platzi te compró jejejeje

  • @diegobianqui2845
    @diegobianqui28452 жыл бұрын

    pela, que pensas de pulumi?

  • @PeladoNerd

    @PeladoNerd

    2 жыл бұрын

    Es más complejo que terraform, podes usar tu propio lenguaje por lo que lo hace más poderoso. Pero tal vez sea más difícil de aprender o usar para aquellos que quieran hacer cosas simples

  • @sergiobarrientos3725
    @sergiobarrientos37252 жыл бұрын

    sumo a Kubeform como una alternativa, pero no lo he probado

  • @martinvillalba5000
    @martinvillalba50002 жыл бұрын

    ese final jajajajaaj

  • @reydavid7300
    @reydavid73002 жыл бұрын

    Pelado, has escuchado o leido sobre pulumi? Es parecido a lo que comentas de crossplane, resuelve los secretos sin interaccion humana. Ademas soporta el lenguaje que quieras python, go, javascript lo cual es mas cercano al desarrollador que el podrido yaml, y ademas si te da el preview! Honestamente con lo que hablas veo que pulumi resuelve mas cosas y es mas flexible que crossplane y terraform

  • @PeladoNerd

    @PeladoNerd

    2 жыл бұрын

    Si, la idea es que los desarrolladores no tengan que escribir codigo, ya que es lento (incluso tal vez mas lento) que terraform

  • @cacharreronato
    @cacharreronato2 жыл бұрын

    Ummm mejor que terraform sería muy clickbait, porque sin infra no hay k8s, sin k8s no hay crossplane... por tanto?

  • @sergiobarrientos3725

    @sergiobarrientos3725

    2 жыл бұрын

    es verdad, genera una dependencia tipo bucle no?

  • @pabloarismendi407
    @pabloarismendi4072 жыл бұрын

    QUEREMOS QUE VUELVA VAQUITA A LOS VIDEOS!!!!!

  • @devtao
    @devtao2 жыл бұрын

    Ahshahahhahahshahahha cmamo con el helicóptero

  • @dreadlordnitsuga2
    @dreadlordnitsuga22 жыл бұрын

    Por qué el hate con Terraform?

  • @matc8085
    @matc80854 ай бұрын

    Creo que pulumi es mejor

  • @miguelmonteiro7898
    @miguelmonteiro78983 ай бұрын

    el titulo del video es ridiculo...

  • @imjavierpalma
    @imjavierpalma2 жыл бұрын

    Hola, Pelado. Cuando quiero crear el AWS keyfile me sale esto en mi terminal. fish: Unsupported use of '='. In fish, please use 'set AWS_PROFILE default' Luego lo cambie a esto. set AWS_PROFILE default && echo -e "[default] aws_access_key_id = $(aws configure get aws_access_key_id --profile $AWS_PROFILE) aws_secret_access_key = $(aws configure get aws_secret_access_key --profile $AWS_PROFILE)" > creds.conf Cuando corri esto me sale este mensaje. AWS_PROFfish: $(...) is not supported. In fish, please use '(aws)'. set AWS_PROFILE default && echo -e "[default] aws_access_key_id = $(aws configure get aws_access_key_id --profile AWS_PROFILE) aws_secret_access_key = $(aws configure get aws_secret_access_key --profile AWS_PROFILE)" >creds.conf

  • @imjavierpalma

    @imjavierpalma

    2 жыл бұрын

    Ya lo arregle. En vez de instalar AWS (Default VPC) instale AWS (Default New).

Келесі