中文 | English
Shifu is a Kubernetes native framework designed to abstract out the complexity of interacting with IoT devices. Shifu aims to achieve TRUE plug-and-play IoT device virtualization, management, control, and automation.
Shifu makes it extremely simple to manage and control your IoT devices via deviceShifu, a digital twin for your device. When you connect an IoT device, Shifu will recognize it and start a deviceShifu of the device as a Kubernetes Pod.
deviceShifu provides you with a high-level abstraction to interact with your device. By implementing the interface of the deviceShifu, your IoT device can achieve everything it is designed for, and much more! For example, you can have your device actively push its telemetry to any endpoint of your choice.
Shifu provides shifu_install.yml
. If you have started a Kubernetes cluster, use the command kubectl aply
to install Shifu in your cluster:
cd shifu
kubectl apply -f pkg/k8s/crd/install/shifu_install.yml
If you are not familiar with Kubernetes, we provide Shifu Demo, which will intuitively show how Shifu creates and manages digital twins of any physical device in the real world.
See documentation on https://shifu.run/docs/.
Check the Markdown files in docs/
to learn about the design and development guides of Shifu.
- features supported
- Telemetry collection: Shifu supports the collection of telemetry from devices on a regular basis. What telemetry to collect, how to collect, how frequently to collect are all customizable in one single configuration file.
- Integration with Kubernetes with CRD: Shifu allows any type or form of configuration for your devices.
- features not yet supported
- Automatic deviceShifu creation
- Declarative API
- Advanced shifuController
- shifud
- deviceShifu grouping
- Abstraction
- Simulation
By | Protocols | Features |
---|---|---|
Q1 2022 | HTTP command line driver |
telemetry command proxy CRD integration |
Q2 2022 | MQTT TCP Socket RTSP Siemens S7 OPC UA |
state machine |
Q3 2022 | ONVIF | Shifu Cloud |
Q4 2022 | gRPC | abstraction shifuController shifud simulation |
If you want more features and protocols supported, please open an issue!
Developers and operators should focus entirely on using their creativity to make huge impacts, rather than fixing infrastructure and reinventing the wheel on a daily basis. As a developer and an operator, Shifu knows your pain!!! Shifu wants to take out all the underlying mess, and make us developers and operators happy again!
If every IoT device has a deviceShifu with it, we can leverage software to manage our surroundings, and make the whole world software defined. In a software-defined world, everything is intelligent, and the world around you will automatically change itself to serve your needs -- after all, all the technology we built is designed to serve human beings.
Welcome to open an issue or create a PR!
- WeChat
- Donoteattoomuchla
- if7369