問題1
Challenge 1
Implement Private DNS Names and Private DNS Resolver
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 Compartment99248134- C01 and Region us-ashburn-1 Complete the following tasks in the provisioned OCI environment:
1. Create a new VCN with the name exam-vcn within your assigned compartment by using the Start VCN Wizard.
2. Create a new Oracle Functions application named exam-app within your assigned compartment by using the private subnet in your previously created VCN.
Ensure you use all defaults provided with the Create VCN with Internet Connectivity option.
Challenge 1
Implement Private DNS Names and Private DNS Resolver
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 Compartment99248134- C01 and Region us-ashburn-1 Complete the following tasks in the provisioned OCI environment:
1. Create a new VCN with the name exam-vcn within your assigned compartment by using the Start VCN Wizard.
2. Create a new Oracle Functions application named exam-app within your assigned compartment by using the private subnet in your previously created VCN.
Ensure you use all defaults provided with the Create VCN with Internet Connectivity option.
正確答案:
See the explanation for this task.
Explanation
Here are the steps to complete the challenge:
To create a new VCN with the name exam-vcn within your assigned compartment by using the Start VCN Wizard, follow these steps:
In the OCI Console, go to Virtual Cloud Networks.
Select your assigned compartment from the list on the left.
ClickStart VCN Wizard
SelectCreate VCN with Internet Connectivity Start VCN Wizard.
Enterexam-vcnas the and leave the other fields as default. ClickNext.
Review the summary and click . This will create a VCN with a public subnet, a private subnet, an internet gateway, a NAT gateway, a service gateway, and a route table.
To create a new Oracle Functions application named exam-app within your assigned compartment by using the private subnet in your previously created VCN, follow these steps:
In the OCI Console, go toDeveloper Servicesand clickFunctions.
Select your assigned compartment from the list on the left.
ClickCreate Application.
Enterexam-appas theApplication Nameand select your previously created VCN from theVCN dropdown menu.
Select the private subnet from theSubnetdropdown menu and leave the other fields as default.
ClickCreate. This will create an Oracle Functions application that can run serverless functions in a private subnet.
Explanation
Here are the steps to complete the challenge:
To create a new VCN with the name exam-vcn within your assigned compartment by using the Start VCN Wizard, follow these steps:
In the OCI Console, go to Virtual Cloud Networks.
Select your assigned compartment from the list on the left.
ClickStart VCN Wizard
SelectCreate VCN with Internet Connectivity Start VCN Wizard.
Enterexam-vcnas the and leave the other fields as default. ClickNext.
Review the summary and click . This will create a VCN with a public subnet, a private subnet, an internet gateway, a NAT gateway, a service gateway, and a route table.
To create a new Oracle Functions application named exam-app within your assigned compartment by using the private subnet in your previously created VCN, follow these steps:
In the OCI Console, go toDeveloper Servicesand clickFunctions.
Select your assigned compartment from the list on the left.
ClickCreate Application.
Enterexam-appas theApplication Nameand select your previously created VCN from theVCN dropdown menu.
Select the private subnet from theSubnetdropdown menu and leave the other fields as default.
ClickCreate. This will create an Oracle Functions application that can run serverless functions in a private subnet.
問題2
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
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
正確答案:
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!"}