Getting Started with Oracle Cloud Infrastructure Flashcards
Oracle Cloud is classified into two main categories
- Oracle Cloud Infrastructure (OCI)
- Oracle Cloud Applications
Oracle Cloud Infrastructure (OCI)
- Infrastructure and platform services that are designed to run any type of application.
- It could be a modern cloud-native application or service or any other mission-critical workloads.
Core services of OCI
- Compute
- storage
- networking
Oracle Cloud applications
SaaS
Three main constructs of this physical architecture of OCI
- Regions
- Availability domains (ADs)
- Fault domains (FDs)
Region
- Region represents a localized geographic area that is comprised of one or more availability domains
- These availability domains are connected to each other by a low latency, high bandwidth network.
Availability Domain
- Data Center
- Isolated from each other, fault tolerant, unlikely to fail simultaneously.
- Physical infrastructure not share
Fault Domain
- fault domain, which is a grouping of hardware and infrastructure within each availability domain.
- The key purpose of using separate fault domains is to protect against any unexpected hardware failure or even against planned outages that can occasionally occur during compute hardware maintenance.
- Each availability domain contains three fault domains that provide for anti-affinity, which means it allows you to distribute resources instead of running on the same physical hardware.
Some of the criteria for choosing a particular region
.
- First of all, you would likely choose a region that is closest to the majority of users for reasons such as lower latency and highest performance.
- The second criteria might involve regulatory compliance for storing your enterprise data. There are several countries that have very strict data residency requirements. So, of course, you’d select a region located in that country if that was the case.
- And the third criteria is OCI service availability. Since some services are not offered everywhere– for example, there are new cloud Services made available based on regional demand or regulatory compliance concerns and resource availability.
OCI Compute Service
OCI Compute allows you to create and manage compute resources, which are also known as compute instances.
What are compute instances?
Servers.
Three types of compute instances
- Virtual machine (VM) is a logical server that runs on top of a physical bare metal server
- Bare Metal Machine is a dedicated physical server for the highest performance.
- Dedicated VM host, allowing you to run your VMs on a dedicated server as opposed to them running on a shared physical server.
Compute Shape
- Template that determines the number of CPUs, the amount of memory, and all other computing resources that are allocated to the instance.
- Currently, OCI allows to choose either AMD, Intel, or Arm-based processor.
Two types of shapes.
- Fixed shapes are a specific number of CPUS in memory and cannot be customized. And this applies to all bare metal physical instances, of course, there are fixed size, but VMs can also select a fixed shape as well.
- Flexible shapes, on the other hand, allow you to customize the number of CPUs and the amount of memory you need, but, of course, this is only an option for virtual machines.
Vertical scaling
- Allows you the ability to scale up or scale down. This simply means that you can change the shape or size of the VM to something smaller or something larger.
- Just be aware that there will be a brief downtime for your virtual machine since it will have to be stopped for resizing it. Then it can be restarted with the new number of CPUs and memory size.
Horizontal scaling or Autoscaling
- Automatically add more compute instances of the same shape
- This can be achieved in one of two ways.
- The first is metric-based autoscaling. Here you choose a performance metric to be monitored along with setting a threshold for that metric. And then when the threshold is met, it triggers an autoscaling event to increase or decrease the number of VMs.
- The second option is scheduled-based autoscaling. Here you define specific times of the day or perhaps certain days of the week to automatically increase or decrease the number of compute instances.
Three main types of storage services–
- Block volumes
- File storage
- Object storage
Block Volume
- Through the Block Volume service, you can create a virtual logical disk that you can attach to the VM. So like a hard drive, it is only used by that compute instance.
- Here the data in each volume is stored as blocks.
- The block volume disk that you attach to your virtual machine compute instance is always persistent, which means that even after deleting that compute instance, you can still keep that volume disk intact and use it later for another VM.
First, block volumes. Anytime you have a computer, you usually use a hard drive for storage because you need to store your operating system image and any other data that you need to persist. But for your provisioned OCI Compute virtual machines, there is no hard drive. Instead, through the Block Volume service, you can create a virtual logical disk that you can attach to the VM. So like a hard drive, it is only used by that compute instance.
So let’s briefly revisit the Block Volume service. Here the data in each volume is stored as blocks. That’s where we get the name. Now we won’t go any deeper into this training course to describe what a block is. But for now, just consider it as a method of storing the data.
The block volume disk that you attach to your virtual machine compute instance is always persistent, which means that even after deleting that compute instance, you can still keep that volume disk intact and use it later for another VM.
So then the Block Volume service allows you to create the disk and then attach it to a virtual machine whenever you need. In the same way you can detach the disk from the VM, then delete the volume, or instead of deleting the volume disk you can choose to keep the data even after deleting the virtual machine instance. Later on, when you create another VM instance, you could simply attach that disk with all the data to that new virtual machine.
File storage service
- This is another type of virtual storage, but this can be accessed from one or more virtual machines or any other OCI Compute instance type, such as bare metal machines. Think about file storage like a network drive that you can map to your computer, but this same drive could also be mapped by other users. So it allows for file sharing.
- As we saw earlier, file storage is usually used as a shared storage for multiple compute instances.
- It’s ideal for applications that are running on containers or big data and analytics workloads. In contrast to block volumes where data is stored as blocks, in file storage, the data is managed as files. And there are several advanced capabilities that you can leverage when using the file storage service that makes it ideal for running microservices-based applications.
The second one is the file storage service. This is another type of virtual storage, but this can be accessed from one or more virtual machines or any other OCI Compute instance type, such as bare metal machines. Think about file storage like a network drive that you can map to your computer, but this same drive could also be mapped by other users. So it allows for file sharing.
As we saw earlier, file storage is usually used as a shared storage for multiple compute instances. It’s ideal for applications that are running on containers or big data and analytics workloads. In contrast to block volumes where data is stored as blocks, in file storage, the data is managed as files. And there are several advanced capabilities that you can leverage when using the file storage service that makes it ideal for running microservices-based applications.
Object Storage
- which can be accessed from anywhere to include a remote internet client like a web browser.
- Another difference is that files are stored as objects, which can be anything to include images, videos, or any other type of file, typically used to support web and mobile-based applications.
- the object storage service provides internet-scale, high-performance storage, which is reliable, and it provides more cost-efficient data durability options.
- Object storage is most often used for storing unstructured data, such as image files or videos or log files.
- as in its name the data is managed as objects where these objects are stored in a construct called buckets.
- A bucket can be considered similar to a folder that’s used to contain these objects, and it provides several advanced capabilities which makes this a reliable and durable storage platform.
The third type is object storage, which can be accessed from anywhere to include a remote internet client like a web browser. Another difference is that files are stored as objects, which can be anything to include images, videos, or any other type of file, typically used to support web and mobile-based applications.
Finally, the object storage service provides internet-scale, high-performance storage, which is reliable, and it provides more cost-efficient data durability options. Object storage is most often used for storing unstructured data, such as image files or videos or log files. And as in its name the data is managed as objects where these objects are stored in a construct called buckets. A bucket can be considered similar to a folder that’s used to contain these objects, and it provides several advanced capabilities which makes this a reliable and durable storage platform.
The core resource you can provision for network computing is aptly called a Virtual Cloud Network, or VCN for short.
- you can configure constructs, such as public subnets and private subnets. Think of these as a subdivision of the larger network, sometimes referred to as a subnetwork.
- hosting web app instance in public subnet so customers able to connect to this web app through the internet.
- hosting database instance in private subnets so it is not reachable from the internet.
- But at the same time, the web server and the database instances should be able to communicate with each other.