ACK Knative is fully compatible with open-source Knative and allows you to deploy applications with a few clicks, eliminating the need to purchase and manage infrastructure resources. You can use the ACK console to quickly deploy Knative and enable the Knative Ingress, install Knative core components and multiple add-ons as needed, and upgrade the Knative Serving component.
Prerequisites
An ACK Serverless cluster that runs Kubernetes 1.28 or later has been created. If you need to upgrade the cluster, see Manually upgrade an ACK cluster.
Deploy Knative
Log on to the ACK console. In the left-side navigation pane, click Clusters.
On the Clusters page, find the cluster that you want to manage and click its name. In the left-side navigation pane, choose .
On the Components tab, click Deploy Knative, select the Knative gateway that you want to install, and then click Deploy.
For more information about gateway or Ingress recommendations for Knative, see Select an Ingress for Knative.
ALB
ALB Ingresses are fully managed and provide a more efficient method to manage ingress traffic based on ALB. ALB Ingresses support complex routing, automatic certificate discovery, and the HTTP, HTTPS, and QUIC protocols. If you use ALB Ingresses, you must select at least two vSwitches.
NoteFor more information about regions and zones supported by ALB, see Regions and zones where ALB is available.
MSE
MSE Ingresses are developed based on MSE cloud-native gateways and provide a more efficient method to manage ingress traffic. MSE Ingresses are compatible with NGINX Ingresses and more than 50 annotations defined in NGINX Ingresses. MSE Ingresses are suitable for more than 90% of scenarios supported by NGINX Ingresses. MSE Ingresses allow you to roll out multiple canary versions at the same time, and provide flexible service governance capabilities and comprehensive protection. MSE Ingresses can meet the requirements for traffic governance in scenarios in which a large number of cloud-native distributed applications are used.
ASM
Alibaba Cloud Service Mesh (ASM) is a fully managed service mesh platform. ASM is compatible with the open source Istio service mesh. ASM simplifies service management. For example, you can use ASM to route and split inter-service traffic, secure inter-service communication based on authentication, and observe the behavior of services in meshes. This greatly reduces your development and O&M work.
Kourier
Kourier gateways are provided by the Knative community and provide basic routing capabilities. Kourier gateways are deployed in your clusters and must be manually maintained.
NoteTo use Kouier gateways in ACK Serverless clusters, you must enable Alibaba Cloud DNS PrivateZone or CoreDNS.
After the components are deployed, you can click Go to Components to view details about the components or click Go to Services to view details about the Knative Services.
What to do next
Deploy components: On the Components tab, find a component whose Status column displays Not Deployed and click Deploy in the Actions column. In the message that appears, click Confirm.
Uninstall components: On the Components tab, find the component that you want to uninstall and click Uninstall in the Actions column. In the message that appears, click Confirm.
Uninstall Knative: On the Components tab, click Uninstall in the upper right corner. In the dialog box that appears, select I confirm that I have read the above information and want to uninstall Knative and click OK.
Deploy the Knative component
Knative provides the core components Knative Serving and Knative Eventing, and also supports various add-ons to extend the functionality of Knative services, including event source components such as GitHub and Kafka. You can deploy and manage these components through the console.
Log on to the ACK console. In the left-side navigation pane, click Clusters.
On the Clusters page, find the cluster that you want to manage and click its name. In the left-side navigation pane, choose .
Select a component in the Not Deployed status and click Deploy in the Actions column. In the message that appears, click Confirm.
If Deployed is displayed in the Status column, the component is deployed.
If a Knative component is no longer needed, you can click Uninstall in the Actions column, and uninstall the component as prompted.
ImportantAfter you uninstall a Knative component, the relevant Knative CustomResourceDefinitions (CRDs) and Knative Service are deleted. Proceed with caution.
Upgrade Knative Serving
Knative Serving is a core component of Knative that handles serverless workloads such as application deployment, version management, and traffic-based auto-scaling. It also manages the canary release of new features. When idle, it can scale the number of pods down to zero. We recommend that you perform regular upgrades for Knative Serving through the console to benefit from the latest features and bug fixes.
For more information about the release notes for Knative Serving, see Knative release notes.
Use the following steps to upgrade the Serving component to version 0.14.0. We recommend that you upgrade Knative Serving during off-peak hours. Knative Serving 0.14.0 provides the following features:
By default, a minimum of 20 latest Knative Service revisions are retained. The default retention period is 48 hours.
Highly reliable subcomponents are provided, such as controller and hpaautoscaler.
Log on to the ACK console. In the left-side navigation pane, click Clusters.
On the Clusters page, find the cluster that you want to manage and click its name. In the left-side navigation pane, choose .
On the Components tab, find Serving in the Core Component section, and click Upgrade.
After Knative Serving is upgraded, the result is displayed.
References
For more information about how to select an appropriate Ingress for Knative based on your business requirements, see Select an Ingress for Knative.
For more information about fast deployment of Knative Services, see Quickly deploy a Knative application.
For more information about how to use Knative to scale pods for your application to match incoming demand, see Enable auto scaling to withstand traffic fluctuations.
For more information about how to install the Eventing component for event-driven mode in Knative, see Knative Eventing.