Cloud Computing

From Sinfronteras
Jump to: navigation, search
  • There are some virtualization and cloud material in this resume that could be added to the wiki.




Cloud computing" is a term broadly used to define the on-demand delivery of IT resources and applications via the Internet, with pay-as-you-go pricing. [Definición from AWS Academy]


Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model is composed of five essential characteristics, three service models, and four deployment models. [This is another common definition a little more complete and complex]



Case study - Migration of an on-premise network onto a public Cloud provider

CA1 - Physical Server Hardware Research / Case study of one company that successfully migrated their on-premise network onto a public Cloud provider

Media:Physical_Server_Hardware_Research-CA1_Cloud.pdf



Essential Characteristics

On-demand self-service: A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service provider.


Broad network access: Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, tablets, laptops, and workstations).


Resource pooling: The provider's computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or datacenter). Examples of resources include storage, processing, memory, and network bandwidth.


Rapid elasticity: Capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be appropriated in any quantity at any time.


Measured service: Cloud systems automatically control and optimize resource use by leveraging a metering capability1 at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service.


On-Premise Computing:

  • Requires hardware, space, electricity, cooling
  • Requires managing OS, applications and updates
  • Software Licensing
  • Difficult to scale:
    • Too much or too little capacity
  • High upfront capital costs
  • You have complete control


Cloud Computing:

  • Shared, multi-tenant environment
  • Pools of computing resources
  • Resources can be requested as required
  • Available via the Internet
  • Private clouds can be available via private WAN
  • Pay as you go

Una de las ventajas más importantes del Cloud es que puede ser «scaled» fácilmente (Resources can be requested as required). En otras palabras, a través del cloud la capacidad se puede variar fácilmente con respecto a la demanda. sólo cuando la demanda sea alta, el sistema será configurado para disponer de gran capacidad. On-Premise Computing, lo que generalmente pasa es que se configura el sistema para cubrir una capacidad promedio y generalmente se debe sobreestimar para que, cuando la demanda sea alta, poder todavía cubrirla. Entonces, cuando la demanda es baja estamos a "over capacity" y podría también pasar que cuando la demanda sea muy alta estemos a "under capacity". Esto es solucionado en el cloud. Esto se puede visualizar a través del ejemplo presentado en las siguientes figuras, en el cual se plantea el caso de un Concert ticket web site.

Cloud-Managing demand1.png
Cloud-Managing demand2.png



Service Models

Infrastructure as a Service (IaaS) - Platform as a Service (PaaS) - Software as a Service (SaaS)

Cloud: IaaS - PaaS - SaaS: En esta gráfica se puede ver que la Virtual machine corre directamente sobre el hardware.. No hay un SO sobre el cual corren las VM's


Software as a Service (SaaS): The capability provided to the consumer is to use the provider’s applications running on a cloud infrastructure2. The applications are accessible from various client devices through either a thin client interface, such as a web browser (e.g., web-based email), or a program interface. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings.

Platform as a Service (PaaS): The capability provided to the consumer is to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages, libraries, services, and tools supported by the provider.3 The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, or storage, but has control over the deployed applications and possibly configuration settings for the application-hosting environment.

Infrastructure as a Service (IaaS): The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, and deployed applications; and possibly limited control of select networking components (e.g., host firewalls).



Deployment Models

Private cloud: The cloud infrastructure is provisioned for exclusive use by a single organization comprising multiple consumers (e.g., business units). It may be owned, managed, and operated by the organization, a third party, or some combination of them, and it may exist on or off premises.

Community cloud: The cloud infrastructure is provisioned for exclusive use by a specific community of consumers from organizations that have shared concerns (e.g., mission, security requirements, policy, and compliance considerations). It may be owned, managed, and operated by one or more of the organizations in the community, a third party, or some combination of them, and it may exist on or off premises.

Public cloud: The cloud infrastructure is provisioned for open use by the general public. It may be owned, managed, and operated by a business, academic, or government organization, or some combination of them. It exists on the premises of the cloud provider.

Hybrid cloud: The cloud infrastructure is a composition of two or more distinct cloud infrastructures (private, community, or public) that remain unique entities, but are bound together by standardized or proprietary technology that enables data and application portability (e.g., cloud bursting for load balancing between clouds).



Disaster Recovery

Disaster Recovery involves a set of policies, tools, and procedures to enable the recovery or continuation of vital technology infrastructure and systems following a natural or human-induced disaster. Disaster recovery focuses on the IT or technology systems supporting critical business functions, as opposed to business continuity, which involves keeping all essential aspects of a business functioning despite significant disruptive events. Disaster recovery can, therefore, be considered a subset of business continuity.


AWS CloudFormation allows Infrastructure as a code. This is the process of provisioning and managing your cloud resources by writing a template file. With infrastructure as a code, you can Automate the deployment of your entire infrastructure. This allows you to easily and quickly recover your entire infrastructure in case of disasters.


Backup your data using cross-region backups. Your critical data must be backed up in more than one region in case a disaster causes damages in one region.


Depending on business needs, there are different methods that can be implemented as a disaster recovery strategy. The choice of one method usually depends on the Recovery time objective (RTO) and the Recovery point objective (RPO). The RTO determines how much system downtime your organization can afford before suffering irreparable monetary losses. The RPO determines how much data loss your organization can absorb before incurring too much damage. Based on these parameters, an organization can establish a Recovery strategy.

https://medium.com/@eddies_47682/10-tips-for-developing-an-aws-disaster-recovery-plan-a708f899a442


  • Backup and restore: You can use a managed solution to backup and restore data on a need-to-do basis. However, the restoration can consume a lot of time and resources as the system does not keep data on standby.


  • Pilot light: Keep a core of critical applications and data running to enable quick retrieving in the event of a disaster.


  • Warm standby: This involves duplicating the system's core elements and keeping them running on standby at all times. In the event of a disaster, this duplicate can be promoted to primary to maintain operations.


  • Hot standby: Make a full replica of the data and applications, deploying it in two or more active locations. You can then split the traffic between them, so in the event of a disaster, the system simply reroutes everything to an undamaged region.



Containers

https://www.cio.com/article/2924995/software/what-are-containers-and-why-do-you-need-them.html https://cloud.google.com/containers/

Containers are a solution to the problem of how to get software to run reliably when moved from one computing environment to another. This could be from a developer's laptop to a test environment, from a staging environment into production, and perhaps from a physical machine in a data center to a virtual machine in a private or public cloud.

Problems arise when the supporting software environment is not identical. For example: "You're going to test using Python 2.7, and then it's going to run on Python 3 in production and something weird will happen. Or you'll rely on the behavior of a certain version of an SSL library and another one will be installed. You'll run your tests on Debian and production is on Red Hat and all sorts of weird things happen."

And it's not just different software that can cause problems, he added. "The network topology might be different, or the security policies and storage might be different but the software has to run on it."

How do containers solve this problem? Put simply, a container consists of an entire runtime environment: an application, plus all its dependencies, libraries and other binaries, and configuration files needed to run it, bundled into one package. By containerizing the application platform and its dependencies, differences in OS distributions and underlying infrastructure are abstracted away.

Containers offer a logical packaging mechanism in which applications can be abstracted from the environment in which they actually run.



AWS


Google Cloud


OVH


Mi plan actual

Su identificador  : va266899-ovh
Contraseña  : eptpi...


  • Dirección IPv4 del VPS: 37.59.121.119
  • Dirección IPv6 del VPS: 2001:41d0:0051:0001:0000:0000:0000:18ae
  • Nombre del VPS: vps109855.ovh.net


Tengo la opción VPS Classic 2:

  • 3vCPU, 4GB RAM, 50GB Storage



Planes

https://www.ovh.ie/vps/vps-ssd.xml

  • 1vCPU, 2RAM, 20GB storage: 35.88€/year
  • 1vCPU, 4RMM, 40GB storage: 71.88€/year
  • 2vCPU, 8RMM, 80GB storage: 143.88€/year



Add a subdomain

Domains > sinfronteras.ws:

  • DNS zone:
  • Add an entry:
Pointer records: A
Sub-domain: wiki.sinfronteras.ws
Target: 52.212.210.222
  • Add an entry (again) (optional):
Pointer records: CNAME
Sub-domain: www.wiki.sinfronteras.ws
Target: wiki.sinfronteras.ws



Contabo

https://contabo.com/?show=vps


  • CPU: four cores
  • Intel® Xeon® E5-2620v3, E5-2630v4 or 4114 processor
  • 8 GB RAM (guaranteed)
  • 200 GB disk space (100% SSD)
  • 100% SSD disk space
  • 58.88 €/year


  • Customer Control Panel:
You can access your entire customer account at https://my.contabo.com. Please use the credentials below to log in:
  • user name: adeloaleman@gmail.com
  • password: 001
Once logged in, you can view all your services, perform hard reboots, reinstalls or boot a rescue system. You can also update your contact details and reverse DNS entries, view your payment history and send new transfers in a comfortable way. Anything you can do at my.contabo.com is free, of course.


  • My VPS
    • IP address: 62.171.143.243
    • server type: VPS S SSD
    • VNC IP and port: 144.91.93.73:63025
    • VNC password: ***
    • user name: ***
    • password: ***
    • operating system: Ubuntu 18.04 (64 Bit)
You can access and configure your VPS via SSH (in case of a Linux operating system) or via Remote Desktop (in case of a Windows operating system) using the login details above.
Additionally you can connect to your VPS via VNC. This might be handy if, due to a wrong firewall configuration, for example, your server is not accessible normally anymore. In order to establish a VNC connection, you will need a VNC client such as UltraVNC. Since VNC is not an encrypted protocol, we recommend not to prefer it to SSH or Remote Desktop. Please always remember to log out before you close your VNC session. You can change the VNC password at any time within the customer control panel. Furthermore, you can disable the VNC access within the customer control panel.


  • My IPv6 subnet
Each dedicated server and each VPS comes with a /64 IPv6 subnet in addition to its IPv4 address. You can use the addresses of such a subnet freely on the associated server/VPS. IPv6 is already preconfigured on our servers but has to be activated explicitly in some cases. You can find out how to activate IPv6 and further information on the subject in our tutorial: https://contabo.com/?show=tutorials&tutorial=adding-ipv6-connectivity-to-your-server
  • IPv6 subnet: 2a02:c207:2034:6715:0000:0000:0000:0001 / 64