The founder Alex Ellis shares the OpenFaaS 2019 Project Update, case-studies, his personal highlights, and the roadmap for the year ahead.
In March 2019 I left VMware to continue developing OpenFaaS full-time, as an open-source project.
Since then I’ve had some personal highlights including becoming a CNCF Ambassador. I launched a business called OpenFaaS Ltd to host and support the OpenFaaS project and brand. Through OpenFaaS Ltd I provide professional services to the community such as training, consultations, product evaluation, along with OSS & community strategy.
If you would like to associate your brand with one of the fastest-growing developer communities then consider sponsoring openfaas.com. Or if you want to buy me a coffee or a beer, I’m now participating in GitHub’s new Sponsorship program.
In this blog post I’ll share the community briefing and then pick out a few of the parts I feel are most important for the community.
Community Briefing Video
You can catch-up with all the latest news and traction in the recording below
I’ll highlight a few specific areas below.
Traction continues to grow at a fast rate with:
- Over 17.8k GitHub stars
- Over 210 contributors
- A projection of 350 community blog posts by 2019
- Over 4 dozen end-user companies in production
The end-user community presents a sub-section of OpenFaaS users who have corporate clearance to use their logo and use-case to tell the world about how they are using OpenFaaS.
Sometimes I’m asked for “real-world” examples and usage of OpenFaaS or Serverless. So I wanted to include three case-studies from KubeCon which were submitted by end-user companies.
If you’d like to submit a talk about OpenFaaS to KubeCon San Diego, please let me know via Slack or email.
- How LivePerson is Tailoring its Conversational Platform Using OpenFaaS
- Accelerating the Journey of an AI Algorithm to Production with OpenFaaS @ BT
- Merging Quickly in a Cloud Native World
My favourite KubeCon talk was the session from LivePerson. I loved seeing how they addressed an insatiable level of customer demand for features by putting the customer in the driving-seat. They did this by allowing customers to write their own features through OpenFaaS functions.
With the launch of Keda from the Azure team, and Knative from Google and her partners it seemed a good time to write-up a new landscape. The Serverless 2.0 Landscape has been presented to the Google, RedHat and Azure teams and represents a new level of interoperability that 1st-generation products never had.
The primitive is a Docker or OCI-format image that listens to traffic on port 8080. In the world of OpenFaaS we call this a Serverless Workload and Knative refer to it as a “runtime contract”.
The Serverless 2.0 runtime contract means that you can now pick-n-mix your favourite build templates, runtime and Kubernetes platform then add in any optional parts from the right hand side, such as scale to zero, events or hosted options.
Performance has been tuned.
- Scale to and from Zero. When you scale functions down to zero, their Pods are removed from the cluster until they are needed again, this reduces costs.
- Did someone tell you that OpenFaaS only works with
stdio? They are only half-right there. Any binary can be made into a function by wrapping it with our Classic Watchdog, it then exposes HTTP. A perfect use-case for this is ffmpeg which has no HTTP Stack.
- OpenFaaS can run any HTTP server which listens on port 8080. Our new of-watchdog gives a compatible wrapper for this purpose. You can access HTTP templates using of-watchdog by typing in
faas-cli template store list
- For Kubernetes users, I highly recommend trying the httpProbe functionality, it reduces the CPU consumption of the
- Authentication by default - for both Kubernetes and Docker Swarm, authentication is always enabled
- Non-root - we’ve worked really hard to make our core services and your functions run as non-root to help mitigate potential container security issues
- Read-only filesystem - this prevents your function code from mutating, but also protects the userspace and libraries you are consuming
- OpenFaaS Cloud now has OAuth2 enabled for GitHub.com and GitLab and in addition provides SealedSecrets for storing API keys
OpenFaaS Cloud gives:
- Free HTTPS endpoints
git pushworkflow with built-in CI/CD
- Personal dashboard
- Public, private GitHub repos and organization access
Sign up for early access to the OpenFaaS Community Cluster operated by OpenFaaS Ltd.
Roadmap for 2019
We’ve worked really hard on the user experience for the community and for cloud native developers and one of our project values is “Developers First”.
At a networking event at Accel I was challenged to re-think what “Developers First” meant for enterprise developers.
The majority of our work from the past 12 months has been focused on performance, ecosystem, hardening, and security, which benefit the enterprise, but I think there are some specific flows we need to address next.
- Multiple-namespace support will enable OpenFaaS Cloud to grow and give even more isolation between tenants and users.
- OAuth2 with OpenID Connect will allow the UI, CLI and CI processes to connect to the OpenFaaS API using a federated security model.
faas-cli logsfeature is coming soon and will improve the debugging experience. Today our community uses
I hope you enjoyed the video and my personal highlights from 2019. You can get connected with the community and the life of the project through Slack and Twitter.
If you have comments, questions or suggestions or would like to join the community, then please join us on OpenFaaS Slack.
You can follow @openfaas on Twitter
Are you using OpenFaaS in production? Join the end-user community
Want to sponsor openfaas.com, start here?
OpenFaaS has no corporate sponsor or financial backer, so we rely on community contributors. We welcome contributions at all levels and have a current need for:
- front-end developers
- Golang coders
- Kubernetes expertise
All contributors appear on openfaas.com after their first PR has been merged.
If you would like to help, join us on Slack and check out the open issues on GitHub.