 Hi everybody, welcome back another technical demo around the Corksa application. So today I'm going to really more talk about Opside. As you know, I have a lot of video and technical demo around the Corksa application development for more of the developer standpoint, but today in this video I'm going to showcase a little bit more the operation team perspectives, how to manage your Corksa application with the hamcher. So let me talk a little bit about what hamchart is. So ham is a software package manager just like the YUM or DNF, a Linux operating system like Fedora, which is simplified deployment of the application and services to Kubernetes cluster as well as up to container platform. So ham uses the packaging format named chart. The hamchart is a collection of files which is described the Kubernetes or up to container platform resources like a service account or service and deployment bill, etc. The running instance of the chart in your Kubernetes cluster is called release. So the new release is created every single time when chart is installed in the cluster. So each time the chart is installed or even release is upgraded or lower back, the incremental revision will be created along the way. So here are just a few key features when you use ham. So ham fundamentally provides some capabilities such as you can search through the large collection of the chart stored in the chart repository. You can also modify the existing chart. You can also create your own chart with up to container platform or Kubernetes resources. And one of the good benefits of hamchart, you can have a packaging and share your application as a chart. Luckily, we're going to use up to container platform in a race version today. So let's get started on how you can manage your purchasing application with ham. Okay, let's jump into the demo. Okay, here's my up to the cluster. It's a race version, up to the 4.6 version. And then when you go to, here's my sample application project, Quarkus-ham. And then you can find any application here, deployment at this moment. And when you go to add in a developer console and you can find the ham chart as a catalog item. And then there's a Quarkus chart is already there. It's a race one, still 0.1, which means it's still developing. So, but luckily, we can use that this ham chart. Once you click on ham chart, you can find the pretty quality, specifically, up to container platform related to the secret, creating secret for more security capability using S2RVeter or Docker-based image from external registry. I'm not going to use this functionality for this demo. I'm trying to make it simple, how to create your Quarkus application as simply. And here's some configuration as environment as valuable. So you can specify your image name, tag, or the bill you are out. In the reference, like a data repository and a contest route, the contest order of your data repository, we're going to use that thing. And you can actually use two different modes to build your application, like a JVM mode or a neighbor configuration mode. This is a huge benefit of the Quarkus application to packaging your packaging and running on Kubernetes cluster like a container platform. You can also define some specific environment valuable or application, like a number of lap record as a default. And you can also define some specific compilations around deployment, like liveness or liveness check, like the Kubernetes fundamental functionality. So there are huge of the compilations. We can do that during ham chart at the beginning time. So here just sample the YAML file around how to build and how to deploy and how to manage that thing. As you can see, you can actually choose JVM or native compilation mode. And then you can define the liveness, redness check. So I'm going to make it simple here. So I'm going to use the one of my demo application and then we're going to set the embedded valuable because Quarkus is using the running the thing jar with some dependency library. I'm going to be empty the deployment compilations. So here's my demo repository. And my team actually keep maintaining this public repository confined a lot of interesting Quarkus demo here. So I'm going to use one of that demo to showcase the CRUD capability to interact with the in-memory database or a PostgreSQL to store updates to delete and modify the specific data on your data store using Quarkus application and this application boots on the rest of it or the Quarkus. It's usually the same functionality in community upstream, but it's based on ready-at-distribution. So I'm going to copy it from the git repository here and I'm going to use the default reference directory and context start. So I'm going to add any specific thing. Once you install, click on that. So you can see automatically new Quarkus application is just spinning up but still there are still under the building. So as you can see there are no hash check at this moment but you can see there are image pool backup error. I'm going to show why you can see that error. When you go to hem menu and it will go to release node, you can find that your diploma will report the error image pool or image pool backup until your application bill is complete which means that you don't worry about this error until you complete your bill application. So let's go back to topology view and click on the running bill icon and then when you click on this icon, it automatically relate to our bill logs here. As you can see, this is a Maven structured project on Quarkus which means we need to download all the pandas library from the Maven central repository. So when you go to the bill menu, you can find the bill configuration, click on logs and you can find exactly same logs. Let's take a look at a little bit more of the hem chart here. So when you click on research in hem chart, you can find all necessary resources just generated based on hem chart. So bill compete and deployment and image stream and route URL and also service here. So this is a whole bunch of things. Let's take a look at the more bill logs it's already done or still keep doing that. Okay, so still download the application. I'm going to move forward to rating the application. Okay, so now we're going to create the bill image based on Quarkus image and as you can see, so we're going to use S2I process and then once you create the container image based on Quarkus application, we're going to push this image into internal container registry inside of the container platform with the image stream tab. So now you can see the Quarkus application running up and just click on the view log, but in fact your application, I mean Quarkus application is still running even though you have a complete dark blue circle on your developed console because you don't have any hash check. Okay, let's take a look at that. This Quarkus application running on JVM hotspot in the version 175, the final version already appeared in Quarkus, the race one. So you just need 13 seconds to start this application. When you click on route URL to access the endpoint, you can see the pre-nize, when you want it to do, so you can add some tasks. For example, I'm going to create a new demo about serverless, my new task for next week, and I'm going to update the Quarkus workshop to improve some screen development stuff. It's my new task as well. This is actually my task by the way. So I'm going to need to write a blog about Quarkus function. So I'm pretty sure this is a pretty interesting thing as well. So you can actually delete, update, just like a crawl capability of your enterprise application. Pretty simple, pretty cool. Okay, so we're going to actually go to my Android developer console, obviously container platform, and there are a few parts. So let's take a look at there, which part we need to take a look at there. So here is the KX GPV, it's our actual Quarkus application part, and then you can find that in the CPU utilization, and next in a five-minute period, you can find it's a little bit rising, and then change your memory usage, and then the green, the right green color is our actual Quarkus application of around 200 megabytes for memory footprint. When you go to ham chart, we can actually upgrade our ham chart configuration. Let's try to add our liveness and readiness at all. This is a default capability on your Kubernetes cluster to make sure your application is actually ready and live to serve your business functionality. So I'm going to add the liveness and readiness to Quarkus provided that capability as well, and as you can see, the deployment automatically triggers a new application deployment, as you can see. So new part is just redeployed based on the deployment change. So this is just a huge benefit, and as you can see the YUM or DNF or the Packaging Manager, automatically upgrade your application software on the Linux operating system. It's exactly the same concept. Using ham chart, you can actually change or upgrade your Quarkus runtime environment using ham chart. Go to research. Now we have a new application, and just edit your hash check. Now you can find the new hash check. As you can see, we edited in the ham chart, but now the new change is already applied to our deployment configuration as well. So lastly, you can actually uninstall ham chart as a release menu in Quarkus. This is the menu, and the uninstall is automatically delete all research on your project. So as you can see, there's no pod or any research in this project. Thank you for watching, and please make sure to subscribe to my YouTube channel for the next technical video and tips. Have a good rest of the day.