As of 2022-10-18, the DO240 course from Red Hat is based on 3scale version 3.11, while the exam is based on 2.4!
- API Manager is used to manage 3scale and configured the API Gateway
- Product is an external route
- Backend is an internal API
- Application is a user of a product - NOT an API
- Developer is the creator/maintainer of an application
- Developer Portal is a public webpage that provides information on your APIs
- Tenant is an instance of 3scale
- Default tenant is called 3scale
- API Gateway receives external traffic and redirects to backend APIs
- APIcast is the 3scale implementation of the API Gateway
- Default has two instances: staging and production
- Audience shows the number of users on an API
- Install through OperatorHub
- Install to a namespace not all namespaces, e.g. 3scale
- Provide the
apps.cluster.domain
host for APIManager wildcard spec
- On dashboard, select New API
- Name it and select Add API
- On the newly created API page, under Integration on the left sidebar, select Methods and Metrics
- Create methods and metrics
- If you need to create metrics, probably do those first to avoid rework
- on the left sidebar, under Applications, select Application Plans.
- Select Audience from the drop down
- On the left sidecar, under Accounts, select Listing
- Select Create on the right side of the page
- Enter account information and select Create
- An application for that deverloper
- You can require additional information from users through Field Definitions
- Applications plans are per product (API)
- Create them under Applications > Application Plans on the left sidebar
- Once created, you can configure usage limits based on metrics
- You can set rate limit consequences here too
- Volume/usage - How many times are you hitting my API?
- Functionality - Basic users can hit x. Premium users can hit y.
- Resources - I will charge you based on what you resources you consume (CPU/RAM/etc.)
Can have different tiers for the above models.
- Uses liquid templates to display 3scale information
- There's a GUI to configure it
- Can require some pages to be behind a user login
- Field definitions defined in a user account can be displayed and used in portal
- Create an OIDC client
- Set Email Verified mapper to one
- Create a second mapper called org_name
- Add to userinfo, ID token, and access token for org_name mapper
- Enable SSO in 3scale from Users > SSO Integrations
- Enable SSO for developer portal from Audience > Developer Portal > SSO Integrations
- Enable SSO for APIs (Products) from API Page > Integration > Configuration
- Edit integration settings and select OpenID Connect
- In the APIcast setting, enter the OpenID Connect Issuer as something close to
https://client-id:client-secret@sso.server/auth/realms/master