 Good morning, good afternoon, or good evening everybody joining us for this webinar and welcome. We will start just in a couple of minutes to give a chance for more people to join us. While we wait, I would encourage everybody to say hello in a chat box and tell us where you're zooming in from. Hello, good morning, good afternoon, or good evening everybody depending on where in the world you're zooming in from. Welcome to this hyperledger in-depth webinar and we'll be starting in just a couple of minutes. And while we wait, I would encourage everybody to use the chat button to say hello and tell us where you're zooming in from. Good morning, good afternoon and good evening everybody. Welcome to this hyperledger in-depth webinar with Ziv. We'll be starting in a minute or two. Please use the chat button to say hello and tell us where you're zooming in from. Hi Govind and hello to London. Welcome to the webinar. Okay, we are now already at 30 people, so let us start with the webinar. So first of all, welcome everybody and very happy to have you here and welcome to our hyperledger foundation in-depth webinar with Ziv on enterprise DevOps automation for launching and managing your blockchain networks. We're delighted to share with you this webinar and very excited about the presentation. So my name is Tomar Sedej and I'm an ecosystem manager at the hyperledger foundation. Today, I will have the chance to introduce it to our panelists and also do some housekeeping. So if you introduced, if you have joined any of our previous webinars, you know we have some housekeeping rules. So first of all, I would like to emphasize that all are welcome in the hyperledger community. We are committed to creating a safe and welcoming environment for all. So please follow the hyperledger code of conduct when interacting with one another and also talking to others in the community as well. You can find our code of conduct on our wiki or on our web page. Our all hyperledger foundation member webinars are held under our Linux foundation antitrust policy, which you can also find on our wiki or on our event page on our website. This webinar is being recorded, so it will be available in our webinar library along with the slides. So you're always welcome to return and check out the some information that was shared today. We are also live on YouTube so also welcome everybody joining us there. So we encourage these meetings or the webinars to be as interactive as possible because you know the more interaction and activity we get the more everybody gets out of it. So, please feel free to raise your hand and ask to be unmuted and just ask your questions to our panelists. And if you would prefer not to talk, you can also very welcome to use the Q&A box or the chat button to use the questions to enter your questions. And the same goes for you joining us live on YouTube, please feel free to comment there and we will address these questions as we go along. In case some of your questions couldn't get answered, you're also welcome to use our hyperledger foundation discord channel, which I will share at the end of this presentation. So without further ado, I'm very happy to introduce you to today's panelists. So I would like to introduce you to Gan Vashishta, who is the co-founder and CTO of Ziv, the Sankap Sharma, a co-founder and VP of engineering, and like Star Gaur, who is the blockchain architect at Ziv. We look forward to these webinars and without further ado, Gan, over to you. Thank you. Thank you, Thomas and welcome everybody. Good evening, good afternoon, good morning. We are really glad to have people joining us from across the globe. I'll simply switch to the slides and get off to start. So today's focus would be on hyperledger fabric, hyperledger fabric and hyperledger fabric. This is one protocol which has established its presence across the enterprise space, delivering a lot of promises which blockchain is supposed to have and in terms of converting different use cases. And we at Ziv have been phenomenal in terms of approaching towards the DevOps and making adoption more possible. And there's no question about blockchain being the real trend of today, the practical trend of today. It's no more a hype, it's no more just in talks, there are so many implementations which are happening. And right now the focus of the whole hyperledger foundation, it's been really phenomenal in the sense the way the whole ecosystem is being driven and we are proud to be part of the same as well. And the joint collaboration of all the members and the foundation is towards making blockchain easier, better and more predictable to different use cases and industry scenarios. So we at Ziv, we've been working with enterprise use cases for some good time already. It's been like seven years that this team has spent with blockchain. And we've been one of the teams who have been part of hyperledger fabric implementations when it was very infant, the version 0.5 as I remember last. So we've been working on hyperledger fabrics since then and during a journey on working with hyperledger fabric for different implementations, we realize that it's not just about implementing the solution, it's about covering a lot of ground around it and about it too, which includes setting up the network, configuring it, going live, maintaining the production SLA and there are challenges which needs to be met. So we created Ziv as an automation platform so that the whole ecosystem becomes complete and there are use cases which can leverage a lot of capabilities out of this automation to go to the market faster and meet promises of having a more stable, reliable and enterprise-grade blockchain solution built on hyperledger fabric. So the concept of Ziv started with automation of the configuration and deployments, but then it have gone across in terms of making it a perfect solution for a proper hyperledger fabric driven consortium as well. So Ziv as a platform supports multiple protocols, it support multiple clouds, it support all sort of flexibilities, for example, using either your own cloud or using the managed services from Ziv both. And beyond just setup configuration as an activity, you would also have monitoring and analytical capabilities available to it. So we would be demonstrating all this, I'll keep my conversation shorter because it's all about hands-on and seeing how to do hyperledger fabric better, faster and in no time. So the features at which any enterprise use case would require consists of three primary pillars. One is about the network security and its management itself and then operations which are mostly about the DevOps and engineering side. And then the application ecosystem of it, which are primarily the chain code side of things. So we would cover all these three pillars in bits, specifically including the CI CD. So I'll simply pass it on to Sunkel to take it from here and run us through what is going to happen today. Yeah, everybody. So yeah, Ziv for hyperledger fabric, Sun just spoke, we support a variety of protocols and the one that will be focusing on today is hyperledger fabric. So what does Ziv provide to hyperledger fabric engineers across the world? So we allow network management, create scale on board your stakeholders on to your network. You can add your nodes, you can stop your nodes, restart your nodes, you know, recreate them all what you want so it's proper scaling at your requirements. Monitoring at network level and node level so quite important when you're dealing with enterprise-grade monitoring chain code packaging and deployment. So a lot of times the confusion with, you know, smart contracts is that you have one author to smart contracts but ultimately it has to be packaged at a lot of places. It has to be put on to the decentralized network in a very neat manner coming from that one author. So allowing to manage your chain codes and be able to spread them across your networks. CLI based operations for integration with any tool so you can use Ziv as a deployment tool as part of your terraform strips or Ansible or anything at this point because of our CLI utility tool of Ziv CLI. And that basically means that we can allow integrations of any automation for any other tool that you may already be using. We also provide alerts and logging for blocks and services which is quite important at times, especially at the time of development or something is going wrong and you want me to have your engineers be able to take a look at what is going on inside your network. It's a fully flexible fabric topology so it's quite important to imagine your fabric network according to the rules that who can be the block publisher, who can be appeared and who can be, you know, folding a C&O and single. So you need to have, you know, possibility of very flexible topology where you can add orders to different organizations and divide your, you know, roles in that sort. So 24-7 support for Ziv blockchain devox experts so of course based on your plan and description, you would be by default allowed to our engineers for your own benefit. To figure out what kind of comments you want, you can pick your hope for us. So now we can also maybe perhaps see how high-digit fabric helps in CRCD process for, you know, everyday project because once you deploy it, it needs to be able to provide continuous upgrades. It needs to be, it needs to actually do a lot of things like making sure that your certificates are rotated on time for your fabric departments that you are given alerts every time whenever, you know, something, some rotation needs to happen or your, let's say, wanting something, you need to fix your resources that you're consuming within the network. So those things are considered, CRCD is something that is quite important for our fabric developers. And you can basically use it in ourcillary tool for the purpose of automating it all. Again, what we're showing the demonstration today is how we use GitHub for the purpose of maintaining our code version. And from there onwards, how are we going to use GitHub workflows to be able to demonstrate how a CRCD process of high-digit fabric chain code can be done using the ZEC ready to be tool. So based on your configurations of which kind of peers, you know, peers or whole network, that's if you want the deployment on, you can actually just configure it in thecillary tool and it will do it all for you. And on the panel, you'll be able to see the logs of what's going on, where has it reached, and are the continuous path up or not. So what we'll do at this point is that we'll perhaps show you a demonstration of all of this. Let's show you maybe you can bring your screen on and go through the demonstration. Yeah, sure. All right, my screen should be visible by now. Yeah, we can see it. All right, so yeah, this is the website, you know, a place where you can look up what ZEV is going to do next, what we have already incorporated in terms of protocols in terms of new features that we're launching on the platform. So let's say if you want to check what is happening on, you know, a protocol section, you can watch a quick video on how to deploy your first networks, whether it is fabric or Ethereum or polygon or much more protocols. Or maybe if you just want to sign up or log in into an existing user, you can do that as well. So, yeah, let's log into ZEV account. So this is the basic signup page where you can, you know, use your Google credentials or your GitHub credentials to sign up or maybe you can fill up this entire form to create a new user. So I'll be using my own user to go through with this demonstration. All right. Yeah, so this is ZEV dashboard. This is what the user sees when he actually logs into the ZEV account for the first time. So my dashboard is looking different because I have already, you know, a few networks and nodes created inside my ZEV account. So let's go through them one by one. So in the first section, you'll see cloud uses distribution, which tells you about the networks and nodes that you've deployed, you know, in different clouds. So few of my nodes are running inside DigitalOcean and some of my nodes are running inside AWS cloud. If I had a few more nodes in GCP or Azure, the graph would be different. So it can help you visualize your cloud, which is spendings or, you know, if you want to distribute your nodes and workloads across different clouds. And then there is a workspace, different ZEV components, which can help you understand your ZEV account and, you know, better get connected with the ZEV account. There are workspaces that you can create, workspaces are again your logical entities which hold your networks and nodes. You can, you know, imagine creating a workspace for a department or a set of networks or, you know, domains, for example, supply chain workspace or NFT workspaces to hold your NFT nodes and nodes. Similarly, there are a number of networks that you have deployed inside your ZEV account and then nodes that are associated to all of your ZEV networks. And then there are shared API endpoints, which we'll talk about more in the coming demonstration. And then there are clouds that you have already authorized with your ZEV account. So in order to use ZEV networks or deploy ZEV networks, there are two ways you can, you can, you know, go by BYOC approach. We call that which is bring your own cloud approach where you deploy your own, sorry, where you authorize your own cloud account with ZEV. And ZEV only provisions networks and, I mean, all the data that is being created by blockchain nodes are associated with your cloud accounts and services. And ZEV only helps you provision these resources and services. So I have two cloud accounts associated, which is, again, digital ocean and database. And then protocol-wise distribution where it tells you about how many number of networks you've deployed, you know, in each protocol. And in the section down below, you'll see system health details, like active number of nodes, if there are any open support tickets, if there are any inactive number of nodes, any warnings according to your node usage or network changes, any fatal issues or invites that are pending in your ZEV account. And if any of the products have been installed from ZEV marketplace into your networks. So in order to, you know, start creating and deploying your networks, the first thing that you would want to do is associate your cloud accounts if you're going to go with BYOC approach. And with that, you can come to cloud section and then there you can select my cloud. And when you click my cloud, you'll see the clouds that ZEV supports us of now. So I have my AWS account connected here. If you want to connect your own AWS account, you can click add AWS cloud. And then there you'll see a small form, which is going to ask you about, you know, your programmatic access key and your secret key, which can be created when you go into IAM section of your AWS account. And so you can provide a credential name to it for us to, you know, just to help you identify why this credential was created. Let's say you're going to use different credentials for your broad networks and different credentials for your staging networks. And then again, you can provide an additional label to, you know, these credentials, which helps you identify again. So when you add clouds, you will verify if the credentials are valid. And if the permissions are valid, and after you successfully, you know, associated the permissions, the credentials will be added onto your ZEV account. Same goes for any other cloud as well. I mean, with DigitalOcean as well, you can click add DigitalOcean cloud and you'll see a pop up again, which was going to ask you to give the programmatic API key, which you again can create from your DigitalOcean API. Access section. All right, so I think we can, yeah, before we come to networks, I think we should also cover API credentials. So API credentials are again a programmatic access that you can create for ZEV. So using ZEV as a web platform is just one thing. Again, you can use ZEV as a CLI tool, which helps you manage your, you know, network operations like chain code CICD pipelines with different networks like CORD, it helps you with the product deployment that has inside your CORD and nodes. So let's say we want to create a key for a network, we can provide it a name, let's say Hyperledger demo, let's say Chef demo. And then decide the service type if you want to, if you want this key to be used for network or, you know, for ZEV decentralized file service, but we're going to create it for network. And you can decide for which network you want to create for, let's say you want to create it for a network that you've already deployed, you can again associate it to with multiple networks. And then you can, you know, assign permissions to it if you just wanted to run pipelines or if you also wanted to read your network or add nodes to it. Or maybe, you know, view pipelines that have already been created inside your networks, so you can do that. So when you create key, you're going to get an access key and a secret key, which you can, you know, copy. And then, you know, you can integrate this with your ZCLI, which we'll cover in upcoming demonstration. Right. After that, we have subscriptions. So every node or every network that we want to deploy as first, first has to be subscribed through these subscriptions. I have two subscriptions here for my Fabric and Ethereum Metals that I've deployed here already. So if you want to subscribe more, let's say you run all your code and you want to subscribe more with the Z services, you can subscribe more. And if you want to update your existing subscription, you can do that as well here. So when you do click update, it will take you to the payment space where you can, you know, check out the payment details. I think we can jump on to workspaces then. So I have divided into, so there are three workspaces that I've divided, one for Fabric Networks, one for Carder Networks and one for public nodes and networks. So if you want to create a new workspace, you can just click new workspace button here and it will ask you to, you know, provide a workspace name and the short description to why you're creating this workspace. After you've created your workspace, you can come right on to networks section. Right, so my account is, my account already has your few networks created, which will explode in a few minutes. After you come here, you'll see an add network button in your account because there are no networks in a fresh account. So when you do that, you click add network button. And I have, again, it shows you the subscription that you've already bought. If you haven't bought any subscription, you'll see a blank, sorry, just a card which tells you to buy subscription. So when you buy subscription, you're going to see all the protocols that are supported which are public and, you know, permission protocols. So let's say I want to buy a subscription for Hyperledge of Fabric, like, like Hyperledge of Fabric button. And in there it is going to ask me if I want to go with, you know, Sieve Managed Cloud Approach or, again, BYOC which is bring your own cloud approach. So let's say I want to go with BYOC and in there it is going to ask me if I want, what cloud account I want, cloud account I want to go with. Let's say I want to go with AWS and then I can decide, you know, the requirements, I mean, according to my requirements of networks. So I have few CAs that I have to create inside my Sieve networks. And then I have to deploy orders and also like orders and then peers and then also I can identify. I mentioned the number of C nodes and peer services that I want to create inside my Sieve subscription. So yeah, after you've decided, you know, your subscription quantities, you can subscribe to it. It will again take you to the payments page where you have to check out with the payment details. So let's jump right on to network creation. All right, so go to our network and then I'll select the subscription that I already have. All right, so then you'll come to the create network form for the fabric, which is. So when you see fabric network creation, you'll see it is divided into four details step. The first step is to decide what fabric version you want to go with. So let's say I want to go with 1.4. If I choose 1.4, I have, you know, consensus choice between these three consensus type, which is draft, solo and Kafka. But let's say I want to go with the 2.2 version. Then I only have draft consensus available because other consensus choice have been deprecated in 2.2. After deciding my fabric version, I can click next. I have to decide my organization structure, how many organizations I want inside my network. So when I click that organization button, it's going to create pop up, which is going to ask me, you know, details about my organization. So first thing is to name my organization. So let's say I want to name it or G1 and then I can decide my C is admin username. So let's say I want to name it's admin C for or G1. And then I have to decide my password as well for admin C is admin C or G1 again. And then I can decide if I want to create this C service with the persistent volume. So all these deployments of public services are going to be created or deployed inside of fabric. Sorry, EKS cluster, which is going to be deployed on my AWS cloud account. So if you decide to go with a C of persistent volume, it is going to hold all of the data which is going to be produced by this C service. I can provide the size to it if I want to. Again, again, according to my network requirement. So let's say I want to go with 5 GB. So I can disable it just because I am going to create a demo network and I don't need these resources. So again, that is a choice that you have to make. If you're going to create a dev network or a staging network or a testing network, then maybe creating persistent volume services is not a good choice or a good idea because it adds more on to your cloud cost. Same goes with ordering services as well. We can add more orders into your networks if you want to have only one ordering to organization, you can have one only. And then again, with ordering services, you get to decide if you want to have a persistent volume for ordering services as well. Yeah, just a point here. So it's advised to have persistent volumes enabled if you're going for stable higher environments. Yeah, so what it allows is to have very flexible topology as you would want in a hybrid private network without any restrictions of which party can participate at the order level or which party can only participate at the peer level within an organization. So this flexibility with the options, these options are quite helpful at the time of architecting your applications. Right? So after you've decided your order details, you can come right on to peer details. So with peer services, you get to choose between, you know, the choice of database. So by default, peer services starts with level DB. And again, if you want to, if you're, you know, deploying a production based chain code or smart contract, we can go with cows DB, or even if our smart contract has any complex queries, they have to run a lot of migration, then we can go with cows DB. So if you decide to go with cows DB again, you can decide to have your cows DB to have more persistent volume and you can decide the size for the cows DB service as well. So let's say I want to go with the level DB here only. And the last detail that I have to fill out, which is again option would be to change my certificate sign request, which again creates my, creates all the certificates for the, for the fabric services with these details that have fell out here. It's after I'm done with deciding my organization structure, I can click next. So when I click next, the last detail is to channel details. Yeah, just on the CSR is just, you know, your legal identity off of the notes. So it's quite important attention if you're having production networks and you expect consortium to grow larger. It's good idea to put those CSR details in, because that represents you in that network. Yeah. Right. So channel details I get to decide if I want to modify my system channel it is again according to my own network use case. And after deciding channel details, you've also let you decide your application channel, which is going to be a default channel when your fabric services start, or maybe act as bootstrap channel when, when your network initiates you know for the first time. So that's how I want to create an application channel with my channel name. So not only is it created it will also make sure that all the piece that you've created inside your organization structure join this particular channel. So right next, the last step that I have to complete is to decide my cloud settings. So I have to name my network, which could be again demonstration network. And in your case it could be supply chain network or a finance network. And then I have to decide my workspace so in these works, this could be different for your use case. This is a fabric networks here, and then the cloud account that I want to go with. So it in my case it is the development cloud account. And then in what region you would want to deploy your workloads or network on to. So I'm choosing the AP south one which is India's mobile region. So you can note that you want to go with for your case deployment. That is three number of notes for me. And then the size of your worker groups or worker nodes that you want to go ahead with so let's have to go with the three medium here. So that is it I have completed all my network details. All I have to do is click create. It is going to check a couple of things in just this one page here. And then you have to bring your own cloud and it was which is always something that we have to be selected in one of the initial steps, but users have the options of choosing different clouds as well as the manager which is that you don't have to bring your own cloud here you can just select an existing cloud of a Z platform that the one that will provide and you can deploy your networks there itself. So all of that is there and then you can choose the machine sizes as we want to gain as lecture just mentioned, or based on your own performance of course requirements. Right. Yeah. All right, so we have created our first network for fabric. All I have to do is click continue now this deployment is going to take some time, because it creates a QBD cluster in the background and then it starts in a deployment of my network services so even if I click, if I created I'll see that although these services are here, but still they are being created in the background. So, for us to help us out with you know how a deployed network a fully deployed network looks like I have a network created here already, which is which I have already created for a small atm app like atm bank application. So, when you click here already deployed network you'll see the services that are inside that network so deep creates again a unique identity for all of your services and with that you'll see the cloud account cloud provider that these services were created using and then which organization these services belong to.