As a cloud-native platform, Cloud Foundry directly uses cloud-based infrastructure
so that applications running on the platform can be infrastructure unaware.
That being said, would like to understand if I deploy any application using Cloud Foundary...
What infrastructure is uses by default ? It can be anything such as Azure or AWS or OpenStack etc... ?
Does this mean if I am using Cloud Foundary - It will always be combination of Cloud Foundary + Any IAAS provider ?
where CF will work as intermediate between our application and IAAS ?
Cloud Foundry is deployed and managed via Bosh. Bosh provides an abstracted layer above the chosen infrastructure (AWS, GCP, Azure, vSphere etc), any software deployed via Bosh is therefore ignorant, for the want of a better term, of the infrastructure it's been deployed on. When you deploy an application on Cloud Foundry it is also unaware of the infrastructure it has been deployed to. That's the whole premise of Cloud Foundry, taking away any infrastructure concern for developers, so they can concentrate on application code.
Related
I have a ASP.NET Core Web API planning to deploy in AWS, I don't have enough background in AWS what is the good package to subscribe in AWS?
My option is Amazon EC2 or Cloud Computing or there is other package for Web API? And my other concern is I also have files to upload by the client need at least of 1 or 2 TB of cloud storage. Can I connect the Cloud Storage services of Amazon to Amazon EC2. I really don't how to start.
You could look at Elastic Beanstalk (EB) as explained in Creating and deploying .NET applications on Elastic Beanstalk. EB is AWS Platform as a Service (Paas) offering which allows you to deploy your code, without managing much or any of EC2 instances, load balancers, security groups and more.
Alternatively, if you can run your app in a docker container, maybe it would be easier to deploy it using ECS Fargate. EB can also be used to deploy dockerized applications.
For storage you can use EFS if you require filesystem-like storage that can be shared across multiple instances, containers or lambda functions.
Is it possible to install Google Anthos on prem or ist this a pure cloud service?
In some cases in might be useful to manage cluster without a cloud connection.
Anthos is an on the cloud service provided by Google. Whilst you might not be able to have a completely isolated installation of Anthos on-prem with zero external access, Anthos on BareMetal allows you to make use of your on prem infrastructure to get the full capabilities of Anthos.
With Anthos on BareMetal the external connectivity is only used for the minimal control plane functionality of managing your clusters via the Cloud Console. Almost all the other components of Anthos reside on-prem in your infrastructure.
Useful resources.
Introduction to Anthos on bare metal by a Developer Advocate at Google.
About Anthos on BareMetal
I'm trying to find out if Spring Cloud Zuul is working on GCP or not. If that's the case, should we use it the same way we do in AWS?
(The Services are deployed as App Engines)
Thanks,
As Zuul is an edge server as a bastion host it should have no problem working on GCP. The dataflow and architecture will depend entirely on the GCP API and service where you will be deploying Spring Cloud, in your case (App Engine API), the management and configurations come from Cloud VPC API features such as Routes and Load Balancer API's that will be working with Zuul.
Here is a guide explaining how to deploy it on GKE as a containerized service where they follow the integration for Zuul with Istio at service layer scope.
So I am reading about kubernetes and AWS service offerings. For example, one of the main advantages of kubernetes is load balancing but AWS has this too.
How do all these products tie in with one another? Are lots of them doing the same job? Is it just a case that there are so many tools out there now?
Maybe this isn't the correct forum for this question. If not I can remove, but just feel a bit overwhelmed with all the various options, and wondering if they are all completely different.
AWS offers much more services than load balancing, automating deployment, scaling, and management of containerized applications, which Kubernetes is.
If you mean Amazon EC2 Container Service (ECS), so both of them fast and scalable solutions for container management.
Actually, there is an managed Amazon Elastic Kubernetes Service also, which integrated with other AWS infrastructure, such as security, monitoring, etc.
So, it depends on your needs. You can read compare of AWS ECS and Kubernetes.
UPDATE
Here is a big comparison of managed Kubernetes services across Digital Ocean, Scaleway, OVHCloud and Linode.
Kubernetes is an infrasructure-agnostic framework for orchestrating containers. It can run on your laptop (Minikube), or installed on a couple of EC2 instances in AWS, or in a fully-managed offering from GCP, Azure and other cloud providers. Many users and organizations choose Kubernetes because of this portability.
AWS, OTOH, is a global cloud provider,or hyperscaler, with over 200 different services. It is impossible to cover them all. Nevertheless, if we narrow it to container-centric services: AWS offers its own proprietary orchestration tools: ECS and Fargate.
Is there any PaaS providing from Amazon like Heroku , Pivotal Cloud Foundry, IBM Bluemix?
I know that they have many PaaS helpful services like Amazon RDS for database as a service, Amazon elastic Beanstalk etc which makes blur line between IaaS and Paas concept. but at the end of the day we need to orchestrate all of these thing together. So is there any orchestration providing available from AWS ?
One of the challenges in AWS is that its difficult to draw the line between SaaS, PaaS and IaaS, since there are large number of services available with different functionalities.
However, you can consider AWS Elastic Beanstalk as a PaaS which allows you to provision Web and Database Servers without deeply knowing the underling IaaS aspects of AWS (Though it provisions EC2 instances, Elastic Load Balancers and Autoscaling Groups behind the scene).
If you are planning on using Docker Orchestration, you can consider using AWS ECS as an alternative to docker Swarm.
In addition, there is the AWS Serverless Stack (API Gateway, Lambda) which also can be used to develop applications which is fully managed by AWS.