Hello. My name is Dave Shrestha. I'm an internal Cloud Solution Architect. Today, I'll be covering Module 4, Cloud pricing models. The learning objective for this module is cloud pricing, thus, I will cover Cloud purchasing models, attributes that generate pricing, reservations and spot instances, IaaS versus PaaS versus FaaS cost considerations, and native pricing estimators in Azure, AWS, and GCP. Most enterprises will have some form of enterprise agreements, either directly with the Cloud provider or with their reseller or partner. This module will focus only on direct enterprise agreement as there are too many differences to fully discuss partner and reseller contracts. Cloud providers will have different types of purchasing options to suit different needs of their customers. The most common public Cloud purchasing models are, free tier, pay as you go, reservations, spot instances, volume-based discounts, and enterprise discount programs. The free tier options are usually for new customers and all Cloud providers have, some, but not all services that are free for up to certain preset limits. They also offer credits that expire once the credit is used or will expire within a period. For example, Azure has a 12 months of popular free services and $200 credit and over 25 services that are always free, AWS has 12 months free, and also an always free tier and trials short-term offers, and GCP has over 23 products and gives $300 credits. Pay as you go, also known as on-demand, is the most type of purchasing model however. This is the default purchasing model at utmost top providers. Pay as you go is like how utilities are paid. You pay only for what services that you use at the Cloud provider. Reservations or committed use our discount models that typically offer a 30-40 percent discount compared to pay as you go or on-demand list price. To get this discount, you pay in advance or pay partial or no upfront costs for various services you know you will need for a period, typically one or three years. I'll go into further details on how each of the Cloud providers offer reservations later in this module. Spot instances is a purchase option that offer the highest level of discount up to 70 percent compared to on-demand pricing. With Spot instances, you bid on unused compute capacity in the Cloud providers data center. However, if the market price is higher than bid price, then the Spot instances are taken away often with less than three-minute warning. Volume-based discounts or sustained uses are for certain services like compute and storage where the more you use, the cheaper it tends to become. This type of discount is available only for some services and not all Cloud providers participate. GCP, for example, offers compute sustained use discount, which gives you automatic discounts for users level percentage per month on compute environments. Finally, there's the enterprise discount. The enterprise discount program is also known as EDP. When enterprise agree to spend a certain amount among the Cloud provider for a duration, usually one or three or five years, they're given percentage of discount for the total spends at the Cloud provider for the duration of the term. Note that EDP typically do not cover spends on professional services at the Cloud provider. Also, enterprises with EDP will have their own special price list with or without special portal access that reflect discount programs. Keep in mind that different Cloud providers have different ways of showing EDP. For example, enterprises with your ADP will be able to see their discounted price list in your EA portal. They can also log in with their associated Active Directory credential tied to their EA, to the Azure Pricing Calculator and once they select the EA number they can see the discounted pricing for Azure services. For enterprise with AWSEDP, they can see the discount on cost and billing Explorer. Now, let's look at attributes that generate costs. The main attributes that generate costs at Cloud providers are, infrastructure cost, licensing cost, and support cost. Let's look at details of each. For infrastructure cost, compute is usually the largest cost for most enterprises, close to 80-90 percent of their bill. Keep in mind that changing attributes such as vCPU or memory on a VM configuration will also change the cost of the VM. Storage is another major cost associated with Cloud infrastructure. Data storage cost include charges for initial data migration costs such as when using your data box or either of the stone ball or GCP transfer appliance. Any hard disk, standard HD or SSD, warm storage, cold or archive storage and other long-term storage cost, as well as IOPS performance guarantees. There are also data log storage charges to consider for things such as service or audit logs. For example, Azure activity logs, AWS Cloud Trail logs, and network flow logs to create logs, etc. Costs related to network is also a major factor in overall Cloud cost for most enterprises. This will be especially of concern during migration from on-prem to the Cloud or for hybrid environments where there's a perpetual connection between on-prem and Cloud providers. There's also data ingress and egress charges. Data egress charges should be of special concern since many Cloud providers have low or freed data ingress charges for some services, but there's almost always cost for data egress charges. Ancillary service charges include charges for monitoring, serverless computing, native security tooling, etc. Finally, there are also marketplace charges as part of infrastructure costs. Marketplace charges are any purchases in the Cloud provider marketplace such as machine image or virtual appliance or service. Beyond the infrastructure costs, there are also licensing cost. Licensing cost are customer responsibility. OS and database licensing cost are typically offered and included or Bring Your Own License options. Included licensing are for things like VM or RDBMS service where the cost of the license for OS and RDBMS is included at a higher cost, of course. For Bring Your Own Licenses, the cost of the OS and RDBMS license is not included, and the customer has the ability to bring their own license to the Cloud provider, and thus the customer is responsible to meet Bring Your Own licensing requirements. An example for Bring Your Own model for SQL in Azure, the customer can use Azure Hybrid Use Benefit depending on the licensing agreement between customer and Microsoft. It allows use of customers on-prem software assurance enabled Windows and SQL Server license on Azure. Both shared hosts and dedicated hosts instance types are supported for VMs. Azure also supports Bring Your Own License at Azure SQL pass. Keep in mind Bring Your Own License model differs in different Cloud providers, and may not work for past services. Thus best to refer to the Cloud provider and the license venue for guidance. In addition to infrastructure and licensing costs, there's also the support cost of the Cloud service itself. Basic support is included at all Cloud providers. However, support beyond the basic tier has a per month fee and or percentage of monthly charge depending on the Cloud provider. The Cloud provider will have various add-on support options at additional costs. Enterprise or premium support is the most expensive with the most included features, services, and highest SLA. Available support levels at Cloud providers include in Azure basic, developers, standard, professional direct and enterprise support. In AWS, basic developer business and enterprise support, and in GCP, basic, standard, enhance, and premium support. Earlier I spoke briefly about reservations at Cloud providers, but now let's look at it in detail. Cloud providers offer reservations, which are reserved service purchases, and some offer a guaranteed capacity purchases as well. For more than just virtual machines for popular services, like storage and databases. With reservations, discounts automatically applies to resource use that matches the attributes that was selected during purchase of their reservations, such as instance, family size, platform, region, and zone. Keep in mind that different providers have different matching attributes. Thus referred to Cloud providers documentation for details and limitations. There are also differences between reserve services and reserve capacity purchases. Reservations are most useful to get a discount when you are confident you will be using the servicing question for an extended period. Reserves service purchase offer discounts for one or three-year term, but doesn't reserve capacity in a specific zone. Capacity purchases on the other hand ensures capacity is held an a specific zone even if a VM is not running. Let's look at Azure Reservations in detail. In Azure, Azure Reservations have following traits. One-year or three-year term, longer-term has higher discount, of course. Upfront or monthly payment terms. No additional fees paying monthly versus upfront. Up to 70 percent discount compared to pay-as-you-go prices. All reservations except Azure Databricks are applied on hourly basis. Nineteen Azure services can be purchased with Azure reservations such as VM, SQL databases, app services, et cetera. Reservations can be exchanged for another reservation of the same type across regions, change OS or instance types, and reservation can also be canceled or refunded, but the sum cannot exceed USD 50k in 12-month rolling window. Azure reservations also do not have capacity guarantee, but reservations are given capacity priority. You can use Azure Hybrid Benefit program for Windows and SQL in addition to reservations for even further discount. In AWS the reservations have one-year or three-year term, up to 72 percent discount compared to pay-as-you-go prices. Payment options include; no upfront, partial upfront, and all upfront. There are three types of reserved instances. Standard, convertible, and scheduled. Standard enables you to modify availability zone, scope, networking type, and instance size. AWS reservation can be sold in a reserved instance marketplace in AWS. Convertible reservations enables you to exchange one or more convertible reserved instances for another convertible reserved instances, with a different configuration; including instance family, operating system, and tenancy. There are no limits to how many times you can perform exchange. As long as the target convertible reserved instance is of an equal or higher value than the convertible reserved instances that you are exchanging. Note that convertible RIs cannot be sold in reserved instance marketplace. Scheduled reservations have the ability to launch within time window of a reservation. Good for matching capacity reservations with predictable reoccurring schedule for our fraction over time. Another attribute of AWS RIs is that the RI have either regional or zonal scope. Regional scope is when you purchase a reserved instance for region. It's referred to as regional reserved instance, but it does not provide capacity reservation. Zonal scope is when you purchase a reserved instance for a specific availability zone. Is referred to as the zonal reserved instance, and it does provide capacity reservation. Beyond these two instances, reservations can be purchased for AWS, RDS, DB instances, ElastiCache, et cetera. Some types of AWS reservations come with capacity benefit. Zonal reserved instance, for example, but savings plans and regional reserved instances don't have this benefit. AWS also offers the ability to purchase only capacity guarantee, called the capacity reservation. Just like Google zonal reservations, you can end them whenever you like. You can't sell standard RIs in the RI marketplace, usually for pennies on the dollar, and there is no RI cancellation option. Now, let's look at GCP. In GCP there are reservations and committed use discounts for virtual machines. A committed use discount provides one or three-year discounted pricing agreement but it does not reserve capacity in a specific zone. A zonal reservation ensures that capacitor is held in a specific zone, even if the reserved VMs are not running. By combining our reservation with the commitment, you can get discounted reserved resources. Note that reserved capacity is decoupled from reservations. When you purchase committed use discounts, it's not guaranteed you can launch an instance in that specific region or configuration. If you'd like that guarantee, you will need to purchase a zonal reservation. Also, it's important to note that zone reservations don't have a contract term. You can purchase one in the morning and terminate in the evening. There is an opportunity to purchase reservations and reserve capacity separately, to operate as needed basis. Unfortunately, in GCP you cannot modify, resell, or cancel unneeded capacity. However, a unique feature to GCP is that there is no upfront cost for committed use discounts, and additionally, you can select only certain number of vCPU and memory instead of instance type size family, or create custom machine types with unique configuration of vCPU and memory. CPUs and Local SSDs can also be included. You can also purchase memory-optimized, compute-optimized, or accelerator-optimized, or machine-type commitments. Committed use discounts automatically apply to VMs for Google Kubernetes Engine, Dataproc, and Compute Engine. Committed use discounts do not apply to VMs created using App Engine, flexible environment, or dataflow. The biggest challenge in GCP is that in GCP there is a limited services available for reservations. Only Compute Engine and BigQuery are available for reservations. In addition to reservations committed use discounts, GCP also has GCP sustained use discount. Sustained use provides discounts up to a maximum of 30 percent when you run workload more than three-quarters of the month, and this is done automatically and you do not need to purchase them in advance for any specific term. Let's switch gears to spot pricing. We have talked about spot instances before, so let's talk a little more in detail of what they are. To use spot instances, you bid on an unused capacity in the Cloud providers datacenter at the Cloud providers spot marketplace. The hourly price of a spot instance is called the spot price. The auction spot price for each instance type in each availability zone is based on the long-term supply and demand of the spot instances. Azure has another spot type of instances called low priority VMs. This is reduced pricing for types of VMs that are in low demand in Azure. GCP calls their spot instances preemptible VMs. The main advantages of using spot instances is that they have the highest discount of any discount pricing options, up to 70-80 percent discount compared to on-demand pricing. Unfortunately, there are also disadvantages of using the spot instances, with the main disadvantage being potential workload interruptions. There is no guarantee from interruptions, there is no SLA, and often there are time limits. If the market price of the spot instance is higher than the maximum bid price, or the capacity is no longer available then, the spot instance is terminated by the Cloud provider with typically 30 seconds to three-minute warning. Now, let's briefly talk about how costs are calculated for infrastructure as a service, platform as a service, and function as a service. In Azure, AWS, and GCP, IaaS services are charged by the hour while functions are charged based on per second execution time and resources consumed. In Azure and AWS, PaaS services are charged by the hour while in GCP, they are charged by the minute. Keep in mind that there are differences in how IaaS, PaaS, and FaaS services are charged across Cloud providers. Also, for IaaS and compute instances underlying PaaS services typically, newest generation of instance types have much better cost-to-performance ROI over older generations. Additionally, some Cloud providers like Azure offer, additional savings for DevTest systems where no licensing charges are incurred for Windows on VMs. We're now ready to talk about some native Cloud tools. All Cloud providers offer native tools to do everything from estimate and manage costs to deploy workloads. Right now, let's look at Cloud-native pricing estimators. Azure, AWS, and GCP all have a public pricing calculator that can be accessed with a web browser and you can export the estimate to a file or save and share the link. Azure, AWS, and GCP also have a priceless tool where you can go into details of the cost of each of the myriad of services they offer. Please note that the cost listed in these tools are retail, this pricing and customer may have a different pricing through their partner or reseller. In addition to the public pricing calculator , Azure, AWS, and GCP also offer total cost calculators that provide more complete summary of the total cost involved in deployment of a workload beyond the Cloud service itself, which includes Industry-accepted cost assumptions. Now let's look at a demo for Azure pricing calculator. Hello, thank you for joining me today. Today I'm going to be doing a demo on how to use Azure public pricing calculator to get an estimate for cost of a virtual machine. When you first go into the Azure pricing calculator, you'll come into this splash screen. There's a estimate section in the bottom. There shouldn't be anything there. If there's is, there's a garbage icon that you can click on to get rid of everything. So you want if you probably should start fresh. What you want to do is on the left-hand side, you'll have different categories. The first section obviously is their popular categories and you could go into virtual machines from here. What I like to do is actually go into the category of what I'm trying to do myself. For example, on the compute category, I'm going to select virtual machines. It's going to go ahead and add it here so you get a notification that it's been added. If you scroll to the bottom, what you'll see is the cost of a virtual machine. Now, this is just the standard version which is by default. What you want to do is the very first thing you want to do is you want to make sure that you are selecting the right region for the virtual machine you want to get an estimate for. You can do the drop-down. There's all the different reagents available. I'm just going to leave it in US West. The second option is whether you want Windows or Linux operating system. I'm going to go ahead and select Linux and I'm going to leave everything else alone. The other important thing here is the category. These are the different instance families like compute optimized, journal purpose, etc. I'd just like to leave it on All that way when I go to Instance Series that have been, I could select anything I want. What I'm going to do is that I wanted to get an estimate today for the new Dv5 instances. I'm going to select the v5 instance right here, and then I want to select the size. I'm going to select something with a four CPU at 16 gigs of RAM. Then what I'm going to do is I'm going to add some disks to it. Before I go to the disk, what you want to look at is right now by default, you have the pricing of purchasing model or pay-as-you-go. For this virtual machine, right now, It's up with a pay-as-you-go on-demand pricing it's $163.52. Notice, if I select one-year or three-year reservations, the price of the VM per month significantly decreases. But for now, I'm just going to leave it in pairs. You go. Then I'm going to go ahead and attach a disk. Right now, there's no cost for the disk because there's nothing there. I am going to go ahead and select the type of disk that is the new type, which is the SSDs instead of the hard disk drive. I am going to leave it in the local redundancy. Instead of Zola redundancy, because I don't need a duplicated across the different zones. I am going to now say I want one disk and I am going to select the size. I want to do a 250 gigabytes of SSD. This is going to cost me $19.20 per month for 250 gigabyte SSD with a locally redundant storage. There are some other options as well. There's transactions. The transactions and the bandwidth do not make that much of a drastic change of the cost of the VM. By default, it's saying that you're going to have 100 transaction units. You could go to say, instead of 100, you could say 1,000, even 10,000 and it's going to add only $20 for bandwidth. Very similar. You could say, I'm going to do say, 100 gigabytes a month, that's adding $4. As you can see the storage transaction and data transfer doesn't have too much compared to the cost of the VM itself. Then the other option is support. I'm just going to say Included because I'm going to assume that my client or customer has enterprise support of some kind. I'm going to leave that alone. The other interesting thing to note here is this DevTest pricing. What that means is for Windows systems, for example, if you agree to not deploy new production workloads on this VM, then you could enable DevTest price and that will give you a discount. For example, if I were to select a Windows VM, obviously my price increases. It went to $341. However, if I select the DevTest pricing, it's going to basically take away the cost of the Windows licensing. It's going to give me that discount. You'll see here, there you go. That's what that DevTest is. I'm just going to turn that off and I'm going to go back to just a standard Linux pricing. Back to here. Now I've added my storage. I've selected all my options. My total cost for this VM per month is going to be $207.47. With this estimate, I could export it to a CSV, I could save it. I could share the link. These are some of the ways that you could get an estimate of a VM using the public Cloud pricing calculator from Azure. This is just a sample of a single virtual machine. You could add more virtual machines. You can have all of the different Azure services. It's a great way to get a quick estimate. You do have to know what you are doing in terms of making sure that you understand the different options. You'll see these information icon in a lot of the options on the tool. You could go ahead and you click on that icon and It'll give you an idea of what that selection means. You could also obviously go to the documentation for further information. I hope that helps. Thank you very much. In this module for Cloud pricing models, you learned about Cloud purchasing models, attributes that generate pricing, reservations and spot markets in the cloud, IS versus PaaS versus FaaS, cost considerations and native pressing estimators in Azure, AWS, and GCP. Thank you.