Describe Cloud Concepts created: 2022-08-25 13:06 tags: #azure #AZ-900 Describe cloud computing Cloud computing Cloud computing provides: Storage services: volume of storage to store data. On premeise we have to buy more hard drive; on cloud, we pay for the real volume of storage we use. Compute power: is the hardwares that support for running apps (memory, CPU...). We do not need to buy a whole computer, but can select and use proper hardwares that cloud service provides. Networking: to keep data up to date and transferable between services, cloud also provides network connectivity. Monitoring: to watch the health, status of running services on cloud to keep track and manage our services. Benefits Info Capital Expenditure (CapEx) vs Operational Expenditure (OpEx) CapEx -- The cost that used for purchasing, operating and maintaining infrastructure OpEx -- Period cost for using services (not including the above CapEx) Economic - Costs are shifted from CapEx to OpEx model. - Eleminate large up-front costs to deploy hardware, licenses, contracts and other resources... - Costs also can be spreaded over the years. - Economy scale: cloud providers can buy large scale of infrastructure with a discount price, and pass the discount to theirs clients. Share responsibility models There are 3 layers of hosting an application/services. Thinking about buying a computer to develop software. Infrastructure: the base layer, provides physically resources such as storage, machines, network, etc. Just like we buy the hardware (CPU, motherboard, memory...) of a computer with connectivity. Platform: now that we are have a computer, we need to install: OS, IDE and developing environments. In cloud concept, the Platform layer contains: OS, Middlewares and Runtime. Software: After we finished setting up all the develop environments, we start coding! The last layer is just like the software that we code. Responsibility models: There are 4 models. On premeise: we have to do everything! We have great powers (not electricity, please!), and it comes with great responsibilities. IaaS (Infrastructure as a Service): Cloud Service Provider takes care of the Infrastructure layer, all we have to do is setting up enviroments and developing, deploying our applications. So we take the responsibility for Platform and Software layer. Use case: This model is good for: Storage, backups and recovery: we only need to store our data in cloud, in the purpose of backups and recovery later. Testing and development: we need an enviroment for testing and development on cloud. PaaS (Platform as a Service): Cloud Service Provider is in charge of the Platform and Infrastructure layer. So now we have a well-prepared enviroment for developing and using our apps without thinking of setting up environments or joining the Windows/Linux war. Use cases: Development framework: just like developing VBA in Excel, we are provided a framework and we can utilize it to use for our application. Business Intelligent and Business Analysis: we concentrate only on collecting data and handle them to get the output. IoT: Cloud Service Providers provide a range of IoT supporting service, we just need to worry about the logic of our IoT applications. SaaS (Software as a Service): Cloud Service Provider even provides us an application, what we need to is just using it! This is what we are using everyday like Microsoft Teams, Gmail, Skype, etc. Info Virtual machine is a typical service of IaaS Database services (SQL, noSQL) are typical services of PaaS Cloud models: There are 3 main cloud models based on where our data are stored. Public cloud: Data are stored in public cloud, which means in the Cloud Provider's storages. We do not need to invest on any hardware. The Cloud Providers share same hardware to host for many users. Private cloud: We store our data at our own data centers or rent an exclusive data center from a third-party. We have to operate, maintainance, deployment by our own. Hybrid: This model combines public and private cloud model. Which means data are stored both in public and private cloud. The data are shareable between the clouds over internet. Consumption-based model We pay only for what we use (Pay-As-You-Go). No upfront costs required. We even can stop paying when we no longer need to use the service. The cost shall be the sum of Compute (memory, CPU... of servers), storage (how many GiB we use) and Networking. Describe the benefits of using cloud service High availability: Availability is the ability to keep service's up time alive as well as narrow down the down time as much as possible. We can see some number as 99%, 99.9% or 99.99% (SLA) as the amount of time that cloud keeps the services up and run. Scalability: Scalability is the ability to add or remove resources to adjust to the demand. There are two type of scale: Verticle scaling: is the ability to increase the size or power of CPU, memory or storage. In vertical scaling, we call scale up and scale down Horizontal scaling: is the ability of increasing amount of instances of host machines. In horizontal scaling, we call scale in and scale out Elasticity: Elaseticity is the ability of auto scaling. Elasticity helps cloud to scale up, down or in, out. Agility: Agility is the ability to react quickly to the real time scenarios Fault tolerance: Fault tolerance is the ability to move data among a local facilities to avoid losing them as well as keeping them alive. Disaster recovery: Data in a region are backed up to another region, if the current region faces disaster, the cloud establises a DNS connection to route users' request to the backed up region. References 1. Describe Cloud Computing (Fleeting) > Define cloud computing 2. [Check list]Describe Cloud Concepts 3. Azure