Giter Site home page Giter Site logo

mastercloudapps-projects / serverless-kubernetes Goto Github PK

View Code? Open in Web Editor NEW
1.0 3.0 1.0 12.95 MB

In this repository you will find documentation and examples of alternatives to the proprietary services of cloud providers, such as AWS, GCP, AZURE, ... for Kubernetes

License: Apache License 2.0

Dockerfile 9.08% JavaScript 87.08% HTML 3.84%
faas databases openfaas knative database-operators kubernetes

serverless-kubernetes's Introduction

Serverless-Kubernetes

Master Cloud apps

Este repositorio guarda la documentación y pruebas realizadas para el TFM del "Máster Cloud Apps. Desarrollo y despliegue de aplicaciones en la nube" de la Universidad Rey Juan Carlos.

Este TFM consiste en el estudio de las alternativas en Kubernetes a los servicios Serverless que ofrecen los proveedores de cloud como AWS, Azure o GCP.

Servicios

  1. Funciones como servicio (Faas)
  2. Gestión de archivos
  3. Bases de datos
  4. Colas de mensajería y gestión de eventos
  5. Gestión de usuarios

Funciones como servicio (Faas)

AWS Azure GCP
Lambda Functions Cloud Functions

En esta sección vamos a instalar y probar varias opciones de faas basadas en Kubernetes. Para intentar sustituir las funciones de proveedor como AWS Lambda o Azure Function.

Gestión de archivos

AWS Azure GCP
s3 Blob Storage Cloud Storage

Otro servicio que ofrecen los proveedores de cloud son la gestión y almacenamiento de archivos en este caso vamos a instalar y probar minio, que implementa un api compatible con AWS S3 y que posee un operador de Kubernetes que nos permite el autoescalado.

Bases de datos

AWS Azure GCP
dynamodb Cosmos DB Cloud Spanner

Las alternativas a las bases de datos administradas por los proveedores de cloud serian los Operadores Kubernetes de bases de datos, en este trabajo vamos a instalar y probar 2 de ellos, el operador de MongoDB de Percona y el operador de PostgreSQL de Zalando.

Colas de mensajería y gestión de eventos

AWS Azure GCP
SQS Service Bus Cloud Pub/Sub
SNS Queue Storage
Event Bridge Event Grid

Hasta ahora las pruebas que hemos hecho han lanzado las funciones ante una petición http en esta sección vamos a comprobar com podemos ejecutar estas funciones por otros mecanismos. Concretamente probaremos los sistemas de colas integradas dentro de Knative y OpenFaaS y también instalaremos y probaremos Argo Events, un orquestador de eventos que nos permite ejecutar entre otras cosas funciones OpenFaaS.

Gestión de usuarios

AWS Azure GCP
cognito Active Directory B2C Cloud IAM

En esta sección vamos a instalar Keycloak para la gestión de usuarios dentro del ecosistema kubernetes, como alternativa a los sistemas de identidad y acceso de los proveedores de cloud, además vamos a implementar varios ejemplos de cómo integrarlos en las funciones OpenFaaS que hemos desarrollado anteriormente.

Aplicación de Ejemplo

Para terminar hemos desarrollado una pequeña aplicación de ejemplo donde ponemos en común alguno de los servicios que hemos probado anteriormente.

Próximos pasos

https://github.com/dcasati/kubernetes-PlantUML

serverless-kubernetes's People

Contributors

dependabot[bot] avatar micaelgallego avatar oillescas avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Forkers

oillescas

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.