vpnj012k / image-hub

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Layer5 Image Hub

Go Report Card GitHub GitHub issues by-label Website Twitter Follow Slack CII Best Practices

If you’re using the Image Hub or if you like other Layer5 projects, please star this repository to show your support! 🤩

Image Hub

Image Hub is a sample application written to run on Consul for exploring WebAssembly modules used as Envoy filters. This demo application has been enabled by experimental works of Nic Jackson of HashiCorp, and Kanishkar J, Lee Calcote, and other contributors of Layer5.

Deployment Instructions (pending meshery-consul/issues/2):

  1. Deploy the latest Consul:
helm repo add hashicorp https://helm.releases.hashicorp.com # Adds helm hashicorp repo
helm install consul hashicorp/consul -f config/consul-values.yaml # Setup custom Consul with support for WASM
  1. Use Meshery to deploy the Image Hub sample application onto the Consul service mesh.

Use Image Hub

  1. Find the port assigned to the ingess service:
kubectl get svc ingess
NAME     TYPE       CLUSTER-IP    EXTERNAL-IP   PORT(S)        AGE
ingess   NodePort   10.97.34.25   <none>        80:31118/TCP   27m
  1. Open http://localhost:31118 (where 31118 is your environment's port number).
  2. Test your ability to "pull" an image (images are not in fact pulled, but an HTTP request is sent to the backend api). You should not be able to pull an image.
  3. Sign up a new user and select a subscription plan.
  4. Login as that user.
  5. Test your ability to "pull" an image. You should be able to pull an image.
  6. Open Meshery's performance management page (http://localhost:9081/performance)
  7. Configure a performance test against http://x.x.x.x:31118/api/pull (where x.x.x.x is your machine's host IP address, not "localhost")
  8. Enter { "authorization" : "<your user's token>" }
  9. Run the performance test. See that your subscription plan limit is enforced accordingly.
  10. Change your subscription plan and retest.

Architecture

Consul Service Mesh Architecture w/WebAssembly

Service Mesh Architecture - Consul

Image Hub deployed on Consul

Meshery and WASM

Presentations

DockerCon'2020

 

Join the service mesh community!

Our projects are community-built and welcome collaboration. 👍 Be sure to see the Layer5 Community Welcome Guide for a tour of resources available to you and jump into our Slack!

Layer5 Service Mesh Community

Layer5 Service Mesh Community

✔️ Join any or all of the weekly meetings on the community calendar.
✔️ Watch community meeting recordings.
✔️ Access the community drive.

Not sure where to start? Grab an open issue with the help-wanted label.

 

About Layer5

Community First

The Layer5 community represents the largest collection of service mesh projects and their maintainers in the world.

Open Source First

We build projects to provide learning environments, deployment and operational best practices, performance benchmarks, create documentation, share networking opportunities, and more. Our shared commitment to the open source spirit pushes Layer5 projects forward.

License

This repository and site are available as open source under the terms of the Apache 2.0 License.

About

License:Apache License 2.0


Languages

Language:Vue 50.2%Language:Rust 19.2%Language:Go 13.4%Language:Dockerfile 5.1%Language:JavaScript 4.7%Language:Makefile 4.2%Language:HTML 3.2%