Skip to content

Latest commit

 

History

History
81 lines (54 loc) · 3.35 KB

aliyun_functions.md

File metadata and controls

81 lines (54 loc) · 3.35 KB

Aliyun Function Compute

Lithops with Aliyun Function Compute as serverless compute backend.

Installation

  1. Install Alibaba Cloud backend dependencies:
python3 -m pip install lithops[aliyun]
  1. Access to your console and activate your Functions service instance.

Configuration

  1. Navigate to the Cloud Console and create a new AccessKey (If you don't have one)

  2. Access to your Function Compute dashboard, and choose your preferred region.

  3. Access to the Resource Access Management (RAM) Roles dashboard, and create a new Role that contains the AliyunOSSFullAccess permission. Alternatively you can use an already created Role that contains the AliyunOSSFullAccess permission.

  4. Edit your Lithops config and add the following keys:

lithops:
    backend : aliyun_fc

aliyun:
    account_id: <ACCOUNT_ID>
    access_key_id: <ACCESS_KEY_ID>
    access_key_secret: <ACCESS_KEY_SECRET>
    region : <REGION_NAME>

aliyun_fc:
    role_arn: <ROLE_ARN>
  1. (optional) By default Lithops will automatically create a new service in your Function Compute account. For this purpose your user must have List and Create permissions to Function Compute. Alternatively, you can create a new service through the dashboard (or use one already created), assign the Role created in the previous step (Accessing to service configuration --> Modify Configuration --> Role Config), and configure the service entry in the aliyun_cf config section.

Summary of configuration keys for Aliyun

Group Key Default Mandatory Additional info
aliyun account_id yes Alibaba Cloud Account ID
aliyun access_key_id yes Access Key Id
aliyun access_key_secret yes Access Key Secret
aliyun region yes Region name. For example: eu-west-1

Summary of configuration keys for Alibaba Functions Compute:

Group Key Default Mandatory Additional info
aliyun_fc role_arn yes Role ARN. For example: acs:ram::5244532493961771:role/aliyunfclogexecutionrole
aliyun_fc region no Region name. For example: eu-west-1. Lithops will use the region set under the aliyun section if it is not set here
aliyun_fc service no Service name
aliyun_fc max_workers 300 no Max number of workers. Alibaba limits the number of parallel workers to 300
aliyun_fc worker_processes 1 no Number of Lithops processes within a given worker. This can be used to parallelize function activations within a worker
aliyun_fc runtime no Runtime name you built and deployed using the lithops client
aliyun_fc runtime_memory 256 no Memory limit in MB. Default 256MB
aliyun_fc runtime_timeout 300 no Runtime timeout in seconds. Default 5 minutes
aliyun_fc invoke_pool_threads 300 no Number of concurrent threads used for invocation

Test Lithops

Once you have your compute and storage backends configured, you can run a hello world function with:

lithops hello -b aliyun_fc -s aliyun_oss

Viewing the execution logs

You can view the function executions logs in your local machine using the lithops client:

lithops logs poll