1z0-997-23試験無料問題集「Oracle Cloud Infrastructure 2023 Architect Professional 認定」
Deploy a Serverless Function and Access Using an API Gateway
Deployment in OCI
Scenario
You have joined ACME as their new Cloud Solutions Architect. Your organization wants to verify if they can execute their microservices deployed as serverless functions on another cloud provider using Oracle Functions in OCI.
Preconfigured
To complete this requirement, you are provided with the following:
* Access to an OCI Tenancy, an assigned compartment, and OCI credentials.
* Access to Cloud Shell to execute the Fn CLI and Docker commands.
* Code for a sample Python function, ExamFunction-main.zip.
* Permissions to perform only the tasks within the challenge.
Note: Throughout your exam, ensure to use assigned Compartment 99248134- C01 and Region us-ashburn-1 Having deployed a private function to an Oracle Functions application in OCI as proof-of-concept, demonstrate that it can be invoked via a public API Gateway deployment. Before you proceed further, ensure that you have created the following resources:
* An OCI VCN in your compartment for hosting the API Gateway2
* The hello-python function deployed to a Functions application in your compartment
Complete the following tasks in the provisioned OCI environment:
1. Create a new public API Gateway in your compartment named exam-gateway.
2. Create a new API Deployment named exam-deployment using /v1 as the path prefix in exam-gateway.
3. Create a new route by using /hello as the path and GET as the method. The route must invoke the hello-python function.
4. Create a new stateful CIDR Ingress Rule that allows for TCP HTTPS traffic (port 443) from all IP addresses and ports in the default Security List for exam-vcn.
5. Use curl to call the function via your API Gateway deployment.
curl -k -X GET {deployment-endpoint}/hell
Deployment in OCI
Scenario
You have joined ACME as their new Cloud Solutions Architect. Your organization wants to verify if they can execute their microservices deployed as serverless functions on another cloud provider using Oracle Functions in OCI.
Preconfigured
To complete this requirement, you are provided with the following:
* Access to an OCI Tenancy, an assigned compartment, and OCI credentials.
* Access to Cloud Shell to execute the Fn CLI and Docker commands.
* Code for a sample Python function, ExamFunction-main.zip.
* Permissions to perform only the tasks within the challenge.
Note: Throughout your exam, ensure to use assigned Compartment 99248134- C01 and Region us-ashburn-1 Having deployed a private function to an Oracle Functions application in OCI as proof-of-concept, demonstrate that it can be invoked via a public API Gateway deployment. Before you proceed further, ensure that you have created the following resources:
* An OCI VCN in your compartment for hosting the API Gateway2
* The hello-python function deployed to a Functions application in your compartment
Complete the following tasks in the provisioned OCI environment:
1. Create a new public API Gateway in your compartment named exam-gateway.
2. Create a new API Deployment named exam-deployment using /v1 as the path prefix in exam-gateway.
3. Create a new route by using /hello as the path and GET as the method. The route must invoke the hello-python function.
4. Create a new stateful CIDR Ingress Rule that allows for TCP HTTPS traffic (port 443) from all IP addresses and ports in the default Security List for exam-vcn.
5. Use curl to call the function via your API Gateway deployment.
curl -k -X GET {deployment-endpoint}/hell
正解:
See the explanation for this task.
Explanation
To complete the task of creating a public API Gateway and invoking a private function in OCI, you can follow these steps:
To create a new public API Gateway in your compartment named exam-gateway, follow these steps:
In the OCI Console, go to and click API Gateway.
Select your assigned compartment from the list on the left.
Click Create Gateway
Enter exam-gateway as the . You can also add a description
for the gateway if you want.
Select your previously created VCN from the dropdown menu and select any subnet from the Subnet dropdown menu. You can also enable logging for the gateway if you want.
Click Create. This will create a new public API Gateway in your compartment that can expose your functions to the internet.
To create a new API Deployment named exam-deployment using /v1 as the path prefix in exam-gateway, follow these steps:
In the OCI Console, go to API Gateway.
Select your assigned compartment from the list on the left and click on your previously created gateway (exam-gateway).
Click Deployments on the left panel and then click Create Deployment.
Enter exam-deployment as the Name and select From Scratch as the Specification Type. You can also add a description for the deployment if you want.
Enter /v1 as the Path Prefix and leave the other fields as default. Click Next.
To create a new route by using /hello as the path and GET as the method, follow these steps:
In the Create Deployment dialog box, click Add Route.
Enter /hello as the Path, select GET as the Method, and select Oracle Functions as the Type.
Select your previously created function (hello-python) from the Function Name dropdown menu and leave the other fields as default. Click Save Changes. This will create a new route that will invoke your function when you send a GET request to /v1/hello.
To create a new stateful CIDR Ingress Rule that allows for TCP HTTPS traffic (port 443) from all IP addresses and ports in the default Security List for exam-vcn, follow these steps:
In the OCI Console, go to Networking and click Virtual Cloud Networks.
Select your assigned compartment from the list on the left and click on your previously created VCN (exam-vcn).
Click Security Lists on the left panel and then click on the default security list for your VCN.
Click Edit All Rules and then click Add Ingress Rule under the Ingress Rules section.
Enter 0.0.0.0/0 as the , and enter 443 as both the
Source Port Range and the . You can also add a description for the rule if you want.
Click Save Security List Rules. This will create a new stateful CIDR Ingress Rule that will allow HTTPS traffic from any source to reach your API Gateway.
To use curl to call the function via your API Gateway deployment, follow these steps:
In the OCI Console, go to API Gateway.
Select your assigned compartment from the list on the left and click on your previously created gateway (exam-gateway).
Click Deployments on the left panel and then click on your previously created deployment (exam-deployment).
Copy the value of the Endpoint URL field. This is the base URL for your API Deployment.
In a terminal window, enter the following command:
curl -k -X GET {deployment-endpoint}/v1/hello
where {deployment-endpoint} is the base URL that you copied.
For example, if your deployment endpoint is
https://abc123xyz456.apigateway.us-ashburn-1.oci.customer-oci.com, your command would be:
curl -k -X GET https://abc123xyz456.apigateway.us-ashburn-1.oci.customer-oci.com/v1/hello
This will send a GET request to your API Deployment and invoke your function. You should see a response similar to this:
{"message": "Hello World!"}
Explanation
To complete the task of creating a public API Gateway and invoking a private function in OCI, you can follow these steps:
To create a new public API Gateway in your compartment named exam-gateway, follow these steps:
In the OCI Console, go to and click API Gateway.
Select your assigned compartment from the list on the left.
Click Create Gateway
Enter exam-gateway as the . You can also add a description
for the gateway if you want.
Select your previously created VCN from the dropdown menu and select any subnet from the Subnet dropdown menu. You can also enable logging for the gateway if you want.
Click Create. This will create a new public API Gateway in your compartment that can expose your functions to the internet.
To create a new API Deployment named exam-deployment using /v1 as the path prefix in exam-gateway, follow these steps:
In the OCI Console, go to API Gateway.
Select your assigned compartment from the list on the left and click on your previously created gateway (exam-gateway).
Click Deployments on the left panel and then click Create Deployment.
Enter exam-deployment as the Name and select From Scratch as the Specification Type. You can also add a description for the deployment if you want.
Enter /v1 as the Path Prefix and leave the other fields as default. Click Next.
To create a new route by using /hello as the path and GET as the method, follow these steps:
In the Create Deployment dialog box, click Add Route.
Enter /hello as the Path, select GET as the Method, and select Oracle Functions as the Type.
Select your previously created function (hello-python) from the Function Name dropdown menu and leave the other fields as default. Click Save Changes. This will create a new route that will invoke your function when you send a GET request to /v1/hello.
To create a new stateful CIDR Ingress Rule that allows for TCP HTTPS traffic (port 443) from all IP addresses and ports in the default Security List for exam-vcn, follow these steps:
In the OCI Console, go to Networking and click Virtual Cloud Networks.
Select your assigned compartment from the list on the left and click on your previously created VCN (exam-vcn).
Click Security Lists on the left panel and then click on the default security list for your VCN.
Click Edit All Rules and then click Add Ingress Rule under the Ingress Rules section.
Enter 0.0.0.0/0 as the , and enter 443 as both the
Source Port Range and the . You can also add a description for the rule if you want.
Click Save Security List Rules. This will create a new stateful CIDR Ingress Rule that will allow HTTPS traffic from any source to reach your API Gateway.
To use curl to call the function via your API Gateway deployment, follow these steps:
In the OCI Console, go to API Gateway.
Select your assigned compartment from the list on the left and click on your previously created gateway (exam-gateway).
Click Deployments on the left panel and then click on your previously created deployment (exam-deployment).
Copy the value of the Endpoint URL field. This is the base URL for your API Deployment.
In a terminal window, enter the following command:
curl -k -X GET {deployment-endpoint}/v1/hello
where {deployment-endpoint} is the base URL that you copied.
For example, if your deployment endpoint is
https://abc123xyz456.apigateway.us-ashburn-1.oci.customer-oci.com, your command would be:
curl -k -X GET https://abc123xyz456.apigateway.us-ashburn-1.oci.customer-oci.com/v1/hello
This will send a GET request to your API Deployment and invoke your function. You should see a response similar to this:
{"message": "Hello World!"}