Kubic with OpenSDS
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Subtitle |
| |
Alternative Title |
| |
Title of Series | ||
Number of Parts | 40 | |
Author | ||
Contributors | ||
License | CC Attribution 3.0 Unported: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/54411 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
openSUSE Conference 201926 / 40
7
11
12
13
15
16
17
18
19
20
23
25
26
27
34
38
40
00:00
Data storage deviceSoftwareDigital rights managementPerturbation theoryComputer animationUML
00:22
Content (media)Table (information)VolumeService (economics)Library catalogSpring (hydrology)Multiplication signSoftware testingContent (media)Computer animation
00:48
Group actionCovering spaceMixed realityEvent horizonWordComputer virusCubic graphFacebookTwitterUMLComputer animation
01:31
Open setStack (abstract data type)Data storage devicePoint cloudAbstractionSoftwareBit ratePhysical systemComputer fontVolumeFunction (mathematics)MultiplicationHuman migrationReplication (computing)Video gameSample (statistics)ImplementationBlock (periodic table)Object (grammar)Focus (optics)Floppy diskProjective planeCapillary actionSimilarity (geometry)Linear partial informationMetropolitan area networkStatic random-access memoryWeb pageGraph coloringInheritance (object-oriented programming)Physical lawSpacetimeGame controllerComputer programHydraulic jumpCoefficient of determinationAvatar (2009 film)View (database)Drop (liquid)Point (geometry)SoftwareTopological vector spaceSpecial unitary groupBuffer solutionFlock (web browser)FreewareState of matterReal numberVideo gameMultiplication signTotal S.A.Pattern languageSquare numberFamilyoutputMobile appSet (mathematics)VideoconferencingBelegleserMaizeComputer fileSeries (mathematics)Copyright infringementGroup actionPressurePhysical systemBus (computing)Cartesian coordinate systemThread (computing)WordOpen setDigital rights managementOperations support systemFunctional (mathematics)Human migrationLattice (order)System administratorUser interfacePower (physics)System callReplication (computing)Tape driveClient (computing)Open sourceDevice driverStack (abstract data type)Row (database)Single-precision floating-point formatLogicObject (grammar)Cubic graphComputer fontWritingPlug-in (computing)Scripting languageGastropod shellSlide rule2 (number)Operator (mathematics)Data storage deviceVirtualizationEndliche ModelltheorieCodeCASE <Informatik>Order (biology)Volume (thermodynamics)Service (economics)UMLComputer animation
11:32
VolumeContent (media)Monster groupVolume (thermodynamics)Data conversionMultiplication signWebsiteDew pointDrop (liquid)Software testingLink (knot theory)Game controllerType theoryQuiltMedical imagingPeer-to-peerOperator (mathematics)Strategy gamePhysical systemWritingSharewareData storage deviceMathematicsMessage passingComputer animation
13:55
Data storage deviceSocial classAerodynamicsVolumeRoundness (object)VolumeCubic graphBlock (periodic table)Direction (geometry)Software testingGame theoryDisk read-and-write headWeb pageMultiplication signSoftwareVideoconferencing1 (number)Physical systemSampling (statistics)Proper mapRippingPolygonData storage deviceKeilförmige AnordnungComputer fileBridging (networking)Drag (physics)Open sourceWebsitePlug-in (computing)MUDPSPACESpherical capFuzzy logicType theoryIntegrated development environmentInterface (computing)Volume (thermodynamics)Computer programGame controllerSocial classVery-high-bit-rate digital subscriber lineSlide ruleSystem administratorException handlingExpressionCASE <Informatik>Point (geometry)Asynchronous Transfer ModeCategory of beingProfil (magazine)Endliche ModelltheorieWritingComputer animation
18:45
Service (economics)Library catalogElectronic mailing listInstance (computer science)Bit rateAlpha (investment)Graph (mathematics)CubeCurveOpen setMetropolitan area networkInjektivitätSocial classMassLevel (video gaming)Rule of inferenceBuffer solutionCartesian coordinate systemVideo gameWebsiteLibrary catalogFamilyRootObject (grammar)Service (economics)Translation (relic)Position operatorGame theoryWeightDiscrete element methodServer (computing)Frame problemKeyboard shortcutMultiplication signTerm (mathematics)Thermische ZustandsgleichungHeegaard splittingStaff (military)Software testingWater vaporWordWaveWritingValue-added networkGrass (card game)MaizeCellular automatonRoundness (object)System administratorInstance (computer science)Lattice (order)Mechanism designType theoryVolume (thermodynamics)Computer fontPlanningService-oriented architectureMultitier architectureRepresentation (politics)InformationMatching (graph theory)FreewareImplementationSoftware developerElectronic mailing listReplication (computing)Operator (mathematics)Endliche ModelltheoriePlug-in (computing)Set (mathematics)Run time (program lifecycle phase)AdditionComputer animation
25:25
Video gameCompilation albumScaling (geometry)Cubic graphPRINCE21 (number)Set (mathematics)Event horizonGame theoryWebsiteJust-in-Time-CompilerStructural equation modelingField (computer science)LaserOpen sourceDistribution (mathematics)Point (geometry)BootingWikiPresentation of a groupComputer animation
27:34
Videoconferencing
Transcript: English(auto-generated)
00:36
This time, I will speak to this content.
00:41
Richard and Takeyama, thank you for mentioning to my talk. Sorry. Hello. Nice to meet you. I am Shuta Hashimoto. I am a member of OpenSUSE Japan User Group.
01:04
My work in the group is managing events. Introducing OpenSUSE at the conference. I introduce portals and cubic. Most important, my work is to write geek magazine articles.
01:22
I usually use this icon, Twitter and Facebook and OSCM. Thank you. Okay. What is OpenSUSE?
01:43
OpenSUSE is abstraction layer of storage. To design, used by many systems, and use many storage. Their goal is open autonomous data platform. Inside, using OpenSUSE, there are container systems like Kubernetes, Docker, virtualisation
02:10
systems like OpenStack, VMware, and other like Cloud Foundry. This is the upper side in slide.
02:22
Inside, used by OpenSDS, there are two categories. First is the storage. This includes LVM, self, cinder, and more. This is on the left side inside.
02:40
Second is multi-cloud. This includes Amazon S3, Azure Storage, and more. Upper side systems use transparently storage and multi-cloud storage.
03:07
Oh, by the way, what is software-defined storage? Usually, when we use storage by the system, system administrator set up all things.
03:22
Sometimes, system administrator same as system operator or developer, or he should have many skills and many jobs. He creates volume and adapts it to system, and adjusts total storage.
03:42
SDS do it automatically. System operator order volume, so system requests that to SDS system, and SDS system do it, creates volume, and attach it.
04:01
This case only includes create and attach, but SDS can do detach, delete, replication, backup, and more. In this workflow, there is one important point. That is how request.
04:22
If administrator set up volumes, he can adjust set up each steps. About SDS, system should request definition, and SDS system should publish API for that
04:40
definition. This model is like infrastructure as code. It is as code if I say. Of course, code is written by not only administrator, but also system itself.
05:11
Okay, I return talk to open SDS. It became to this outline when I map SDS model to open SDS.
05:23
Open SDS has northbound plugin project named Sushi. This provides how system join open SDS. Sushi provides CSI and service cattle for Kubernetes, single compatible API for open
05:43
stack. This is outside of Sushi, open SDS has command line interface and dashboard. Dashboard is web interface. You can log in and manage open SDS from dashboard.
06:02
How about row size? Open SDS only defines and implements API. Open SDS has many drivers that join API to physical things. For example, LVM driver creates logical volume from volume group.
06:24
This case, administrator only set up volume group. DRBD driver creates host-based replication between two hosts. If you want to append new storage solution, only you should write driver, but maybe
06:44
that is a slightly hard work. Open SDS has only server program. To use it, only run it. Open SDS has driver controller program named doc.
07:05
Doc manage storage drivers and controller manage doc. One case, cubic use safe through CSI.
07:22
Another case, open SUSE use AWS S3 object. Unfortunately, there is no northbound plugin for open SUSE, but open SDS has command line interface, dashboard, and client program.
07:41
We can write shell script or client program. Honestly, I say many storage has manager or is manager. For example, DRBD has reinster, and open stack can manage volumes itself.
08:00
And before session talked, luck is also. About this point, open SDS has no advantage. Reinser can manage DRBD more effectively than open SDS. The one of open SDS advantage is to manage multiple storage and used by multiple systems.
08:26
Open SDS has design outline on their GitHub. Please see that to no details.
08:44
Let's see functions. About storage, open SDS can create volumes, attach volumes, snapshot, replication, and delete. About multi-cloud, use bucket and migration.
09:03
Each functions only do one thing. That is small power. But open SDS has autonomous data platform. That means each functions cooperate each other. I tell one scenario, system request volume.
09:22
Open SDS create volume and replicate. Every day, get snapshot. After a month, system does not need data. Open SDS moves data to call the tape, sorry, call the tape. Like tape. Not tape that has not implemented yet.
09:45
About multi-cloud, open SDS implements migration. You can migrate data from AWS S3 to Azure storage.
10:06
About open SDS, developing is going on. Start is that, zero. So, A, Alba. B, Bali. Oh, Bali is host of open SDS summit this year.
10:22
And C, Capri is now developing. Capri feature being managed to master of open SDS GitHub. There are many notable features, especially data lifecycle. Data lifecycle manage object lifecycle.
10:40
To define town, AWS S3 object migrate to Azure storage after that time. And finally, delete it. If data have lifecycle, like log, you can map it to storage. This is the future of open SDS.
11:02
Many companies join open SDS as user, and establish user group name and user advisory committee. They do not advise user, they advise developer. They request their want and need.
11:20
Health meeting by week. This project grow depend on user demand, same as other open source projects.
11:43
Okay, changing the topic. ITOC container volume strategy. First, I talk about Docker. This picture is draws container recreate. You know, container is virtualisation system.
12:03
Container contains all things. But, that means container also has data. Container has one advantage, that is, you can recreate container from image anytime. Recreated container is same as before, because it created from same image.
12:28
Image don't have data. So, container also don't have data. We resolve this demo to write data outside of container.
12:41
One is mount host pass. Or two is use data volume container. Our data volume container is container, so it has same timer. Usually, we plan back up to safety place.
13:00
When we design container storage strategy about Docker and Kubernetes, most important thing is to determine which data need to be outside of container. In other words, which data need to be persistent?
13:21
It is necessary to know container structure so that we know it. Which data does not change from image? Which data changes from image in operation? Which data changes from image is clue of which data needs persistence?
13:43
And, if we can, we should express which data is changing in operation when we create container images. Okay, cubic and volumes.
14:16
About cubic, POD learns independent nodes.
14:21
So, POD cannot use nodes except defining node affinity. Upper side of this slide is independent nodes. Lower side of this slide is dependent physical-like nodes.
14:40
So, to join POD to volume, volume should be network volume. This item in slide express Kubernetes resources except storage most lower item and admin which is human. To use this mechanism, POD should have persistent volume claim name
15:05
to use and mount point in POD. Persistent volume claim define what want. For example, volume type, capacity, and access mode.
15:20
Type is storage class which is second from bottom resources. Persistent volume is express volume to use. This defines type, capacity, and access mode which is same as persistent volume claim.
15:41
Further, storage data like API IP. Last is storage class. This is category of storage. Category is defined by administrator arbitrarily. Not storage demands. For example, high speed and low speed.
16:05
To say, policy. This definition is called profile. Some storage systems include OpenSDS. Kubernetes has two ways to provision volume.
16:22
One is the left side. This is handmade by administrator. Administrator write YAML for persistent volume. Kubernetes attach persistent volume to persistent volume claim automatically. Kubernetes finds satisfying demand persistent volume.
16:46
Define of data, sorry. Define of storage data like API IP in persistent volume is used by this case. Two is right side.
17:02
This is dynamic provisioning. To create persistent volume claim, persistent volume is created by Kubernetes automatically. This model like software defines storage. To use this, we need to define provisioner in storage class.
17:24
Provisioner create persistent volume and attach pod automatically. Kubernetes has many provisioner of major storages like ZCE, persistent data, shinde. Further, Kubernetes supports CSI, which is common storage interface.
17:49
CSI can append other storage provisioner and can use same way in this dynamic provisioning. I say simply, CSI need to learn node programming pod
18:02
and controller programming pod, two pods. So, to define provisioner in storage class, we can use this append provisioner. The one way, one other way that OpenSDS supports Kubernetes is CSI.
18:26
This is released and recommended. Now, this is the only way to OpenSDS used by Kubernetes, by cubic.
18:52
Okay, item feature features. This is alpha features.
19:05
Kubernetes implements service catalog, which is implementation of mechanism to use open service broker. Open service broker is API of service broker. So, what is service broker?
19:23
Service broker is solution of crowd foundry to use other managed service. Service broker join crowd foundry to other managed service like RDS. Developer implements open service broker as cluster service broker.
19:44
Service catalog in Kubernetes use cluster service broker. Cluster service broker mediate between Kubernetes and managed services. I tell workflow to use service catalog.
20:01
First, first, Adobe Solider gets list from cluster service broker. Cluster service broker shows list of service from managed service. This list represent in Kubernetes as cluster service class and cluster service plan.
20:24
Cluster service class is type of service like volume. Cluster service plan is plan of service like free tier or paid tier. This time, there is no instance anywhere, only get list.
20:45
Second, use managed service for pod. This step has two Kubernetes resources. One is service instance. This is represent service. Two is service binding.
21:03
This is represent bindings of pod and service instances. Administrator selects cluster service class and cluster service plan for pod. And creates service instance defines their plans.
21:23
This step creates managed service instance. So, administrator creates service binding for pod. This step creates secrets, includes binding information. Secrets is one of Kubernetes resources.
21:43
This defined subject is defined each managed services. Last, administrator creates pod, defines secrets, service binding made.
22:00
In this model, administrator need create service instance and service binding. And administrator tell operator service binding information to need pod. Operator creates pod with reference to that information.
22:20
I tell this in talk of kubic and OpenSDS, but workflow is same as a managed service.
22:42
So, OpenSDS develops service broker. Now, this is alpha. Outline is same as other service brokers I explained. Managed service is OpenSDS. And cluster service broker develops OpenSDS, made it between kubic and OpenSDS.
23:05
Service class that cluster service broker show is volume service. Yes, OpenSDS is solution of volume. Service plan that cluster service broker show is report, replication and more.
23:22
Administrator creates service instance with to set service class and service plan. And creates service binding with to set service instance. Service binding creates secret, includes binding information which include volume ID.
23:45
Now, I talk about one new feature of Kubernetes that named pod preset. This is also alpha. This is injection additional runtime requirements into a pod at creation time.
24:02
Pod preset define injection data. When pod create, pod injected that data. Level selector made it between pod preset and pod. This case, pod preset define volume and volume months. And define match levels.
24:24
Operator only create pod include level, match the match levels in pod preset. Pod preset needs volume ID that define service binding. And use flex volume plugin to join volume.
24:41
To use flex volume is a bad idea many people think. So, this should be changed. This model administrator creates service instance, service binding and pod preset. And tell operator level name which is match pod preset.
25:04
Operator only define level name that tells by administrator. Cluster service broker OpenSDS developed will improve. So, cubic can use OpenSDS effectively through service catalog.
25:33
Finally, I speak packaging status.
25:41
Oh, unfortunately, all distribution do not remark OpenSDS. But yesterday, OpenSDS member told me that salt is ready. But this is only for OpenSUSE, not cubic, not micro OS.
26:01
Other way, we have to compile to use OpenSDS in OpenSUSE. In fact, OpenSDS is newer solution. Unstable and too complex. But OpenSDS has potential. I think there is worth to package it.
26:22
I want somebody to package it. Or if nobody eat, maybe I will try to package it. Please help me if I do. There is one notable point. OpenSDS tutorial wiki has taken that we recommended use Ubuntu strongly.
26:45
I tell them that I do that tutorial as OpenSUSE. They rejoice that. I want to modify that take us to boot and OpenSUSE strongly. I will express experience to use OpenSDS.
27:04
Please remark it and use OpenSDS with cubic. Thank you. That's all my presentation. I have quite a lot of time, but sorry, I'm not good at English. Please ask slowly. Any questions?
27:26
Okay. I finish my talk. Thank you.