Friday, 5 March 2021

apigee insallation

 

Pre-Requisites


For the purpose of the course and the installation of the Apigee API Platform, the following hardware and software is required:

  • 6 Cloud instances, virtual machines or physical services with 4 core and 4 GB RAM, 100 GB disk.
  • All instances should contain recommended OS: https://docs.apigee.com/release/supported-software
  • All instances should be on the same network zone and allow connectivity between them.
  • Internet Browser and SSH client are required for the labs.

In order to proceed with the course, you will need the Apigee OPDK software and valid install key. If your organization already have a license key you should use it for this class, if you don't have one already, please send a license request to apigee-coursera-license@google.com. Please use your Coursera log in email address in the request. You will have to accept Apigee's terms and conditions before a license can be generated and the process may take a few days.



you will receive an overview of the Apigee platform. 

APIs is allow you to connect applications to resources hosted on your back end systems. 
These APIs are deployed, 
and managed by an API management platform. 
A typical enterprise offers multiple connected digital experiences to their customers. 
These experiences are powered by a diverse set of applications. 
Applications range from mobile apps 
to third party systems owned by partners or customers. 
These applications often come with 
different requirements such as different types of data representation, 
different security models, and others. 
Expectations around these connected experiences are driven by business oriented KPIs. 
These KPIs typically require agility, 
faster time to market, 
and tailored user experiences. 
On the other hand, we have back end systems. 
The SLAs of back end systems depend on high availability, 
change control, and configuration management. 
The gap between the expectations of connected digital experiences, 
and back end systems often creates friction which 
results in a slow pace of change and lack of agility in most organizations. 
This disconnect is often described as two speed IT. 
Apigee helps to bridge the gap. 
APIs is deployed on Apigee can be used to break 
dependencies between applications and back end systems. 
APIs represent products that need to be managed. 
Apigee provides both API runtime execution and API product management. 
Breaking dependencies between applications and back end systems through 
API management with Apigee allows for faster innovation, 
the creation of tailored user experiences, and greater agility. 
At the same time, Apigee provides the availability, 
scalability, and security that enterprises demand. 
As we work to understand the role of an API management platform, 
it is important to understand the types of interactions API facilitate, 
and the stakeholders of these interactions. 
The Digital Value Chain captures these ideas. 
We read the Digital Value Chain from left to right. 
Companies want to provide customers with connected user experiences. 
These connected experiences are powered by applications. 
Applications are built by developers. 
Developers require access to resources and 
data which are exposed by companies through APIs. 
API products are built and managed by API teams. 
API teams coordinate with back end systems to consume data while 
creating API that meet the expectations of end users, and application developers. 
The Digital Value Chain illustrates not only the interactions that API facilitate, 
but also the key actors. 
It represents a reminder of the capabilities that an API platform should provide. 
With that understanding, let's explore Apigee's core capabilities. 
At a high level, Apigee Edge has three core capabilities. 
API services provide features related to API management and runtime execution, 
building and deploying API proxies as well as the execution of flows 
and policies within those proxies falls under API services. 
Developer services provide a collection of features to enable 
the interaction between the people consuming the APIs and those producing APIs. 
Developer portal and monetization are key for API adoption. 
Apigee provides rich and flexible 
analytics capabilities that can help address questions by business users, 
developers, and operations teams. 
APIs are products, managing products requires a clear understanding of their performance, 
adoption, and overall behavior. 
Using Apigee Edge, you can create API proxies. 
A proxy is a collection of XML files and resources that 
allow you to describe the request and response flow of an API call. 
Policies represent the building blocks of API proxies. 
They can be attached to specific points on the request and response flow, 
allowing you to model the behavior of 
a given API call Apigee Edge offers policies related to traffic management, 
mediation, and security as well as extensions. 
The developer portal provides a communication channel. 
It is how the team producing APIs that can 
interact with the developers consuming those APIs. 
The developer portal allows you to publish API specifications and relevant documentation. 
The portal provides developer self-service for 
registering applications and subscribing to API products. 
It facilitates API key distribution, 
and exposes application specific analytics. 
Monetization is a flexible, 
easy to use solution to realize the value of your APIs. 
Monetization allows you to create different revenue models, 
manage billing, and process payments. 
Monetization integrates with your developer portal 
allowing you to offer and manage plans for your API products. 
Apigee's analytics allow you to capture and visualize 
contextual data related to API execution, 
interactions between APIs and back-end systems, 
developers and their apps, 
error rates, performance, and latency and customer reporting. 
Apigee Edge exposes all of its functionality through APIs. 
Those APIs can be used for development as well as operational tasks. 
For example, you can deploy APIs, 
create users, and run analytics reports using APIs. 
The management API is consumed by the Apigee Edge enterprise 
UI as well as the installation and upgrade processes. 
You can use the management API for offline development, 
CICD automation, and other operational activities. 
By now, you should have a high level understanding of 
Apigee's core capabilities and its place within the enterprise. 

is critical to your understanding of Apigee Edge for private cloud as a whole. 
In this lesson, we will focus on building that understanding. 
Over the next few minutes, 
we will be covering Apigee Edge capabilities, 
how each component fits into the platform, 
and details about the underlying technology stack. 
Apigee Edge has three core functional areas: API services, 
developer services, and analytic services. 
On the diagram, Apigee capabilities are shown in blue, 
open source capabilities are green, 
items in grey represent customer-specific infrastructure and API clients. 
Apigee capabilities such as Gateway and analytics, 
rely on underlying open source infrastructure 
to support the storage and replication of data. 
The Gateway sits on the critical path. 
Components included in this capability represent the runtime for APIs deployed on Apigee. 
Apigee Edge is horizontally scalable. 
For most scenarios, adding capacity to handle 
more API calls is as simple as adding additional Gateways. 
At some point, scaling the Gateway horizontally may require scaling 
the supporting infrastructure to handle 
the additional data being generated by the system. 
Components associated with other capabilities such as the UI, 
system management and the developer portal, 
only need to scale based on requirements associated with those capabilities. 
Horizontal scalability applies to capabilities within the region, 
as well as across regions. 
By design, Apigee Edge is active active. 
By that, we mean there is 
continuous eventually consistent data replication 
across data stores located in all regions. 
There are two regions in this diagram. 
API traffic is channeled to one or both regions based on customer preferences, 
that is usually handled by a global load balancer or DNS resolution. 
Regions are independent of each other. 
API calls and runtime execution have affinity with the region in which they arrive. 
Once an API call arrives at a gateway, 
it will stay in the region where the gateway is located. 
Take a moment to internalize the concepts discussed so far, 
as they are key to your understanding of the Apigee Edge architecture. 
As we discussed this diagram, 
think about the blue and green boxes as services or components. 
For now, we will focus on the components responsibilities. 
Later on, we will discuss the relationship as 
well as how to group them to form installation topologies. 
Let's start with the critical path. 
On this diagram, the critical path is represented by 
the horizontal line extending from the client to the backend system. 
The first component on the critical path is the router. 
The router is responsible for exposing 
virtual hosts and load balancing incoming requests. 
The message processor represents the runtime container for APIs executed on Apigee. 
API calls executing on 
the message processors may perform one or more calls to backend systems. 
All calls to backend systems on Apigee are originated by message processors. 
Some APIs generate runtime data that needs to be stored within Apigee. 
API policies such as API key validation, OAuth, 
key value map, and cache require 
access to a data store for the storage and retrieval of runtime data. 
The Apigee runtime data store is cassandra. 
Cassandra is part of the critical path because it is used by 
API policies to store data during runtime execution. 
The full critical path consists of the router, 
message processor, and cassandra services. 
As long as these components are up and running, 
others can be down or unreachable without affecting API runtime availability. 
API calls executed on the message processors generate analytics events. 
These events are asynchronously generated and consumed. 
The analytics pipeline is described on the bottom right part of the diagram. 
The first component in the analytics pipeline is apache Qpid. 
Qpid is a queue broker, 
queues are provisioned here to store analytics data. 
Qpid server is responsible for moving data from Qpid queues to postgreSQL. 
Analytics raw data on postgreSQL are eventually 
aggregated in batches by a service called postgres server. 
Aggregate data are used to power some Apigee Edge analytics reports. 
On the left of the diagram, 
we find the management components. 
At the center of the section is the management server. 
The management server exposes the management API. 
This API allows you to add users, 
deploy APIs, and perform many other actions. 
While performing these actions, 
the management server leverages cassandra, zookeeper, 
and openldap to read and store 
relevant data associated with runtime or configuration state. 
Zookeeper stores data related to the configuration of the system. 
The wiring information between 
components and configuration state are stored in zookeeper. 
Openldap stores information related to role-based access control users, 
roles, and permissions used for administrative access to Apigee are stored here. 
The Enterprise UI is the administrative UI used by API teams to develop and manage APIs. 
This UI consumes the management API to perform all actions. 
All features in the Enterprise UI are available through the management API. 
At the bottom of the diagram, 
we find the developer portal. 
This portal is a Drupal based application. 
Drupal uses postgreSQL to store data about user accounts, sessions, and modules. 
Take some time to review the component diagram in detail, 
your understanding of how Apigee Edge components function and relate to 
each other is key to your understanding and management of the platform. 
For more information on this topic, 





No comments:

Post a Comment

What is the difference between the Rate Limit and Quota policies?

  The   Rate Limit   and   Quota policies   in Apigee serve similar but distinct purposes: Rate Limit: • Limits the number of requests withi...