Follow me:
Listen on:

Day Two Cloud 103: Scality ARTESCA Is More Than An Object Store (Sponsored)

Episode 103

Play episode

On today’s Day Two Cloud podcast we talk storage with sponsor Scality, a storage software vendor. In this episode we explore its ARTESCA platform, which the company positions as cloud-native object storage designed for modern workloads. It can integrate with your Kubernetes environment, serve as storage for your public cloud, and more. We dive into the product architecture, use cases, and hardware options via Scality’s partnership with HPE.

Our guests from Scality are Brad King, co-founder and CTO; and Nicolas Trangez, Principal Architect. We’re also joined by Carol Bassett, Product Mgr, Storage and Big Data at HPE.

We discuss:

  • Scality’s storage software and the ARTESCA platform
  • ARTESCA as object storage, and why that matters
  • Storage hardware options, including HPE gear
  • Deploying and managing storage in a Kubernetes environment
  • More

Show Links:

ARTESCA – Scality

Gorilla Guide – to modern object storage for cloud-native applications

Gorilla Guide – to object storage for data at the edge



[00:00:06.300] – Ned
Welcome to Day Two Cloud. Today is a sponsored episode with Scality and we’re going be talking about their brand new platform, ARTESCA. And you know what? ARTESCA is more than just an object store. It’s more than just one storage system. And that’s one of the things that we learned over the course of this episode.

[00:00:24.600] – Ethan
Yeah, I thought this was like a it’s like a really fast tier one storage array. No, that is not what is all about. It can be that, but it is other things. It will integrate tightly into your kubernetes environment. It can be storage for a public cloud. It can be a lot of things. In fact, I ask a question partway through. It’s like it’s kind of like a storage proxy. And I was kind of right and a little bit wrong in that.

[00:00:48.030] – Ethan
Anyway, you need to listen to the show to understand what Scality ARTESCA is all about for modern workloads. It fits into a lot of interesting scenarios.

[00:00:57.880] – Ned
Yeah, and we got a lot of those scenarios from Brad King, who’s the co-founder of Scalilty, he is on the podcast, as well as Nicolas Trangez. He’s the principle architect from Scality so he can talk to the whole architecture behind it. And we even get into some hardware, some actual physical hardware with Carol Bassett from HPE because they have a partnership going there. So enjoy this episode with Scality

[00:01:21.240] – Ned
Scality Crew. Welcome to Day Two Cloud. And for those who are not so familiar, maybe with Scality as an organization, can you tell me what is Scality historically known for? And Brad, I’m going to hand that one over to you first.

[00:01:37.090] – Brad
So Scality is known for storage, we are a software company, we developed the technology a little over 10 years ago. It’s a distributed storage platform that does object storage, filesystem, and object storage, in fact, is a native platform. And we’re known for scale. That’s where the name comes from. We have lots of multiple petabyte platforms around the world. So we’re known for, I would say, mission-critical, really massive storage platforms based on truly software defined model.

[00:02:09.840] – Ethan
Well, you guys have a big announcement, you’ve got a product that you’ve brought to market ARTESCA. Can you summarize ARTESCA? What is this announcement all about?

[00:02:19.660] – Brad
So, to go along with the idea that Scality does really massive systems, we’ve had quite a bit of interest over the years from from our partners and from customers. Can’t we do a small Scality? Can’t we do one server? Can’t we do two servers? And the whole system was designed to be a fully distributed system, and it was very hard to to transform that model. So that’s one of the things that we really worked very hard on.

[00:02:46.880] – Brad
We wanted a new technology that would be fast, that would work with flash storage. We wanted a new technology that people could deploy very simply, something a little more shrink-wrapped. And so that prompted ARTESCA. There’s a lot of other things we could talk about, but maybe those are two of the key things, being able to start small and simple, being fast for flash storage. And then we can talk about a lot of other things that ARTESCA brings to the table as well.

[00:03:12.430] – Ethan
For small flash as in that’s that’s my tier one, what I’m pulling my data off primarily. So I’m getting really quick response time and and high throughput. Is there certain applications use cases that we’re aiming ARTESCA at?

[00:03:28.120] – Brad
Yeah and malware’s certainly a growing interest, but we’re seeing a lot of people having an interest in doing, GET, PUT, DELTES of really low latency. I think some people are replacing database blob’s with the technology and working in containerized environments is very interesting to have an API that you can, you can make things permanent with a very fast interface.

[00:03:51.970] – Brad
So those are some of the things that are driving it. And the fact that that flash storage is inexpensive enough today, people just get used to things being fast. Object storage wasn’t historically what was considered fast, but a lot of our customers are using it as as fast storage, at least fast enough to be human interactive. And we consider that really key to be able to be human interactive.

[00:04:16.870] – Ethan
Along the way there you said containers and A.I. or API sort of workloads. Did that mean did you just say kubernetes?

[00:04:28.070] – Brad
I did not, as a matter of, but I could have I could have said Kubernetes, but certainly Kubernetes is one of the big places where that’s happening. You know, that’s the container, franca, whatever you call that. But it’s the container container model that everyone is adopting. And obviously, there’s even a little more of an abstraction up from that, which is Lambda functions, which is just I just call things and they they do work. So I think we’ll see more and more of that.

[00:04:56.840] – Brad
But in any case, we’re talking about things that tend to be much more ephemeral in nature and would like to have the whole world as an API.

[00:05:05.840] – Ned
Right. Right. Now, you did mention that this is an object storage platform. Does that mean that there’s not a file storage component to ARTESCA?

[00:05:16.010] – Brad
So that is a difference with Scality Ring technology, which does have a native file system, and it represents actually about 50 percent of our business, really large file system deployments. But ARTESCA is purely object storage. And for all practical purposes, we’re talking Amazon S3 protocol based object storage with all those characteristics. But people have become used to expecting from an object storage like that.

[00:05:43.340] – Ned
When I think of object storage, I tend to think of big archives just being able to throw a whole bunch of files somewhere or objects somewhere for retrieval later. Maybe it’s a data warehouse, something like that. And I don’t think of primary stories. I don’t think of like super fast. Is that obviously the use case you’re going for with ARTESCA is more along that primary storage route. How does that integrate with my understanding of object storage?

[00:06:11.480] – Brad
What to say? I think the AI kinds of things some some of the people that we’re working with, I think Splunk would be a very easy example, have moved moving on from a model where you just have local storage on systems. And so they want to pool the storage back behind. They have really fast indexes on SSD, but very quickly they access data on the platform. Now, that’s not cold, it’s warm. But again, we’re talking about wanting things to be available fast.

[00:06:41.540] – Brad
The media industry is another place where media asset management technologies have adapted their their strategies to include object stores. So, again, you’re looking at a media asset management platform is interfacing with a human and they have a video and they click and they don’t want to have to go get a coffee while the video is loading. And that’s one of the things that’s moving a lot of people off of tape. And that’s true in the hospital world as well.

[00:07:11.370] – Brad
You have a doctor that wanted to see a patient record. They went away for the twenty four hours while it came back off tape and then they could look at the patient records the next day. Now we have people in an operating room that said, doggone it, I wish I knew two years ago what this thing looked like, this tumor looked like, and they can just click and bring it up. And again, you’re talking about human interactive speeds.

[00:07:34.850] – Brad
You’re not talking about a database. You’re not talking about seven milliseconds latencies, but you’re talking about I click and I have what I want kind of latencies.

[00:07:46.100] – Ethan
Brad, you’ve mentioned along the way here, flash storage. So when I purchase an ARTESCA solution, am I getting the storage or is this actually control plane abstraction? And I need to supply my own storage.

[00:07:59.150] – Brad
So what you’re getting is technology that uses hardware that stores data right? The in the end, you end up with block devices of some kind, be it a hard spinning, hard drives, QLC flash, NVMe flash some kind of some kind of system that is storing data. Right. And and that can be more or less abstracted. It can be bare metal. It can be somewhere in the middle.

[00:08:27.230] – Ethan
But I get something from Scality, I get something in a box that I mount in a rack and I powered on and it spins and goes whir and then there’s storage or?

[00:08:37.400] – Brad
Now we’re going to call out to our friends and partners, like HPE are going to be going to supply the hardware. So we are just a software company.

[00:08:46.370] – Ned
OK, so the software that’s being supplied is sort of the control plane. What’s giving you that object store and being able to manage all the various components that make up ARTESCA. But that’s going to be abstracted a little away from the hardware that underlies it, though, I guess for a really good performance storage system, you do need to, you know, have that hardware hooked nicely into the software. Is that something that you’re working towards with your various hardware partners?

[00:09:13.490] – Brad
Absolutely. And I mean, we we’ve worked for years with hardware partners on making sure that the hardware that’s being developed, next generations of hardware makes sense for our platform. But the industry is really come along in great ways that have helped us out faster, Ethernet is one of those ways, faster, faster back planes, there’s all kinds of things that we’ve just we just rise with the tide in general without investing a lot of money in new technologies. But we try to be as standard as we can.

[00:09:46.570] – Brad
We’re not using anything particularly exotic. But NVMe flash, I think, is one of those things that just came our way. And we’re doing our best to take good advantage of it.

[00:09:56.680] – Ned
We just we just happen to have one of your partners on the podcast with us. Carol, you’re from HPE, correct? And and you’ve formed this partnership with with Scality and specific, specifically around the ARTESCA platform. Can you explain what the connection is there and and what you’ve done to sort of make ARTESCA run even better?

[00:10:17.950] – Carol
Yeah, I’m happy to talk about that. So we worked really closely with Scality through this entire development process, really good collaboration, where we were able to show them our hardware roadmap plans and put in requirements saying we see where the industry is going, we see what customers are choosing to buy and helping them get this ARTESCA system prepared for a whole new generation of platforms. For years we’ve been selling object storage systems to customers who wanted the classic scale out petabyte size object solution that’s going to sit in the data center.

[00:10:56.650] – Carol
And we had storage optimized servers that helped lower the dollar per terabyte cost of a class of a scalable petabyte system. This is new, though, so I used to joke all the time that if you were buying object storage, just like those amusement parks, they have those signs that said you must be this tall to ride the roller coaster. We joked for years that your minimum investment into an object storage solution was a cluster worth of equipment. The cluster was how the data was protected.

[00:11:30.560] – Carol
Also, it was how we did the scale. And so your first purchase was kind of pricey. It was a rack and a lot of equipment. This new solution lowers that bar. So we wanted to be able to bring to market a bunch of solutions suitable for a single node deployment with all the media choices. So I’ve got this incredible new range in my portfolio so that we can deliver what a customer wants. I’m not going to shoehorn people into a specific appliance model saying I have a hammer, you are a nail, you will fit this.

[00:12:10.120] – Carol
No other choices. It’s our great portfolio. We can build it to suit. So I now have the ability to give you object storage in 1U platforms, 2U and 4U, and your choice of NVMe, all Solid-State or the classic hybrid models which were hard disks and solid-state for metadata. So we’ve got it all now.

[00:12:34.340] – Ned
Got it all. What does the underlying hardware look like on the platform. Is it just a bunch of NVMe drives? Can I mix in something a little bit faster or a little bit slower in that? And when you’re talking about multiple servers, what’s the how are they interconnected together?

[00:12:51.910] – Brad
Yeah, I mean, it is a distributed storage technology, right? So if you start with one server, you obviously don’t get a huge amount of of interconnect and whatnot. It’s all in the box. But the interconnection between the servers is just TCP IP interconnection and we’re using really the classic connectivity. We can store on spinning hard drives. We can store NVMe, we can store on SSD that are set up SATA-based and and we typically would keep a class of storage on one of those particular media.

[00:13:31.270] – Brad
We use metadata operations that are always on flash for speed. But but spinning hard drives can be the the place where a bulk of the data is put and we get performance that is spinning hard drives by writing data to a whole bunch of them all at once. And then may be Nicolas, more to add about how we use the underlying hardware in its all of its variety.

[00:13:53.540] – Ethan
But is there a public cloud component to this where, you know, if I’m in the public cloud and I want to leverage ARTESCA as a storage array, is there an offering there or not?

[00:14:04.250] – Brad
There could be the technology could run in a public cloud and run on on top of, for instance, a kubernetes cluster in a public cloud. In a sense, we’re providing something very similar to what many of the public clouds, the GCP, the the Azure blob’s the S3s are providing. So it’s kind of like you doing virtualization inside of a virtual machine. At some point in time it gets a little silly. But but certainly one thing we can do is we can interact with the public clouds, push daat into the public clouds, bring them back from public clouds.

[00:14:41.420] – Brad
We have a very rich set of functionalities that allows you to to come and go from public clouds and have part of your workload in a public cloud, part of it private.

[00:14:51.650] – Ethan
Does that make sense Brad architecturally? And I asked that from I watched a bunch of demos that that Scality has available on YouTube and so on. You know, there’s an emphasis here on performance and so on. So would it even make sense for to have a public cloud workflow that’s mounting Scality storage, that some high amount of latency, relatively speaking, high amount of latency distance away?

[00:15:13.970] – Brad
I think there’s some interesting cases. A really, really easy one is I have an ARTESCA platform that’s kind of in the edge or very in the edge. It’s on a remote data center. And what I would like to do is make sure that I never lose my data. So what I would do is replicate that data potentially to a public cloud and then I’d have a copy in the public cloud. We have some customers doing some very interesting things where they didn’t want to have a second data center for disaster.

[00:15:44.540] – Brad
So they set up Scality deployed on premises. This is not ARTESCA, but it’s it’s the the makings of ARTESCA, if you like. And they they backed up their data to the public cloud. And what they’ve done is they’ve scripted the whole platform that they’re using on premises in the public cloud. Should their data center go down, they can just fire it up in the public cloud. The data is already there. I’m running, running with Scality.

[00:16:14.750] – Brad
They can run all their applications on public cloud and they’re off and running. So they have a cheap and cheerful data disaster recovery platform that they only spend the cost of the storage for unless they they need it. And then it’s a really nice insurance policy. Maybe one last example that I think is pertinent and I think we’re going to see more of in the future is imagine that I have a data set on my local platform, take a whole collection of videos that somehow I’ve gotten hold of.

[00:16:44.110] – Brad
And I’d really like to tag those with information that would be useful for the future. Now, I don’t have a lot of expertize in tagging my videos or maybe doing doing speech to text, but I’d love to have all of that with my video collection. Instead of deploying a big cluster and trying to figure out how to do all that, I can push the data to the public cloud, which is free, except that I have to have a network, run really cool tools on the public cloud to to create tags for my data, put those tags on my data locally and then just throw out the data that I had in the cloud.

[00:17:19.540] – Ned
So that solves the egress problem that you have with public cloud where they charge you to get the data out. All you’re pulling out is the metadata, leaving the rest of the data. Goodbye. I don’t need you anymore.

[00:17:30.670] – Brad
And we have a customer doing a concept like this. They push videos to two to three major public clouds. They use their speech to text tools and they compare the results of the three. And then they’re big enough actually that they’re talking to the three of them saying, you know, you really stink at this, but these guys are better and we can work with all of them and get a better result as well. So and again, that’s pushing the data to the public cloud.

[00:18:00.550] – Brad
I just pull back to the really small result that uses all of the expertize that they have five hundred engineers working on. And then I just throw out the data that I push the public cloud and I think we’ll see a lot of that.

[00:18:13.660] – Ethan
Yeah, for what it’s worth Brad. All of the metadata browser function that’s in the ARTESCA interface couldn’t be more straightforward. It is just simple and easy to get all that data out and look at those tags and search on them and all the rest. So for anyone that’s not made much effort or cared much about metadata against the objects that you’re storing at, slick man slick, the way you guys laid that out.

[00:18:37.450] – Brad
And I think metadata search is really cool, but you have to have metadata. And I think we’re we’re coming toward a world where people are going to believe in metadata more and more, as is a great thing to accompany their data. And a really great thing about a platform like this is your metadata and your data are together. They live together and you don’t go, doggone it, my my data is two days newer than my metadata or I lost all my metadata and things like that. It’s all together in one place.

[00:19:07.600] – Ned
That has been one of the really big advantages of Object Store is that that close link between metadata and the actual data. And I’ve seen many use cases along those lines. One thing you mentioned way back when Ethan first asked the cloud question was deploying it on Kubernetes. And that perked up my ears because, you know, Day Two Cloud, we have to talk about Kubernetes. Is that the platform that ARTESCA is actually running on in the background? Is it using a distribution of Kubernetes to run

[00:19:36.370] – Brad
Nicolas’ our man.

[00:19:38.620] – Nicolas
Sure. So, yes Ned, you’re entirely correct. We at Scality embraced Kubernetes a couple of years ago to really run our software on a cluster of machines. Kubernetes really makes that easy. And then in essence, the ARTESCA services as exposed to the outside are kubernetes native applications which run in a kubernetes cluster. Now, of course, we can’t really expect our customers to have a kubernetes cluster lying around. So we did build our own kubernetes distribution, which we embed. So you want as part of the product.

[00:20:19.130] – Nicolas
So when HPE and Scality come to an opportunity with our ARTESCA, then HPE provides the hardware, Scality provides the software to to run the Kubernetes cluster. It’s called metalk8s Distribution. And then we install the various pieces that make up the software, the storage, as well as the data management services in such kubernetes cluster. What’s interesting is on how one hand, this really makes a bunch of things possible out of the box for our engineers who implement this software where before they had to to build automation and tooling, etc.

[00:20:55.990] – Nicolas
themselves. Now everything is like API driven and just works. But it also allows us to to to run this software in other environments. As an example, we are working there again with HPE, with their Kubernetes offering called Ezmeral to run the ARTESCA suite. Parts of the ARTESCA suite on an HPE provided Kubernetes platform.

[00:21:18.250] – Ned
So I don’t have to use the necessarily the Scality distribution to run ARTESCA. I could run it on any standard kubernetes distribution, including the one provided by HPE?

[00:21:31.030] – Nicolas
We’re currently looking at the various options. In the end, this is a commercial product, so if we if we go in, we need to support the whole stack. And Kubernetes is not always I mean, it’s not always the same. Yes, there is. There is a component to it. So there is a certain behavior you can expect from any kubernetes installation. But still, when you want to really support an installation and then this is about data, this is about data that customers store.

[00:21:56.210] – Nicolas
So it’s superimportant. It’s like the core of their business sometimes. We really want to make sure that the whole thing works, is operable, works over the long term, not just one shot to install it. And then maybe two weeks later, or when the Kubernetes cluster gets upgraded, things break again. So we are looking at the various various offerings of kubernetes distributions to support those on a case by case basis. At the same time, technically, we’re not buying into or we’re not tying ourselves into one of those distributions.

[00:22:26.740] – Nicolas
So we really use kubernetes the way you’re supposed to use it to get the portability benefits Kubernetes and container’s bring as well.

[00:22:36.850] – Ned
OK, so to a certain degree, even though you’re running on Kubernetes, that doesn’t necessarily matter to the customer who’s consuming ARTESCA.

[00:22:44.440] – Ethan
That yeah.

[00:22:45.370] – Ned
They don’t need to know that it’s nice. It’s a nice detail, but do they actually need to know or care that you’re using kubernetes in the background?

[00:22:53.000] – Nicolas
That’s exactly the intent. So if you’re a kubernetes expert then you can dive deep and maybe even run ARTESCA on your own platform. If you are if you don’t know about Kubernetes, you don’t want to know about Kubernetes. You just want to use theARTESCA, the product, the service it provides. Then we make sure that you can. And the fact that we use Kubernetes internally, I tend to call it an implementation detail. It’s there, but it’s not really exposed to the end user if you want to administer or use the services.

[00:23:24.610] – Ned
OK, so.

[00:23:25.260] – Brad
You’re a little bit like maybe it’s a little bit like an Android device. You don’t have to be a Linux expert to do an Android device. And probably most people you ask wouldn’t even know that they have a Linux device in their hand.

[00:23:39.520] – Ned
Even though the most popular mobile operating system in the world, no one knows that they’re running Linux. Right. That’s funny. So based off of the fact that you’re running Kubernetes, but that’s abstracted away from the end user.

[00:23:53.620] – Ned
What is the typical design look like? Because it sounds like I’m going to implement ARTESCA in its own dedicated cluster of hardware and then I’m going to access it through APIs, I’m guessing. Is that the typical architecture that you would have for a deployment?

[00:24:08.560] – Nicolas
Exactly. And then you mentioned APIs, of course, object storage, object storage service itself. You access through an S3 or other AWS APIs compatible APIs, we have S3 for the data piece. IAM for the identity management when it comes to deployment operations, creating for example, we use the so-called operator pattern that is quite, quite popular in the Kubernetes sphere to to really deploy and manage a lifecycle of all our services. So if you want to, for example, upgrade in ARTESCA, you would issue a call towards the Kubernetes API, change an object there, and then the upgrade will happen for you using the fairly well, the standard kubernetes primitives that we use internally.

[00:24:59.170] – Nicolas
And then last but not least, there is the whole operability aspect of things you want to be able to monitor to get statistics out of the system, to get logs out of the system, service logs, et cetera, et cetera. So there we we also embed various open source and very well-known technologies like Prometheus and Loki, which can also be accessed as an API or through their APIs from your existing data center infrastructure management, for example, or from the ARTESCA UIs for the ARTESCA UI itself is the so called single page application, which is really just a consumer of the various APIs that ARTESCA exposes.

[00:25:40.240] – Brad
I think in a complement to that, you can imagine deploying ARTESCA more or less without storage as a data orchestrator. So you can talk to ARTESCA and store data on a number of different public clouds on your own private infrastructure that you’ve already deployed and use it for lifecycle management, for for pulling in data that’s coming into a public cloud and downloading it to my private cloud. So I think those are the kind of environments you very possibly might be very interested in deploying it in in a kubernetes cluster.

[00:26:11.110] – Brad
You can even imagine being you know, I’ve decided that we’re moving off of Cloud X, and so we deploy ARTESCA in the public cloud next next to to my storage there. I download all the data using all the tools in ARTESCA over time, and then I just shut it down and go home. So there’s many different ways that we can use it for data orchestration or for providing a global view and even adding metadata to maybe platforms that don’t have much metadata, so in that environment, you don’t really need much in the way of underlying storage.

[00:26:43.990] – Brad
So it can be with underlying storage or it can just be a tool for for managing data.

[00:26:49.960] – Ned
OK, so what I’m thinking about ARTESCA. Initially I was thinking of it as just like a storage array that I interact with. But what you’re saying is it’s more than just a storage array that has a management interface and a data plane. You can use it to manage things that aren’t necessarily running the ARTESCA, the ARTESCA storage software. Is that is that what you’re saying Brad?

[00:27:08.860] – Brad
You can think of it as a is kind of a pane of glass to a whole collection of places that you have data stored. I’ve got data on Google. I’ve got data on Azure, I’ve got data on AWS, I have data on a platform, the Scality platform that I deployed five years ago and has 10 petabytes of data. And I want I want to try maybe using a public cloud a little bit so I can use ARTESCA to kind of pull some some of some of the data and push it to a public cloud, have a global view on it.

[00:27:39.670] – Brad
You can do things like migrating data from a place to A to B, and if you talk to your data through ARTESCA, wherever it is, ARTESCA will know where to find it. And you can augment your data with with a metadata add on. So all those kinds of things can be done. So really, it’s a tool both for doing your storage on the backend, but also moving around. One of the things we’ve learned over the years of providing storage is that people are are not sure what the future looks like, maybe that we didn’t need to provide storage to figure that out.

[00:28:11.410] – Brad
But but you have a reality where people are not sure. Is my future all on premises? Is my future all on AWS? Is my future a little of both? Is my future. Maybe my my today is AWS and tomorrow it’s going to be back on Prem. Yeah.

[00:28:27.670] – Ethan
Is my future repatriating everything I’m spending big money on in public cloud and bringing it back in. Or what does that look like?

[00:28:34.390] – Brad
Exactly. And for those kinds of things, the tool has a lot of effort has been put into moving data back and forth and moving data in and out of public clouds is harder than it looks because if you make a thousand requests, ten fail. That’s a mess. And so we’ve we’ve worked very hard to deal with those kinds of problems in an intelligent way.

[00:28:56.410] – Ethan
Brad, would it be an exaggeration to think of ARTESCA as a as a proxy, like a storage proxy? I talk to ARTESCA. ARTESCA has a whole bunch of different storage providers that it could access. As long as I’m talking to ARTESCA, maybe I don’t care about the ultimate destination of where am my object storage is because ARTESCA just handles that for me.

[00:29:17.500] – Brad
That is certainly one of its possibilities in a sense, like many Web servers could be a proxy or they can actually be the real web server. And so we can do both. We can be the proxy, but we can be the storage. And one of the things that’s very special about ARTESCA is we’ve developed some really exciting new data protection algorithms. Scality was famous, famous. I like to think we’re famous for for erasure coding across multiple servers, which allows all kinds of positive things, really good data protection, having servers fail, being able to do offline upgrades.

[00:29:53.770] – Brad
We didn’t want to lose that, but we wanted to be able to run on one server. So we’ve combined two kinds of erasure coding local to the machine between disks on the machine or media on the machine and then on the network both. So you have two orthogonal protections, if you like, on your data that makes for much better data protection and makes for a lot more possibilities, but also provides the ability to to protect data on a single machine, which we couldn’t do with the other technology.

[00:30:25.560] – Nicolas
But maybe to just go a bit further on that point next to the ability to protect data on a single machine, we now can also reconstruct that data, even if it’s partial that sits on that machine if you have a disk failure on that machine. One of the drawbacks of large scale storage systems is when even an individual which which targets individual disks is that when a disk fails, all of a sudden there is a lot of network traffic that needs to go on in order to reconstruct the data that happens to sit on the disk.

[00:30:56.700] – Nicolas
Now, with the growth of capacity of disks, that becomes problematic because if you have, say, a 16 terabytes disk, then we can reconstructing it would mean roughly 16 terabytes of network traffic, while our local erasure coding now also allows us to reconstruct this disk locally without really impacting your network, and hence most probably impacting your production workloads as well.

[00:31:23.940] – Carol
I’d like to add to that point. I finally have something about hardware to talk about. So so the capacities of disks are enormous. When we started selling object storage years ago, Brad, what were disks four terabytes?

[00:31:41.520] – Brad
The first platform we deployed had one terabyte disk, 12 of them in a 2U server.

[00:31:47.130] – Carol
And we thought that was awesome. Right. So hard disks are now 18 terabytes, NVMe disks are 15 terabytes. I can give you I just checked my data. I can give you more than eight hundred terabytes of raw capacity in a 1U server. So the the size and shape of the the faults zone, the footprint is completely different. So everything Nicolas said about being able to do that, that repair and correct that correction without having to go onto the network is super important.

[00:32:18.780] – Carol
And it is part of the story that helped deliver the the possibility of a single node object storage solution. That’s not a toy. It’s a real system. And it has all the goodness and all the protection that you expect. And I’m here to deliver you the platforms in the size and the shapes that you want.

[00:32:39.330] – Ethan
When you’re doing the erasure coding. Recalculation to fill in the gap on the failed disk. What are we saying that that’s all happening on the node that has the failed disk and so it can figure it all out in memory. This is what’s supposed to go here and then repopulate you pop in a fresh disk it Repopulates.

[00:32:55.980] – Brad
So the idea is that we’re not big believers in having a fresh disk that’s just sitting there waiting for something to do. So the idea is if if a media fails, we will rebuild the data within the realm of possibility if there’s enough space on the existing media. So you rebuild the data as long as you don’t run out of space. And that’s why we like to have customers keep their platforms not quite full, because the whole idea of a platform like this is you sleep at night when you lose a disk, nobody gets up.

[00:33:30.420] – Brad
You don’t have the 30 minute ultra premium support where the guy comes running in and replaces the flashing light disks on the server. Sometimes they do it at the end of the week when they’re running low on spare capacity. Right. So that’s.

[00:33:45.410] – Ethan
Right, OK, I get it now, because you well, as the network component here of the Day Two Cloud host constellation, Ned and I, it’s just just two stars in this constellation, but you said I don’t have to use the network to repopulate 16 terabytes worth. So I was trying to put together how that works. I think that makes better sense. Now, if you’re redistributing where. I don’t know, Stripe’s is the right word, but effectively, you know, stripe’s of data along multiple disks to put that all back in because you can’t just be doing it in memory on the fly forever.

[00:34:17.810] – Ethan
That’s that doesn’t perform well. So you got to put it back down somewhere. But we’re not putting it back on the disk that failed. We’re just re spreading it out across the remaining disks that are in the infrastructure. And then we get our performance back that the trade off being I’ve got to have that spare capacity in the array to be able to support that. And I’m assuming that’s an array building thing. When you build the array, you’re going to know at build time how much spare you want to have in to account for failures. Yeah.

[00:34:49.500] – Brad
Yes. Yes. I mean, I would say start with saying yes, but the reality is it’s all pretty flexible. You can add disk to the system. It’s not a static. You know, I wrote it once and it’s all all set in stone. I can add more disks in the future. I can I can add different protection schemes in the future if I need to.

[00:35:09.600] – Ethan
Well, sometimes I think I’m not that interested in storage. And then we have these conversations and it gets super nerdy. And it really is interesting. Distributed storage is a fascinating topic.

[00:35:18.990] – Brad
But the really cool thing, I think, is that we didn’t quit doing the network stuff. Right. And one of the great things that comes with a network component is being able to upgrade a physical machine while the system is running in production. So you take one of these machines offline. If the data is on another machine as well, either via erasure coding or by replication, your data is still available. So high availability when you’re in a multi server environment becomes absolutely a reality.

[00:35:49.830] – Brad
And if you run out of correction codes on your local machine, you can go to the network and to complete the work that was mostly done locally. So you have multiple ways of saving your hide in the sense.

[00:36:04.860] – Ethan
So let’s map this architecture that we’ve been talking about and how data is distributed across the ARTESCA world to kubernetes again. And I don’t mean from an admin perspective. I mean, I have a kubernetes cluster. I need to provide storage to pods that are that are running on that cluster. Can I attach ARTESCA storage to that? And what does that look like?

[00:36:27.650] – Nicolas
The interesting thing about object storage is that there is not really such a thing as attaching it, object storage is exposed using APIs, which sits on plain HTTP or HTTPS over plain TCP/IP sockets. So unlike traditional SAN, NAS, iSCSI, NFS, whatever based storage, you don’t need to attach anything. You don’t need any type of privileged kernel space operation to mount something or start a daemon or whatever else. You can simply talk HTTP/S to the storage system from your application.

[00:37:03.500] – Nicolas
The tricky part lies in, of course, assuming there is natural connectivity between the front end of the storage system and where your kubernetes cluster and its pods are running. The tricky part is in object storage is access credentials. You need a way to to mint credentials, a secret key and an access key in AWS terms, which then exposes this to your application in order for your application to be able to talk or create objects in a bucket, fetch objects from a bucket, etc.

[00:37:37.910] – Nicolas
, etc.. We are working. Of course, all of this is API driven using the IAM APIs. We are also working with some efforts in the Kubernetes SIG storage to identify or specify some standardized kubernetes APIs which make it possible to consume object storage buckets similar to how you can do it today using persistent volumes and CSI, which gives you file or block storage. We’re working with a bunch of vendors on efforts called COSI, the Container Object Storage Interface, which is a way for you declaratively with your application to say I want a bucket in the object storage system.

[00:38:19.220] – Nicolas
I want to get access credentials in to that bucket. It’s in that object system, object storage system. And when my pod starts, I want those credentials to be exposed to the application as environment variables, as a little virtual file, a logical file in the pod, whatever is being used to really automate a whole flow with your application’s CI/CD system or whatever you may be using. But of course, all of this is not strictly required today. If you have an ARTESCA running next to your kubernetes cluster, you can create a bucket using the standard S3 call, you can mint a secrets using the IAM calls, you produce it in kubernetes in a secret object, you expose the secret object as a volume mount to your pod, your application container of the stuff in your container, reads the secret access key, secrets key and those the end points to talk to and can perform these operations to the storage system.

[00:39:16.430] – Ethan
So is the storage system. Then I’ve got my credentials now. I can make the call. I’ll be authenticated and allowed. Am I as a as a kubernetes pod talking to something that’s inside my kubernetes cluster or am I basically reaching outside of the cluster to hit the object store?

[00:39:34.940] – Nicolas
Assuming your kubernetes cluster is not the one in which ARTESCA runs, then you go outside of your kubernetes cluster.

[00:39:43.940] – Ethan
So so let’s let’s put it in a framework of recommended architecture. Would I typically be hitting my own cluster that is running ARTESCA? Is that like ideally that’s good for performance, et cetera? Or would I more typically be reaching out outside of the cluster again, thinking proper architecture and so on? Oh, the answer is it depends, I’m seeing furrowed brows across the screen here, I love it.

[00:40:15.480] – Nicolas
Both are possible and both have their pros and cons. In the end, it really boils down to networking. Yeah. So so if if your Kubernetes cluster and the ARTESCA cluster sits within the same layer two domain, for example, then it’s not going to make much of a difference whether these are in logically the same kubernetes cluster or not, because you’re just going within the same networking segment. If your kubernetes cluster sits in a completely different data center, even then there is a performance impact.

[00:40:49.140] – Ethan
Mm hmm.

[00:40:50.670] – Brad
And I think clearly we’ve got kind of schools of schools of kubernetes users. We have those that I, we have our kubernetes environment. And and we know it like like, you know, I know the back of my hand. And I don’t want to deploy somebody else’s kubernetes environment and have to learn that whole mess. So deploying it in our environment is what we want to do. The other person I don’t even want to know what Kubernetes cluster is just deploy it next to my platform.

[00:41:19.200] – Brad
And then we decided to start using Kubernetes as well. We just deploy another one and there’s no big deal. So this is really not a perfect solution. I think some people that are really into kubernetes would be happy to get their hands in the down in the grease and figure out how the whole thing works. Right. Right.

[00:41:38.730] – Ned
I did want to dig a little bit deeper into how different folks might interact with ARTESCA, because some of them are going to use that data plane to talk the S3 compatible protocols to just put stuff in buckets and take it out. But there’s also people who want to operate and create the buckets and control the policies. And then above that, you’ve got the management layer of just how do I manage my cluster and interact that way? Is it all API driven?

[00:42:04.960] – Ned
Is it all CLI or a GUI? What are my options? And maybe we start with that, the management layer. If I want to manage my ARTESCA deployment, how am I doing that?

[00:42:14.700] – Nicolas
Fundamentally, everything we do is primarily API driven. All the operations you can perform against an ARTESCA clus, an ARTESCA installation is first there is an API to do it.

[00:42:28.260] – Ned

[00:42:28.710] – Nicolas
Of course we don’t want end users to issue curl commands in the terminal to interact with that API. That really that would be nuts. So we do build UIs for various operations as well. We try to make those as extensive as possible, given what you can do with an ARTESCA installation.

[00:42:50.370] – Nicolas
And for some pieces, we’re also adding some CLI support. We do know that people are looking to integrate ARTESCA operations in their existing automation platforms, think Ansible, think SaltStack, et cetera. Now, given the API first approach, it’s very reasonable and fairly simple to call into ARTESCA operational APIs from such infrastructure as well.

[00:43:17.070] – Ned
OK, so if I had a pipeline where I want to deploy a bucket that’s part of my application and set the IAM policies as needed that can all be orchestrated through the pipeline, talking to your your API regardless of which automation software I’m using. Right.

[00:43:33.670] – Nicolas
Yes. And those APIs are even not ARTESCA specific. We really build it so that we are fully compatible with the AWS S3 and IAM APIs. So if you have a module which can work like an Ansible module which can work against AWS IAM, then for the sets of IAM calls we support ARTESCA that very same module, you can call ARTESCA. You don’t need to develop any new module to work with the AWS compatible APIs we expose.

[00:44:07.500] – Ned
OK, so if I’m really already baked into that S3 and AWS ecosystem and I have my automation stuff set up, dropping some ARTESCA on premises is going to be very beneficial to me because I can just keep using all the operational things that I’ve written already.

[00:44:22.380] – Brad
And there’s tools written and I lost count of how many different programing languages. But certainly libboto is maybe the most famous, the Python libraries for running running with AWS and those work unmodified with Scality’s technologies, both for the S3 interface interacting with your data, but also for that IAM interface.

[00:44:42.780] – Ned
So creating policies, creating buckets, creating user credentials, all of those things are you just use a standard set of of tools and you can even use their documentation if you want. We have documentation, but you can use theirs as well.

[00:44:59.400] – Ned

[00:45:00.420] – Ethan
Well, we are getting close to the end of our time, this has been one of those conversations where I want to nerd out more on certain things, but at forty five minutes of a show. But Brad, I do have a practical question for you here, that as we as we wrap this up. We’ve been talking about ARTESCA. The ARTESCA storage solution, how it does things. But what if I’m already a Scality customer?

[00:45:21.540] – Ethan
I’ve been using Ring, let’s say, do these two systems, the new one and what I’ve had before, do they play together in some way or am I do I need to get on my migration trousers and begin planning moving data from one side to another? How does that all work?

[00:45:37.080] – Brad
So they absolutely work well together. And we certainly believe some Scality customers that have Rings today will have Rings 10 years from now. But I think clearly what you can do with ARTESCA we talked about earlier about the notion of data locations, your Scality Ring is just another one of those data locations. And as a matter of fact, maybe you have two or three Scality Rings you can have an ARTESCA platform that will make those Scality Rings look more like a single platform.

[00:46:08.160] – Brad
And you can move data back and forth between your two, three, five, 10 Scality Ring platforms if you want to. So they they really play in the same space. And over time, we’re going to integrate more and more the administrative functionality so that you can dig down through the ARTESCA interface and interact with your Ring in a little bit more interesting ways and bring stats up and then have a single pane of glass for for your your mixed ARTESCA Ring world.

[00:46:39.510] – Ned
All right. That that’s good to hear. It’s not a rip and replace kind of situation. You can use your existing system and just and augment it, make it, make it even better. Go faster. Right.

[00:46:50.580] – Brad
If someone has 20 petabytes rip and replace does is a nonstarter now.

[00:46:56.790] – Ned
But I think you made an interesting point. And as we move to wrap up, one of the things that really jumped out to me is this is an object storage solution for everybody else. You don’t have to start at 20 petabytes or 100 petabytes. You could start at a smaller size if you need object storage. This is a solution that is useful not just for the mega enterprises out there, but also the SMBs as well. Is that a correct statement, do you think, Brad?

[00:47:23.670] – Brad
Absolutely, and as a matter of fact, if you want to use it. Without support, up to 50 terabytes, just completely free, so.

[00:47:30.900] – Ned
Oh, my goodness. Well, 50 terabytes. That’s well, I guess I could store a lot of 50 terabytes. It’s kind of ridiculous when I think about it. Yeah, we will include links. We’ve got one for the main product page and also two Gorilla Guides, which I know the folks who write the Gorilla Guides and they do a great job. So those are definitely good reads for people to get into. Brad, Nicolas, Carol, thank you so much for joining us today on Day Two Cloud.

[00:47:56.100] – Ned
And hey, listeners out there virtual high fives to you for tuning in. If you got suggestions for future shows, we would love to hear them. You can hit either of us up on Twitter at Day Two Cloud show. Or you can fill out the form on my fancy website, Ned in the cloud dot com. Did you know that Packet Pusher’s has a weekly newsletter? It’s called Human Infrastructure Magazine, and it’s loaded with the best stuff we have found on the Internet, plus our own feature articles and commentary.

[00:48:20.400] – Ned
It’s free and it doesn’t suck. So you can get the next issue via Oacket Pusher’s dot net newsletter. Until next time, just remember, cloud is what happens while IT is making other plans.

More from this show

D2C218: What’s Inside The AI Magic Box?

AI and machine learning are being more widely used in IT and elsewhere. Today's episode opens the AI magic box to better understand what's inside, including software and hardware. We discuss essentials such as training models and parameters, software...

Episode 103