Coder Social home page Coder Social logo

riverzhang / kube-scheduler-simulator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kubernetes-sigs/kube-scheduler-simulator

0.0 2.0 0.0 1.19 MB

A web-based simulator for the Kubernetes scheduler

License: Apache License 2.0

Dockerfile 0.63% Makefile 0.50% Go 66.17% Shell 1.64% TypeScript 11.81% SCSS 0.07% Vue 17.69% JavaScript 1.50%

kube-scheduler-simulator's Introduction

Web-based Kubernetes scheduler simulator

Hello world. Here is web-based Kubernetes scheduler simulator.

On the simulator, you can create/edit/delete these resources to simulate a cluster.

  • Nodes
  • Pods
  • Persistent Volumes
  • Persistent Volume Claims
  • Storage Classes

list resources

You can create resources with yaml file as usual.

create node

And, after pods are scheduled, you can see the results of

  • Each Filter plugins
  • Each Score plugins
  • Final score (normalized and applied Plugin Weight)

result

You can configure the scheduler on the simulator through KubeSchedulerConfiguration.

Scheduler Configuration | Kubernetes

Note: changes to any fields other than .profiles are disabled on simulator, since they do not affect the results of the scheduling.

configure scheduler

Background

In real Kubernetes, we cannot know the results of scheduling in detail without reading the logs, which usually requires privileged access to the control plane. Therefore, we have developed a simulator for kube-scheduler -- you can try out the behavior of the scheduler with web UI while checking which plugin made what decision for which Node.

It can be used to learn about the Kubernetes scheduler or to examine the detailed behavior of plugins, etc.

Getting started

Run with Docker

We have docker-compose.yml to use the simulator easily.

You can use it with the below command.

make docker_build_and_up

Then, you can access the simulator with http://localhost:3000

Run Locally

You have to run frontend, server and etcd.

Run simulator server and etcd

To run this simulator's server, you have to install Go and etcd.

You can install etcd with kubernetes/kubernetes/hack/install-etcd.sh.

make start

It starts etcd and simulator-server locally.

Run simulator frontend

To run the frontend, please see README.md on ./web dir.

Contributing

see CONTRIBUTING.md

other docs

Community, discussion, contribution, and support

Learn how to engage with the Kubernetes community on the community page.

You can reach the maintainers of this project at:

Code of conduct

Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.

kube-scheduler-simulator's People

Contributors

k8s-ci-robot avatar sanposhiho avatar spiffxp avatar

Watchers

James Cloos avatar  avatar

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.