当前位置:网站首页>2022-04-22 openebs cloud native storage
2022-04-22 openebs cloud native storage
2022-04-23 08:44:00 【Blood dragon waving wings】
Catalog
OpenEBS
OpenEBS It's a utility model Go Container based block storage open source software written in .OpenEBS Make it more reliable to run critical tasks in containers and loads that need data persistence .
OpenEBS from CloudByte Research and development , This is a company specializing in container storage ,OpenEBS It is an open source product ,CloudByte Put his experience in enterprise container storage into the project . The vision of the project is also simple , Is to enable the storage services in the workload requiring persistent storage to be directly integrated into the environment , Storage services can automatically manage , Hide the stored details , Just as the storage system is another infrastructure .
We know AWS Provided in EBS(Elastic Block Storage), Apply to Amazon EC2 Persistent block storage , It can meet the functional and performance requirements of the most demanding applications ,OpenEBS That is, its open source implementation .
brief introduction
Use OpenEBS, You can put containers with persistent data , Treat... Like any other ordinary container .OpenEBS It is also deployed through containers , Support Kubernetes、Swarm、Mesos、Rancher Arrange and schedule , Storage services can be assigned to each pod、 Applications 、 Cluster or container level , Include :
- Cross node data persistence
- Data synchronization across availability zones and cloud vendors
- Use commercial hardware and container engines to provide highly scalable block storage
- Integration with container orchestration engine , Developers' applications can be configured automatically OpenEBS
- be based on CloudByte stay BSD Experience in containerization , Provide users with OpenEBS Of QoS Guarantee
framework
OpenEBS The storage controller itself runs in the container .OpenEBS Volume It consists of one or more containers running as microservices . This storage controller function is based on the micro service architecture —— Each volume's data is provided by its own set of containers , Instead of having a unified system that provides control for multiple volumes at the same time , Monomers (monolithic) Storage controller to provide . This is it. OpenEBS Essential difference from traditional storage devices .
OpenEBS The architecture of can be divided into data plane (Data Plane) And the control plane (Control Plane) Two parts :
- Data plane : Provide data storage for applications
- Control plane : management OpenEBS Volume container , This usually uses the functions of container choreography Software
Data plane
The picture below is OpenEBS Corresponding to Kubernetes The architecture diagram of the deployment on the cluster . among , The yellow part is OpenEBS Persistent storage volumes , adopt Kubernetes Of PV To create , Use iSCSI To achieve , Data saved in node Volumes on nodes or in the cloud ( Such as EBS、GPD etc. ), It depends on where your cluster is deployed .OpenEBS Volume management is completely independent of the user's application lifecycle , This is also Kuberentes Medium PV The basic idea of .

OpenEBS Volumes provide persistent storage for containers , It has flexibility for system failure , Faster access to storage , Snapshot and backup capabilities . Besides , It also provides monitoring of usage and execution QoS The mechanism of strategy .
The disk on which data is stored is called the storage backend , It can be a host Directory , Additional block devices or remote disks . Every OpenEBS The volume contains a iSCSI Target container ( In the figure above, it is shown as openebs-vol1) And one or more replica containers (openebs-vol1-R1 and openebs-vol1-R2).
Applications pod adopt iSCSI The target container accesses the storage ,iSCSI The destination container replicates data to all its replicas . In the event of a node failure ,iSCSI The target container will start from one of the remaining online nodes , And provide data by connecting to the available replica container .
Source code
The implementation of this part includes two containers :
- openebs/jiva: Storage control function , Including replication logic
- openebs/gotgt: from openebs/jiva The use of iSCSI Target function
Control plane
OpenEBS The control plane is also called storage arrangement or maya. The purpose is to create hyperfused OpenEBS, Mount it to, for example Kubernetes、Swarm、Nomad Wait for the container scheduling engine , It is used to extend the storage function provided by a specific container choreography system .
OpenEBS The control plane is also based on microservices , Its services can be divided into the following parts :
- Container orchestration plug-in , Used to add the function of strong container orchestration framework :
- Kubernetes Dynamic configuration :openebs-provisioner
- Kubernetes-dashboard:openebs-dashboard
- Extended schema: be based on Kubernetes Of CRD( Custom resource type ), Storage OpenEBS Relevant configuration data
- The cluster service , Provide OpenEBS Specific storage intelligence , Such as :
- maya-apiserver: Contains... For performing volume operations API, Convert orchestrated requests to specific operating system containers
- maya-mulebot: Use the collected information to suggest optimized layout and event handling tips
- maya-connect: Allow uploading monitoring data to
maya-cloud
, In order to further analyze the storage access mode
- Node services , Provide OpenEBS Specific random kubelet Storage intelligence running together , Such as :
- maya-agent: Including storage management functions
By using prometheus、heapster、grafana and jaegar Perform the above services , Monitoring and tracking functions can be added .
Source code
- openebs/maya: All specific binaries ( Non plug in ) All stored in this warehouse , such as
maya-apiserver
、maya-agent
、maya-mulebot
、maya-connect
、mayactl
wait . - openebs-dashboard:kubernetes-dashboard The branch of the project , Expanded storage capabilities .
- openebs-provisioner: come from Kubernetes Of the incubator project OpenEBS K8s Provisioner.
Reference resources
版权声明
本文为[Blood dragon waving wings]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204230828552938.html
边栏推荐
- okcc呼叫中心外呼系统智能系统需要用多大的盘存录音?
- 【58】最后一个单词的长度【LeetCode】
- L2-3 浪漫侧影 (25 分)
- PLC的点表(寄存器地址和点表定义)破解探测方案--方便工业互联网数据采集
- idea配置连接远程数据库MySQL,或者是Navicat连接远程数据库失败问题(已解决)
- 还原二叉树 (25 分)
- Flash project cross domain interception and DBM database learning [Baotou cultural and creative website development]
- HAL库的RCC简介
- 在sqli-liabs学习SQL注入之旅(第十一关~第二十关)
- 匿名類型(C# 指南 基礎知識)
猜你喜欢
Transformer XL: attention language modelsbbeyond a fixed length context paper summary
汇编语言与逆向工程 栈溢出漏洞逆向分析实验报告
Learn SQL injection in sqli liabs (Level 11 ~ level 20)
IDEA导入commons-logging-1.2.jar包
MATLAB入门资料
Yangtao electronic STM32 Internet of things introduction 30 steps notes 1. The difference between Hal library and standard library
L2-3 浪漫侧影 (25 分)
洋桃电子STM32物联网入门30步笔记二、CubeIDE下载、安装、汉化、设置
Notes on 30 steps of introduction to the Internet of things of yangtao electronics STM32 III. cubemx graphical programming and setting the IO port on the development board
Get the absolute path of the class according to the bytecode
随机推荐
求简单类型的矩阵和
【IndexOf】【lastIndexOf】【split】【substring】用法详解
Enctype attribute in form
共享办公室,提升入驻体验
ONEFLOW learning notes: from functor to opexprinter
What is RPC
Transformer XL: attention language modelsbbeyond a fixed length context paper summary
STM32 uses Hal library. The overall structure and function principle are introduced
Play with binary tree (25 points)
Large amount of data submitted by form post
四张图弄懂matplotlib的一些基本用法
扣缴义务人
Add random attributes to the Li class array objects and sort them
K210 learning notes (II) serial communication between k210 and stm32
pgsql想实现mysql一样样的列子查询操作
在sqli-liabs学习SQL注入之旅(第十一关~第二十关)
请提前布局 Star Trek突破链游全新玩法,市场热度持续高涨
Swagger document export custom V2 / API docs interception
什么是RPC
PLC的点表(寄存器地址和点表定义)破解探测方案--方便工业互联网数据采集