smi-spec
gateway-api
smi-spec | gateway-api | |
---|---|---|
12 | 29 | |
1,047 | 1,572 | |
- | 2.7% | |
2.7 | 9.8 | |
7 months ago | 3 days ago | |
Makefile | Go | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
smi-spec
-
A Comprehensive Guide to API Gateways, Kubernetes Gateways, and Service Meshes
The Service Mesh Interface (SMI) specification was created to solve this portability issue.
-
Service Mesh Use Cases
> I suspect if a Service Mesh is ultimately shown to have broad value, one will make it's way into the K8S core
I'm not so sure. I suspect it'll follow the same roadmap as Gateway API, which it already kind of is with the Service Mesh Interface (https://smi-spec.io/)
-
Service Mesh Considerations
It is very common that a service mesh deploys a control plane and a data plane. The control plane does what you might expect; it controls the service mesh and gives you the ability to interact with it. Many service meshes implement the Service Mesh Interface (SMI) which is an API specification to standardize the way cluster operators interact with and implement features.
-
Kubernetes: Cross-cluster traffic scheduling - Access control
Before we start, let's review the SMI Access Control Specification. There are two forms of traffic policies in osm-edge: Permissive Mode and Traffic Policy Mode. The former allows services in the mesh to access each other, while the latter requires the provision of the appropriate traffic policy to be accessible.
-
Announcing osm-edge 1.1: ARM support and more
osm-edge is a simple, complete, and standalone service mesh and ships out-of-the-box with all the necessary components to deploy a complete service mesh. As a lightweight and SMI-compatible Service Mesh, osm-edge is designed to be intuitive and scalable.
- KubeCon 2022 - Jour 1
-
Kubernetes State Of The Union — KubeCon 2019, San Diego
I started on Monday, attending ServiceMeshCon2019. My guesstimate is that about 1000 people attended it. I believe Service Mesh is playing such a crucial role in scaling cloud native technologies that large scale cloud-native deployments may not be possible without service mesh. Just like you cannot really succeed in deploying a microservices based application without a microservices orchestration engine, like Kubernetes, you cannot scale the size and capacity of a microservices-based application without service mesh. That’s what makes it so compelling to see all the service mesh creators — Istio, Linkerd, Consul, Kuma — and listen to them. There was also a lot of discussion of SMI (Service Mesh Interface) — a common interface among all services mesh. The panel at the end of the day included all the major service mesh players, and some very thought provoking questions were asked and answered by the panel.
-
GraphQL - Usecase and Architecture
Do you need a Service Mesh?
-
Introducing the Cloud Native Compute Foundation (CNCF)
In the episode with Annie, she gave a great overview of the CNCF and a handful of projects that she's excited about. Those include Helm, Linkerd, Kudo, Keda and Artifact Hub. I gave a bonus example of the Service Mesh Interface project.
-
Service Mesh Interface
SMI official website: https://smi-spec.io
gateway-api
-
ArgoCD Deployment on RKE2 with Cilium Gateway API
It has already been a couple of years since the Kubernetes Ingress was defined as a “frozen” feature while further development will be added to the Gateway API.
-
A Comprehensive Guide to API Gateways, Kubernetes Gateways, and Service Meshes
Kubernetes provides two APIs to achieve this, the Ingress API and the Gateway API.
-
Using k8s-apiserver as AAA server for microservices?
With all that said, K8s is not really meant to function as an API gateway to arbitrary services. You should look into API gateways such as NGINX, Kong or others, service meshes as others have already pointed out, or have a look at the K8s Gateway API the SIG is currently working on. The last one is in the early stages of adoption, but it could provide you with a nice way to do an API Gateway right in K8s.
-
load balancer and kubernetes
Maybe there's something in the new fangled gateways.
-
Service Mesh Considerations
Keep an eye on the Gateway API GAMMA Initiative as it is currently evolving with the goal of streamlining how services meshes can implement the Gateway API and reduce some overlap.
- EKS: is it possible to rewrite the URL with ALB?
-
Apache Apisix: Open-Source API Gateway and API Management Platform
The selling point for me was ability to configure it using Kubernetes CRD's and future support of the Gateway API (under development - <https://gateway-api.sigs.k8s.io/>).
Developers can version their API now within helm charts or even yaml templates held along the code in their repositories.
-
A quick glance at the Kubernetes Gateway API
-- https://gateway-api.sigs.k8s.io
-
Sharing load balancers between containers
While you're learning about ingresses, also look into the k8s Gateway API, which is the next generation. https://gateway-api.sigs.k8s.io/
-
Exposing k8s services
The GatewayAPI model is quite different from the LB/ingress model, in the cluster it consists of gateway and route objects. Once the gateway is created routes connecting gateways to services are added. If you need to change how requests are distributed, the routes are updated but the gateway remains so the address and other configuration remains consistent. Gateways can be shared by multiple routes. Take a look at https://gateway-api.sigs.k8s.io/ its a bit terse but you will get the picture.
What are some alternatives?
cni - Container Network Interface - networking for Linux containers
caddy-l4 - Layer 4 (TCP/UDP) app for Caddy
cloudwithchris.com - Cloud With Chris is my personal blogging, podcasting and vlogging platform where I talk about all things cloud. I also invite guests to talk about their experiences with the cloud and hear about lessons learned along their journey.
apisix-opa-plugin
emissary - open source Kubernetes-native API gateway for microservices built on the Envoy Proxy
kubernetes-ingress-controller - :gorilla: Kong for Kubernetes: The official Ingress Controller for Kubernetes.
pipy - Pipy is a programmable proxy for the cloud, edge and IoT.
tyk-operator - Tyk Operator for Kubernetes
osm-edge - osm-edge is a lightweight service mesh for the edge-computing. It's forked from openservicemesh/osm and use pipy as sidecar proxy.
OPA (Open Policy Agent) - Open Policy Agent (OPA) is an open source, general-purpose policy engine.
kubefed - Kubernetes Cluster Federation
multus-cni - A CNI meta-plugin for multi-homed pods in Kubernetes