معرفی شرکت ها


aws-solutions-constructs.aws-lambda-opensearch-2.26.0


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

CDK Constructs for AWS Lambda to Amazon OpenSearch Service
ویژگی مقدار
سیستم عامل OS Independent
نام فایل aws-solutions-constructs.aws-lambda-opensearch-2.26.0
نام aws-solutions-constructs.aws-lambda-opensearch
نسخه کتابخانه 2.26.0
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Amazon Web Services
ایمیل نویسنده -
آدرس صفحه اصلی https://github.com/awslabs/aws-solutions-constructs.git
آدرس اینترنتی https://pypi.org/project/aws-solutions-constructs.aws-lambda-opensearch/
مجوز Apache-2.0
# aws-lambda-opensearch module <!--BEGIN STABILITY BANNER-->--- ![Stability: Experimental](https://img.shields.io/badge/stability-Experimental-important.svg?style=for-the-badge) > All classes are under active development and subject to non-backward compatible changes or removal in any > future version. These are not subject to the [Semantic Versioning](https://semver.org/) model. > This means that while you may use them, you may need to update your source code when upgrading to a newer version of this package. --- <!--END STABILITY BANNER--> | **Reference Documentation**:| <span style="font-weight: normal">https://docs.aws.amazon.com/solutions/latest/constructs/</span>| |:-------------|:-------------| <div style="height:8px"></div> | **Language** | **Package** | |:-------------|-----------------| |![Python Logo](https://docs.aws.amazon.com/cdk/api/latest/img/python32.png) Python|`aws_solutions_constructs.aws_lambda_opensearch`| |![Typescript Logo](https://docs.aws.amazon.com/cdk/api/latest/img/typescript32.png) Typescript|`@aws-solutions-constructs/aws-lambda-opensearch`| |![Java Logo](https://docs.aws.amazon.com/cdk/api/latest/img/java32.png) Java|`software.amazon.awsconstructs.services.lambdaopensearch`| ## Overview This AWS Solutions Construct implements an AWS Lambda function and Amazon OpenSearch Service with the least privileged permissions. Here is a minimal deployable pattern definition: Typescript ```python import { Construct } from 'constructs'; import { Stack, StackProps, Aws } from 'aws-cdk-lib'; import { LambdaToOpenSearch } from '@aws-solutions-constructs/aws-lambda-opensearch'; import * as lambda from "aws-cdk-lib/aws-lambda"; const lambdaProps: lambda.FunctionProps = { code: lambda.Code.fromAsset(`lambda`), runtime: lambda.Runtime.NODEJS_14_X, handler: 'index.handler' }; new LambdaToOpenSearch(this, 'sample', { lambdaFunctionProps: lambdaProps, openSearchDomainName: 'testdomain', // TODO: Ensure the Cognito domain name is globally unique cognitoDomainName: 'globallyuniquedomain' + Aws.ACCOUNT_ID }); ``` Python ```python from aws_solutions_constructs.aws_lambda_opensearch import LambdaToOpenSearch from aws_cdk import ( aws_lambda as _lambda, Aws, Stack ) from constructs import Construct lambda_props = _lambda.FunctionProps( code=_lambda.Code.from_asset('lambda'), runtime=_lambda.Runtime.PYTHON_3_9, handler='index.handler' ) LambdaToOpenSearch(self, 'sample', lambda_function_props=lambda_props, open_search_domain_name='testdomain', # TODO: Ensure the Cognito domain name is globally unique cognito_domain_name='globallyuniquedomain' + Aws.ACCOUNT_ID ) ``` Java ```java import software.constructs.Construct; import software.amazon.awscdk.Stack; import software.amazon.awscdk.StackProps; import software.amazon.awscdk.Aws; import software.amazon.awscdk.services.lambda.*; import software.amazon.awscdk.services.lambda.Runtime; import software.amazon.awsconstructs.services.lambdaopensearch.*; new LambdaToOpenSearch(this, "sample", new LambdaToOpenSearchProps.Builder() .lambdaFunctionProps(new FunctionProps.Builder() .runtime(Runtime.NODEJS_14_X) .code(Code.fromAsset("lambda")) .handler("index.handler") .build()) .openSearchDomainName("testdomain") // TODO: Ensure the Cognito domain name is globally unique .cognitoDomainName("globallyuniquedomain" + Aws.ACCOUNT_ID) .build()); ``` ## Pattern Construct Props | **Name** | **Type** | **Description** | |:-------------|:----------------|-----------------| |existingLambdaObj?|[`lambda.Function`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Existing instance of Lambda Function object, providing both this and `lambdaFunctionProps` will cause an error.| |lambdaFunctionProps?|[`lambda.FunctionProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.FunctionProps.html)|User provided props to override the default props for the Lambda function.| |openSearchDomainProps?|[`opensearchservice.CfnDomainProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_opensearchservice.CfnDomainProps.html)|Optional user provided props to override the default props for the OpenSearch Service.| |openSearchDomainName|`string`|Domain name for the OpenSearch Service.| |cognitoDomainName?|`string`|Optional Amazon Cognito domain name. If omitted the Amazon Cognito domain will default to the OpenSearch Service domain name.| |createCloudWatchAlarms?|`boolean`|Whether to create the recommended CloudWatch alarms.| |domainEndpointEnvironmentVariableName?|`string`|Optional name for the OpenSearch domain endpoint environment variable set for the Lambda function.| |existingVpc?|[`ec2.IVpc`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ec2.IVpc.html)|An optional, existing VPC into which this pattern should be deployed. When deployed in a VPC, the Lambda function will use ENIs in the VPC to access network resources. If an existing VPC is provided, the `deployVpc` property cannot be `true`. This uses `ec2.IVpc` to allow clients to supply VPCs that exist outside the stack using the [`ec2.Vpc.fromLookup()`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ec2.Vpc.html#static-fromwbrlookupscope-id-options) method.| |vpcProps?|[`ec2.VpcProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ec2.VpcProps.html)|Optional user provided properties to override the default properties for the new VPC. `enableDnsHostnames`, `enableDnsSupport`, `natGateways` and `subnetConfiguration` are set by the pattern, so any values for those properties supplied here will be overridden. If `deployVpc` is not `true` then this property will be ignored.| |deployVpc?|`boolean`|Whether to create a new VPC based on `vpcProps` into which to deploy this pattern. Setting this to true will deploy the minimal, most private VPC to run the pattern:<ul><li> One isolated subnet in each Availability Zone used by the CDK program</li><li>`enableDnsHostnames` and `enableDnsSupport` will both be set to true</li></ul>If this property is `true` then `existingVpc` cannot be specified. Defaults to `false`.| ## Pattern Properties | **Name** | **Type** | **Description** | |:-------------|:----------------|-----------------| |lambdaFunction|[`lambda.Function`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Function.html)|Returns an instance of `lambda.Function` created by the construct| |userPool|[`cognito.UserPool`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_cognito.UserPool.html)|Returns an instance of `cognito.UserPool` created by the construct| |userPoolClient|[`cognito.UserPoolClient`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_cognito.UserPoolClient.html)|Returns an instance of `cognito.UserPoolClient` created by the construct| |identityPool|[`cognito.CfnIdentityPool`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_cognito.CfnIdentityPool.html)|Returns an instance of `cognito.CfnIdentityPool` created by the construct| |openSearchDomain|[`opensearchservice.CfnDomain`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_opensearchservice.CfnDomain.html)|Returns an instance of `opensearch.CfnDomain` created by the construct| |openSearchRole|[`iam.Role`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_iam.Role.html)|Returns an instance of `iam.Role` created by the construct for `opensearch.CfnDomain`| |cloudWatchAlarms?|[`cloudwatch.Alarm[]`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_cloudwatch.Alarm.html)|Returns a list of `cloudwatch.Alarm` created by the construct| |vpc?|[`ec2.IVpc`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ec2.IVpc.html)|Returns an interface on the VPC used by the pattern (if any). This may be a VPC created by the pattern or the VPC supplied to the pattern constructor.| ## Lambda Function This pattern requires a lambda function that can post data into the OpenSearch. A sample function is provided [here](https://github.com/awslabs/aws-solutions-constructs/blob/master/source/patterns/%40aws-solutions-constructs/aws-lambda-opensearch/test/lambda/index.js). ## Default settings Out of the box implementation of the Construct without any overrides will set the following defaults: ### AWS Lambda Function * Configure limited privilege access IAM role for Lambda function * Enable reusing connections with Keep-Alive for Node.js Lambda function * Enable X-Ray Tracing * Set Environment Variables * (default) DOMAIN_ENDPOINT * AWS_NODEJS_CONNECTION_REUSE_ENABLED ### Amazon Cognito * Set password policy for User Pools * Enforce the advanced security mode for User Pools ### Amazon OpenSearch Service * Deploy best practices CloudWatch Alarms for the OpenSearch Service domain * Secure the OpenSearch Service dashboard access with Cognito User Pools * Enable server-side encryption for OpenSearch Service domain using AWS managed KMS Key * Enable node-to-node encryption for the OpenSearch Service domain * Configure the cluster for the OpenSearch Service domain ## Architecture ![Architecture Diagram](architecture.png) --- © Copyright 2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.


نیازمندی

مقدار نام
<3.0.0,>=2.45.0 aws-cdk-lib
==2.26.0 aws-solutions-constructs.core
<11.0.0,>=10.0.0 constructs
<2.0.0,>=1.69.0 jsii
>=0.0.3 publication
~=2.13.3 typeguard


زبان مورد نیاز

مقدار نام
~=3.7 Python


نحوه نصب


نصب پکیج whl aws-solutions-constructs.aws-lambda-opensearch-2.26.0:

    pip install aws-solutions-constructs.aws-lambda-opensearch-2.26.0.whl


نصب پکیج tar.gz aws-solutions-constructs.aws-lambda-opensearch-2.26.0:

    pip install aws-solutions-constructs.aws-lambda-opensearch-2.26.0.tar.gz