Actualización de una función
Descubre cómo actualizar las funciones existentes en OCI Functions.
Para conocer los requisitos, las propiedades de actualización soportadas y el comportamiento de actualización específico del tipo de origen, consulte Actualización de funciones.
- En la página de lista Aplicaciones, seleccione la aplicación que contiene la función con la que desea trabajar. Si necesita ayuda para buscar la página de lista o la aplicación, consulte Listado de aplicaciones.
-
Seleccione el separador Funciones.
Se abre la página de lista Funciones. Todas las funciones de la aplicación seleccionada se muestran en una tabla.
- En el menú de la función que desea actualizar, seleccione Editar y actualice las propiedades disponibles. Las propiedades de origen que puede actualizar dependen del tipo de origen de la función.
- Para las funciones basadas en imágenes, puede actualizar las siguientes propiedades de origen:
- Compartimento de repositorio: compartimento que contiene el repositorio en OCI Container Registry en la región actual que contiene la imagen.
- Repositorio: repositorio de OCI Container Registry en la región actual que contiene la imagen.
- Imagen: imagen existente en el repositorio de OCI Container Registry de la región actual. Si la imagen tiene el mismo nombre y una etiqueta que la imagen en la que se basaba originalmente la función, consulte Notas sobre resúmenes de imágenes para funciones basadas en imágenes.
- Para las funciones de solo código, puede actualizar el origen de archivo y la configuración de tiempo de ejecución. También puede actualizar la propiedad Handler para las funciones de solo código Java, Python y Node.js. Consulte Actualización de funciones de solo código.
- Memoria (en MB): la cantidad máxima de memoria que puede utilizar la función mientras se ejecuta.
- Timeout de llamada síncrona (en segundos): cantidad máxima de tiempo durante la que se puede ejecutar la función cuando se llama en modo de sincronización. Para obtener más información sobre la llamada a funciones en modo de sincronización, consulte Invocación de funciones.
-
Configuración de llamada desasociada: especifique cómo ejecutar la función, cuando se llame en modo desasociado:
- Timeout de llamada desasociado (en segundos): cantidad máxima de tiempo durante la que se puede ejecutar la función cuando se llama en modo desasociado.
- Destino correcto: (opcional) cuando se llama a la función en modo Desasociado, el destino al que se escriben los registros de llamada cuando la llamada desasociada se realiza correctamente. Los destinos soportados para los resultados de las llamadas desasociadas son el servicio Notifications, el servicio Queue y el servicio Streaming. En función del destino que seleccione, se le pedirá que introduzca detalles adicionales (por ejemplo, en el caso del servicio Notifications, seleccione un compartimento de tema y un tema). Para escribir en el servicio de destino, OCI Functions necesita permisos de IAM. Si los permisos necesarios aún no existen, se le pedirá que confirme que desea que se cree una política de IAM adecuada (consulte Creación de políticas de IAM para destinos de fallo y éxito de llamadas desasociadas).
- Destino de fallo: (opcional) cuando se llama a la función en modo Desasociado, el destino al que se escriben los registros de llamada cuando falla la llamada desasociada. Los destinos soportados para los resultados de las llamadas desasociadas son el servicio Notifications, el servicio Queue y el servicio Streaming. En función del destino que seleccione, se le pedirá que introduzca detalles adicionales (por ejemplo, en el caso del servicio Notifications, seleccione un compartimento de tema y un tema). Para escribir en el servicio de destino, OCI Functions necesita permisos de IAM. Si los permisos necesarios aún no existen, se le pedirá que confirme que desea que se cree una política de IAM adecuada (consulte Creación de políticas de IAM para destinos de fallo y éxito de llamadas desasociadas).
Para obtener más información sobre la llamada a funciones en modo desasociado, consulte Invocación de funciones.
-
Activar simultaneidad aprovisionada: puede minimizar los retrasos iniciales al llamar a la función especificando un número mínimo de llamadas a funciones simultáneas para las que desea que la infraestructura de ejecución esté disponible constantemente.
Si selecciona esta opción, debe introducir un valor para Unidades de simultaneidad aprovisionadas (PCU) para especificar el número mínimo de llamadas a funciones simultáneas. El valor real de las PCU que introduzca debe ser un múltiplo de 10. Si Memory se establece en 256 MB, el valor de las PCU debe ser un múltiplo de 20; si Memory se establece en 128 MB, el valor de las PCU debe ser un múltiplo de 40. El número total de PCU disponibles depende del tamaño de la función, del límite de arrendamiento y de si se ha activado la simultaneidad aprovisionada para otras funciones del arrendamiento. Para obtener más información sobre la simultaneidad aprovisionada, consulte Reducción de latencia inicial mediante simultaneidad aprovisionada.
- Para las funciones basadas en imágenes, puede actualizar las siguientes propiedades de origen:
- Seleccione Guardar cambios para actualizar la función en OCI Functions.
Uso de la CLI de Fn Project para funciones basadas en imágenes
Consejo
De vez en cuando, se lanzan nuevas versiones de la CLI de Fn Project. Le recomendamos que compruebe regularmente que la última versión está instalada. Para obtener más información, consulte Steps to upgrade the Fn Project CLI.Para utilizar la CLI de Fn Project para actualizar una función basada en imágenes existente en OCI Functions:
-
Conéctese al entorno de desarrollo como desarrollador de funciones.
-
En una ventana de terminal, actualice las propiedades de una función existente basada en imágenes; para ello, introduzca:
fn update function <app-name> <function-name> --image <image-name> --<property> <value>donde:
-
<app-name>es el nombre de una aplicación que contiene la función existente. -
<function-name>es el nombre de la función existente que desea actualizar. -
--image <image-name>(opcionalmente) es el nombre de una imagen existente en el Registro de Docker en la que desea basar la función basada en imágenes, en lugar de la imagen especificada previamente. Si la imagen tiene el mismo nombre y una etiqueta que la imagen en la que se basaba originalmente la función, consulte Notas sobre resúmenes de imágenes para funciones basadas en imágenes. -
--<property> <value>(opcionalmente) es la propiedad que desea actualizar y el nuevo valor que desea que tenga. Introduzcafn update function --helppara ver una lista de propiedades y valores válidos.
Por ejemplo:
fn update function acmeapp acme-func --image phx.ocir.io/ansh81vru1zp/acme-repo/acme-func:0.0.4 --timeout-in-seconds 60fn update function acmeapp acme-func --memory 256Las propiedades de la función basada en imágenes existente se actualizan con los valores especificados.
-
-
Verifique que la función se ha actualizado; para ello, introduzca:
fn inspect function <app-name> <function-name>Por ejemplo:
fn inspect function acme-app acme-funcSalida:
{ "annotations": { "fnproject.io/fn/invokeEndpoint": "https://fht7ns4mn2q.us-phoenix-1.functions.oci.oraclecloud.com/20181201/functions/ocid1.fnfunc.oc1.phx.aaaa____uxoa/actions/invoke", "oracle.com/oci/compartmentId": "ocid1.compartment.oc1..aaaaaaaaw______nyq" }, "app_id": "ocid1.fnapp.oc1.phx.aaaaaaaaaf______r3ca", "created_at": "2018-07-26T12:50:53.000Z", "format": "default", "id": "ocid1.fnfunc.oc1.phx.aaaa____uxoa", "image": "phx.ocir.io/ansh81vru1zp/acme-repo/acme-func:0.0.4", "memory": 256, "name": "acme-func", "timeout": 60, "updated_at": "2018-07-26T13:59:18.000Z" }
Uso de la CLI de OCI
Utilice el comando oci fn function update y los parámetros necesarios para actualizar una función:
oci fn function update --function-id <function-ocid> [OPTIONS]Para obtener una lista completa de indicadores y opciones variables para los comandos de la CLI de OCI, consulte la Referencia de la línea de comandos.
-
Ejecute la operación API UpdateFunction para actualizar funciones.