Giter Club home page Giter Club logo

fornax-serverless's People

Contributors

davidzhu22 avatar guowenjian90 avatar sonyafenge avatar zmn223 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

fornax-serverless's Issues

[node agent] pod actor 1/ create/terminate pod using cri apis

pod actor is unit which really drive a pod implementation inside node agent, each pod has one actor,
it's a statemachine which make sure a pod is created
1/ cgroup resource
2/ pull config map and mount volumes
3/ create pod fs
3/ translate pod spec into container spec, create podsandbox and create container

make sure pod resource is cleaned when pod is terminated.

foxnax core implementation

  • node agent interactions
  • tenant mgmt
  • app mgmt
  • instance pool mgmt
  • instance scheduling
  • app session mgmt
  • data store ops - create/update/delete
  • grpc server

pod actor 2/ liveness and readiness probe

when a pod is created, pod actor will start liveness and readiness probe until pod enter ready state.
pod is standby when liveness succeeded
pid is ready when readiness succeededd

[fornax core] etcd client for namespace and application

package of fornax core etcd client, able to Create/Get/Update/Delete/List/Watch following data types:

  • Namespace
  • Application
    ( endpoint type will be needed later )

typical use scenario

client := foo.NewEtcdClient(...)
client.CreateNamespace(namespace)
client.CreateApplication(app)
...
apps := client.ListApplications(namespace) // of specified namespace
chApps := client.Watch(nil) // of all namespaces
app<-chApps

automate protoc-gen target, make it part of build target

there are two issues stopping automate protobuf generate in build.

1/ generating go types and grpc stub requires protoc and these two go protoc plugins.
protoc has to be installed separately using ' apt install protobuf-compiler' which I have not automate it in Makefile.

2/ there is a another argoproj/argo-rollouts#1091 (comment), actually need to modify a few k8s files code to set full package name to work around it.

tried to use 'M' go_opt when execute protoc, but not working, has to manually modify a few generated a few k8s protobuf files
to use full package name, files are listed in Makefile.

	--go_opt=Mk8s.io/api/core/v1/generated.proto=k8s.io/api/core/v1 \
	--go_opt=Mk8s.io/apimachinery/pkg/api/resource/generated.proto=k8s.io/apimachinery/pkg/api/resource \
	--go_opt=Mk8s.io/apimachinery/pkg/apis/meta/v1/generated.proto=k8s.io/apimachinery/pkg/apis/meta/v1 \
	--go_opt=Mk8s.io/apimachinery/pkg/runtime/generated.proto=k8s.io/apimachinery/pkg/runtime \
	--go_opt=Mk8s.io/apimachinery/pkg/runtime/schema/generated.proto=k8s.io/apimachinery/pkg/runtime/schema \
	--go_opt=Mk8s.io/apimachinery/pkg/util/intstr/generated.proto=k8s.io/apimachinery/pkg/util/intstr \

Issues Tracker Setup

  • Title Label/list out all issues for current milestone (430)
  • Assignees Assign the issue to yourself (GitHub ID)
  • Status Choose from the dropdown: New, Backlog, In progress, In review, Done
  • Target Date Target completed date for the work
  • Current Update Providing additional information: current status, blockers if any, help needed, etc...
  • Linked Pull Requests Link the PR if applicable

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.