 Okay. Hello, everyone. Let me introduce myself first. My name is Xiaohua Guan from Tokyo, Japan working for anti-data interlink. The topic today is Cluster as a Service to Die. At the beginning, I've already created a page, and you can write down your comments, and also you can access today's slides in a shared page. Here is today's agenda. I will use 20 minutes to introduce Dodec and Dodec Deploy and Dodec Compute, and following that, I will show you a nav demo to construct for some Cloud on Amazon EC2 for about 10 minutes, and then in the next 10 minutes, I will leave it for your questions. Okay. Let's start from what is Dodec? Dodec provides class at the service, and it consists of Dodec Deploy and Dodec Compute. So what is class? Dodec can allocate service from resource pool, and use them to construct elastic private Cloud, and when you finish using the Cloud, you can return the service back to resource pool. This is the simple use case of class. As just I said, Dodec consists of Dodec Deploy and Dodec Compute. From the bottom of the picture, you can see Dodec Compute can allocate service from resource pool, and the software can be installed by Dodec Deploy, then OpenStack or other private Cloud software can be constructed. Of course, in addition to OpenStack and Eucalyptus, you can use it to install Hadoop, Sangria Engine, and other software else. Also, the cluster, among cluster, the network was separated securely. Okay. Let's introduce Dodec Deploy and Dodec Compute separately. Firstly, what is Dodec Deploy? In a word, Dodec Deploy is a software, is a tool to install or uninstall software in distributed environment, and it also opens up a project with lessons opportunities so you can customize it as you want. Here is the project page. Let's take a look at history of Dodec Deploy. Before Dodec Deploy, we also developed a tool named as Nova Deployment Tool, and it can be used to install Nova and show Nova Cactus version. But since OpenStack is the original version, we want to install more software, not just Nova. So we developed Dodec Deploy. At first version, we add the support for Diablo, Hadoop, and Sangria Engine. The next, we add templates for Essex and Eucalyptus. In the latest version, we also add the function of Instruct Service and the support for CentOS, and the support for Fossum in Ubuntu OS. So what are the features of Dodec Deploy? Firstly, it is a framework to manage templates of various softwares, and it can do installation parallelly. So in some ways, it's fast, and it can be scaled out according to your requirement. Also, it provides various interface for different users. Let's see some details about the features. It provides templates for various softwares such as OpenStack, Hadoop, Sangria Engine, and Eucalyptus. User can customize the existing templates, and also they can add their own templates. When you want to install software, you must consider about the dependency of the components inside the software. For example, when you want to install Nova, because Nova API depends on MySQL Server and RabbitMQ Server. So before you install Nova API, you should install MySQL Server and RabbitMQ Server first. In Dodec Deploy, it creates a schedule for the software according to the dependencies of components, and it will then do installation according to the schedule. As for the components, they are independent, they will be installed parallelly. Here is the graph for Hadoop installation time. When we increased the number of data load, the installation time just increased slightly. Of course, in ideal situation, the time should be constant. We will not change at all. Why the time change is because of the bottleneck in the Dodec Deploy, I will discuss in the next page. The left side is the architecture. When the Dodec Deploy and Rabbit Server are installed in same physical machine, when you want to use Dodec Deploy in that skill environment, you have to consider about the performance. How Dodec Deploy skill out, I use the way almost the same provided by Puppet, just like the right side shows. Behind the Dodec Deploy Server, we set up an Apache Server as load balancer, and the Apache Server will dispatch requests to different Puppet master processing, different physical machines. Then the nodes can be distributed to different physical machines. As for the beginner, it is used to use web UI. We also provide command line interface for such as system operator. Also, if you want to integrate Dodec Deploy to other system, you can use the REST APIs. Here we create a simulator page. You can use that page to learn how to use the REST APIs. So till now, I have gone through the features of Dodec Deploy. Next, how Dodec Deploy do instead it? Firstly, Dodec Deploy was developed on using framework Ruby on iOS 3. It is a puppet to manage automatic software installation and use M-Clacktive and Active MQ Server to manage communication between server and the node. Here is the process flow of inside Dodec Deploy. When user click install button in the browser, the browser will send a request to Dodec Deploy Server. When the Dodec Deploy server received the request, it will create a schedule for the software you selected. And then it will send the request to the M-Clacktive server in corresponding Dodec Deploy nodes according to the schedule. And then the puppet client will be started in Dodec Deploy nodes. Well, when puppet client started, they will retrieve the latest manifest from puppet server and do installation there. Today, we will also introduce the new functions about Dodec Deploy. Firstly, we introduce the concept of install as service. And we also add support for centers. And also, we can use Dodec Deploy to install for some in Ubuntu OS. So what is install as service? In word, install as service is provide installation of software as a service. So there is no need to install Dodec Deploy server anymore. And the user can add node belong to Dodec Deploy and also create a proposal. What is the proposal? The proposal is the plan to install software of Dodec Deploy. Here is the page of install as service. The left side is the login page. The right side is the current user page. In the current user page, various information belonging to the user is displayed. And the Dell setup command for Dodec Deploy nodes, the script for setup command for Dodec Deploy node will also include Dell. The user can use the command to install Dodec Deploy node easily. And the left side is the page to end nodes on EC2. User can input the instance size and access key secret key necessary for running instance in Amazon EC2. And then click Add button, Dodec Deploy server will do run instance for them. And the setup script will patch to Amazon as user data. When instance boot, the setup script will be executed automatically. And if user want to add nodes, not on EC2, they can run the setup command displayed in current user page. And then use the new node page, left side page, to add a new node. OK. Dodec Deploy can install in CentOS. The setup script is different, but the web UI is the same with Dodec Deploy's Ubuntu version. But Dodec Deploy CentOS version did not support for some yet. You can use it for SX installation only. OK. How's Dodec Deploy support for some Ubuntu? Dodec Deploy provides three templates for some. One is compute, including lower horizon, quantum and sender. Others are glance and keystone. OK. Then in the next version of the Dodec Deploy, we want to construct a global server to provide into a service. Now we're just testing the function. And especially when multiple users use it simultaneously. And in the next version, we will create a global server so it can be accessed from anywhere. And one of the weakness of Dodec Deploy is the templates so feel. So we want to add more templates for other popular software. And also we want to allow users to upload their own templates with web UI. Next, I will talk about Dodec Compute. Dodec Compute is developed based on Nova. And it's also the open source project with the same lessons as Dodec Deploy. Users can access the project page in the GitHub. And what's the features of Dodec Compute? Because it's based on Nova. So it has the same interface with Nova to operate on physical machines In order to shorten the installation time of physical machine, we have prepared a machine with OS installed in resource pool. And we use open source switch and the controller to separate the network between the clusters. Here is the way inside the Dodec Compute. We use cobalt to manage image of OS and the open source controller and the switch to manage the separation of network. And IPMI to manage the power of machine. In the next version of Dodec Compute, we want to, firstly, we want to shorten the installation time further by using key axis kernel execute. It can, Dodec Compute can bypass BIOS when installing OS in our verification test. In the best case, the time can be shortened from about 10 minutes to about one minute. Also, we want to show you the console of physical machine. So we use SOIL for IPMI to get console of physical machines. As for the machine without IPMI hardware, we want to use the technology we can't online to add support for them. OK, here today I will show you the demo to construct for some cloud on Amazon Institute. Well, there is one lower controller and three lower computer nodes. OK, here are the steps. Let's go. Firstly, you can add nodes. You can use the end nodes on EC2 page to add an instance in EC2. Because of time limitation, I already launched four instance. So I will skip the step. In the next step, I will create three proposals for glance, compute, and the keystone. OK, I will create proposal for keystone first. Click installing. The status of the proposal become installing. Then I will create a proposal for glance. OK, install it. Because keystone is still installing, so glance proposal will be waiting for it. Due to the limitation of after get in Ubuntu, two multiple after get command cannot be executed simultaneously. So I have to let the proposal to wait waiting. Here is the name of the machine of the instance while keystone was installed. OK. The keystone is installed. And now glance is installing, has been installing. I will create the next proposal for OpenStack compute. Here, almost all the settings can leave them default. But glance and keystone should be changed from localhost to the name of the machine of the instance. Now we can do install compute. It will take about five or six minutes. So in the one way waiting the proposal, do you have any questions? OK, the question is, how do you find the relationship of the dependency? How do I define? OK, we define the relationship in the templates before we add it to dody deploy. I can show you the example. Here is where component dependency is well. We define the relationship between the component. Which one first, which one next? OK. Oh, sorry. Can you repeat it again? You can have it between anything. Yes, I can define anything. Because here, you can define a depend on b. If you want to define a depend on c, then you can add an atom to here. Is it OK? OK, thank you. OK, please. So if I understood it right, for dody, you can go and have it run on the system. Oh, sorry. Can you speak slowly? Oh, thanks. For dody deploy, you assume that the nodes you want to manage with it or you want to deploy to, that they already have a puppet client up and running? Yes. Yeah, OK. Sorry, I don't get your mean. It's your mean. Dody deploy requires that puppet is already running on each node that you want to manage? Yes, yes, yes, yes. OK, you can see the logs of the proposal. Well, it's almost the log from puppet, yes. Any further questions? Please be patient. It may be two, three minutes more. OK, yes. If you create the manifest, according to, yes, firstly, the manifest was defined by, sorry, manifest is the language from puppet. If puppet can do, then dody deploy can do also. Sorry? Yes, yes, yes. We will create schedule, firstly, and decide which nodes will run puppet client. Then we send the request to such nodes, let the puppet client to start. Yes, we can do test. According to the log of a compute, proposal compute is in the, no, no one compute was installing so long. How do you use it? Use in environment? Yeah, how do you use it? How do you, OK, OK. We have used dody deploy and dody compute in academic cloud, which is used by college students or other researchers in colleges of Tokyo or Japan. Is it OK? Oh, OK, it's finished. So I can show the OpenStack dashboard to you. Here is the login page of OpenStack dashboard with username and the mean and the password mean. You can look in. Because the language of a browser is Japanese, so, excuse me? What's the matter? What's the problem? OK, OK. In the test for some, it will register images of TTY Linux and launch a test instance. Here you can see the image, kernel image, and the revenue disk image registered. And the instance, not finished. OK. Machine images have been added. The instance for test also launched. But now it's spawning in live world. Maybe it's become running. And the state of proposal also became tested. Do you have any further questions? If you have no further questions, I will close my sessions. Thank you very much for your time today. Thank you very much.