Apigee API Management
In this course, you will learn how to manage your APIs by using Apigee. Apigee allows you to continuously make improvements while also ensuring stability and reliability. We also cover how to modify the behavior of your APIs by applying policies, as well as how to enforce authentication.
- Describe what an API proxy is
- Deploy an API proxy using Apigee
- Create and apply an Apigee policy
- Secure an API by requiring a key
- GCP Developers
- GCP Administrators
- Previous experience with APIs
- Admin access to a GCP account
Before you can start using Apigee, you need to first set up the environment. In this lesson, I am going to show you how to provision an evaluation organization for Apigee X using the web console.
If you are interested in setting up Apigee Hybrid, you can find those instructions here: https://cloud.google.com/apigee/docs/api-platform/get-started/provisioning-intro
To begin, first log into the GCP web console. Then search for “Apigee” up here in the search bar. I prefer to open a new tab before doing this. Once you click on the link, you will be redirected to a new website. The UI looks similar to GCP, but you will notice that the domain name has changed. That is why I opened a new tab first, because now I can easily return to the GCP console whenever I want.
On your first visit, you are going to get a warning that there are no detected subscriptions. Apigee normally costs money to use. However, as you can see, they do offer a free trial. Signing up for a free trial does not obligate you to anything. You can use the evaluation version for 60 days, and then it automatically deletes itself. Now that means you don’t want to try to do anything too fancy, because you are going to lose everything after 60 days. If you don’t want to lose everything after 60 days, you need to sign up for the paid version. And you can do that by clicking on the “Contact sales” button here.
I just want to use the evaluation version so I will click on “Start Trial”. Next I need to pick the Google Project to associate this with. I recommend creating a brand new project just for Apigee, but you can also choose an existing project if you wish. I’ll show you how to do that. You just need to copy the project ID and paste it here. Once you select a valid project, click on “Start Evaluation”.
On this next screen you will get a warning about not being able to convert an evaluation version into a paid version. Anything you build now is going to be eventually lost. You cannot start out with the free version and then later pay to have it upgraded.
Now on this screen you will see four steps. You have to go through each, one at a time. Just click on the Edit button and then follow the instructions. Some of these steps can take a while to complete. So be aware that the whole process might take you about an hour.
First, I have to enable a few Google APIs. Just click on “Enable APIs”. This first step should only take a few minutes to complete. I am going to be fast forwarding and jumping ahead a lot so that we don’t have to wait.
Next, I have to set up networking. Select the VPC you want Apigee to run in. I am going to pick my default network, but you probably want to set up something custom.
The third step will create the Apigee organization. You have to choose the region for storing the analytics information, as well as the region for the runtime. Generally you want to pick the closest region to yourself. But you might want to get fancy and store your analytics close to your Data Scientists and then run Apigee closer to your customers. This step takes the longest to complete. You will get an email when it is done, so you don’t have to sit and stare at it the whole time.
Finally, the last step has you configure access routing. You need to decide if you are going to allow public internet access or not. If your APIs are only going to be used internally then you can select “No internet access” and this will provision an internal load balancer. However, if you want to allow external companies or developers to connect, you need to pick “Enable internet access”.
Make sure you understand that this will require using an external load balancer. This is going to incur a cost. Even though the Apigee eval org will be free; using an external load balancer is not. If you do not want to spend any money at all, then you will need to pick “No internet access”. Disabling internet access will make testing the APIs a little more complicated. For example, you can’t just run a cURL command from your local machine. If you do end up going with the internal load balancer, then you need to refer to the directions provided here for testing: https://cloud.google.com/apigee/docs/api-platform/get-started/accessing-internal-proxies
If you choose the external load balancer, you are going to need to configure DNS. If you have a domain name already registered, you can enter that here. And then you will also need to modify some DNS records later. If you don’t have a domain name or if you just want to avoid the hassle, you can let Google create one for you. This won’t be as pretty, but it will work.
Next, you will pick a subnetwork for Apigee to use for creating Compute VMs in.
And then finally, you need to set up SSL certificates. Now if you picked the Wildcard DNS like I did, Google will handle this for you. When you are satisfied with all your selections, click on “Set Access”.
This last step should take a couple minutes to complete.
Alright. So at this point my organization is created. You can see the name here. You can also see the domain name here. When I click on “Continue” we should see the final confirmation screen.
Before I end this demo, let me quickly verify that everything is working. If I click on this link, it will connect to a default “Hello world” API. This is a default proxy created in Apigee. Ok, it looks like it worked but the text is pretty small. Let me zoom in. And there we go.
So at this point, your organization should be created and you can now access the Apigee console and start creating proxies for your APIs.
Daniel began his career as a Software Engineer, focusing mostly on web and mobile development. After twenty years of dealing with insufficient training and fragmented documentation, he decided to use his extensive experience to help the next generation of engineers.
Daniel has spent his most recent years designing and running technical classes for both Amazon and Microsoft. Today at Cloud Academy, he is working on building out an extensive Google Cloud training library.
When he isn’t working or tinkering in his home lab, Daniel enjoys BBQing, target shooting, and watching classic movies.