Cloud Execution for Desktop en AWS
Sigue esta guía para implementar el módulo de Cloud Execution for Desktop para el procesamiento privado de datos de AWS.
Requisitos previos
Antes de implementar el módulo de Cloud Execution for Desktop, debes completar estos pasos en la página de Configurar la cuenta de AWS y VPC para datos privados:
Se configuró una VPC dedicada a Alteryx One Platform como se menciona en la sección Crear una VPC.
Cuenta de servicio y rol de IAM base adjuntos a la cuenta de servicio tal y como se menciona en la sección Configurar IAM.
Se activó correctamente el aprovisionamiento de procesamiento privado de datos, como se menciona en la sección Aprovisionamiento de manejo privado de datos de activación.
Configuración de cuenta
Paso 1: Cómo configurar IAM
Paso 1a: Crear una política de IAM de Cloud Execution
Nota
AAC_CEFD_SA_Policy es un nombre de política de ejemplo. Puedes elegir cualquier nombre para la política, pero el nombre debe comenzar con AAC_CEFD.
Debes crear una política de IAM personalizada. Nómbrala AAC_CEFD_SA_Policy y utiliza el siguiente documento de política. Recomendamos utilizar la pestaña JSON en lugar del editor visual. Alteryx One requiere algunos permisos de * para ejecutarse. Espera algunas advertencias de seguridad cuando crees la política. Ten en cuenta que el documento de la política de IAM admite la creación de roles e incluye una política en línea para que la función Lambda asuma roles.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/*",
"Condition": {
"StringEqualsIfExists": {
"iam:PassedToService": [
"ec2.amazonaws.com",
"ec2.amazonaws.com.cn"
]
}
}
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole",
"kms:CreateGrant",
"kms:Decrypt",
"kms:DescribeKey",
"kms:Encrypt",
"kms:GetKeyPolicy",
"kms:GetKeyRotationStatus",
"kms:ListGrants",
"kms:ListResourceTags",
"kms:ListRetirableGrants",
"kms:PutKeyPolicy",
"kms:RetireGrant",
"kms:RevokeGrant",
"kms:ScheduleKeyDeletion",
"kms:TagResource",
"kms:UntagResource"
],
"Resource": [
"arn:aws:kms:*:*:key/*",
"arn:aws:iam::*:role/*"
]
},
{
"Sid": "VisualEditor2",
"Effect": "Allow",
"Action": [
"iam:GetPolicy",
"iam:GetPolicyVersion",
"iam:GetRole",
"iam:GetRolePolicy",
"iam:PutRolePolicy",
"iam:DeleteRolePolicy",
"iam:DetachRolePolicy",
"iam:AttachRolePolicy",
"iam:GetUser",
"iam:GetUserPolicy",
"iam:ListInstanceProfilesForRole",
"iam:ListPolicyTags",
"iam:ListPolicyVersions",
"iam:ListRolePolicies",
"iam:PassRole",
"iam:TagPolicy",
"iam:TagRole",
"iam:UntagPolicy",
"iam:UntagRole",
"iam:UpdateAssumeRolePolicy",
"iam:CreatePolicy",
"iam:CreatePolicyVersion",
"iam:CreateRole",
"iam:DeletePolicy",
"iam:DeletePolicyVersion",
"iam:DeleteRole",
"iam:PassRole",
"iam:PutRolePolicy",
"iam:UpdateRole"
],
"Resource": [
"arn:aws:iam::*:policy/*",
"arn:aws:iam::*:oidc-provider/*",
"arn:aws:iam::*:user/*",
"arn:aws:iam::*:role/*"
]
},
{
"Sid": "VisualEditor3",
"Effect": "Allow",
"Action": [
"autoscaling:*",
"ec2:*",
"elasticloadbalancing:*",
"iam:GetAccountName",
"iam:ListAccountAliases",
"iam:ListRoles",
"iam:CreateInstanceProfile",
"iam:DeleteInstanceProfile",
"iam:GetInstanceProfile",
"iam:TagInstanceProfile",
"iam:UntagInstanceProfile",
"iam:RemoveRoleFromInstanceProfile",
"iam:AddRoleToInstanceProfile",
"logs:CreateLogGroup",
"logs:DeleteLogGroup",
"logs:DescribeLogGroups",
"logs:ListTagsLogGroup",
"logs:PutRetentionPolicy",
"logs:TagResource",
"logs:UntagResource",
"logs:TagLogGroup",
"logs:UntagLogGroup",
"networkmanager:Describe*",
"networkmanager:Get*",
"networkmanager:List*",
"sts:GetCallerIdentity",
"logs:CreateLogStream",
"logs:DeleteLogStream",
"logs:PutLogEvents",
"lambda:GetFunction",
"lambda:GetFunctionCodeSigningConfig",
"lambda:GetPolicy",
"lambda:CreateFunction",
"lambda:DeleteFunction",
"lambda:ListVersionsByFunction",
"lambda:AddPermission",
"lambda:RemovePermission",
"lambda:UntagResource",
"lambda:UpdateFunctionConfiguration",
"lambda:UpdateFunctionCode",
"lambda:tagResource",
"events:DescribeRule",
"events:DeleteRule",
"events:PutRule",
"events:PutTargets",
"events:RemoveTargets",
"events:ListTagsForResource",
"events:ListTargetsByRule"
],
"Resource": "*"
},
{
"Sid": "VisualEditor4",
"Effect": "Allow",
"Action": "secretsmanager:*",
"Resource": "arn:aws:secretsmanager:*:*:secret:*"
}
]
}Paso 1b: Etiquetar la política de IAM
Etiqueta la política de IAM personalizada que creaste en el paso 1a.
Nombre de la etiqueta | Valor |
|---|---|
AACResource | aac_sa_custom_policy |
Paso 1c: Adjuntar la política de IAM
Adjunta la política de IAM de AAC_CEFD_SA_Policy a la cuenta de servicio aac_automation_sa creada en la página Configurar la cuenta de AWS y VPC para datos privados.
Paso 2: Configurar la subred
Nota
Si compraste Designer Cloud y EMR, configura las subredes como se menciona en Designer Cloud y EMR sin servidor en AWS. Los recursos EMR y CEfD comparten las subredes de opciones.
Cloud Execution for Desktop en un entorno de procesamiento privado de datos requiere un grupo de subredes. El grupo contiene tres subredes individuales, cada una en una zona de disponibilidad diferente.
público (obligatorio): este grupo no ejecuta ningún servicio, pero se utiliza para salir de la VPC.
privado (obligatorio): este grupo ejecuta servicios privados para el PDP.
grupo de opciones: utiliza este grupo si habilitas Cloud Execution for Desktop dentro de tu entorno de procesamiento de datos. Si habilitas esta opción, se ejecuta un enjambre AMI en esta subred para manejar los trabajos de procesamiento de Designer Desktop que se ejecutan en la nube.
Paso 2a: Crear subredes en la VPC
Configura las subredes en la VPC aac_vpc.
Crea subredes y etiquétalas como se muestra en el siguiente ejemplo. Puedes ajustar los valores de CIDR y de subredes para que se ajusten a tu arquitectura de red.
Los espacios de direcciones grandes están diseñados para adaptarse a un clúster totalmente escalado. Puedes elegir un espacio de direcciones más pequeño si es necesario, pero podrías tener problemas de escalado bajo cargas de procesamiento pesadas.
Importante
Debes etiquetar las subredes con Nombre de la etiqueta y Valor de la etiqueta como se menciona en la tabla.
CIDR | Nombre de la subred | Subred | AZ | Nombre de la etiqueta | Valor de la etiqueta |
|---|---|---|---|---|---|
10.10.0.0/21 | opción | 10.10.4.0/24 | AZa | AACSubnet | opción |
opción | 10.10.5.0/24 | AZb | AACSubnet | opción | |
opción | 10.10.6.0/24 | AZc | AACSubnet | opción |
Paso 2b: Tablas de ruta de subred
Crea la tabla de rutas para tus subredes.
Nota
Esta tabla de rutas es un ejemplo.
Nombre de la subred | Destino de la ruta | Objetivo | Comentarios |
|---|---|---|---|
público | /18 Bloque de CIDR /21 Bloque de CIDR 0.0.0.0/0 | local local <id. de puerta de enlace> | Configura las mismas rutas en las tres tablas de enrutamiento de subred AZ. |
privado | /18 Bloque de CIDR /21 Bloque de CIDR <id. del prefijo s3> 0.0.0.0/0 | local local <id. del punto de conexión de vpce> <id. de puerta de enlace> | Configura las mismas rutas en las tres tablas de enrutamiento de subred AZ. 0.0.0.0/0 debe estar saliendo a la red pública. |
opción | /21 Bloque de CIDR <id. del prefijo s3> 0.0.0.0/0 | Local <id. del punto de conexión de vpce> <id. de puerta de enlace> | Configura las mismas rutas en las tres tablas de enrutamiento de subred AZ. Básicamente, 0.0.0.0/0 debe estar saliendo a la red pública. |
Nota
Tu <id> de puerta de enlace puede ser una puerta de enlace NAT zonal creada por AZ o una puerta de enlace de tránsito, según la arquitectura de tu red. Si la puerta de enlace es NAT, crea una puerta de enlace NAT por AZ para las subredes públicas.
Procesamiento de datos privados
Atención
Cambiar o eliminar cualquier recurso de nube pública provisionado por Alteryx One después de configurar el Manejo privado de datos puede causar incoherencias. Estas incoherencias pueden provocar errores durante la ejecución de tareas o al desaprovisionar la configuración de Manejo privado de datos.
Paso 1: Activar la implementación de Cloud Execution
El aprovisionamiento del plano de datos se activa desde la consola de administrador dentro de Alteryx One. Necesitas privilegios de administrador de espacio de trabajo para poder verlo dentro de un espacio de trabajo.
En la página inicial de Alteryx One, selecciona el menú Perfil y, a continuación, selecciona Administrador de espacio de trabajo.
Desde la consola de administración, selecciona Manejo privado de datos y, a continuación, selecciona Procesamiento.
Selecciona la casilla de verificación de Cloud Execution for Desktop y, a continuación, selecciona Update.
Al seleccionar Actualizar, se activa la implementación del clúster y los recursos en la cuenta de AWS. Esto ejecuta un conjunto de comprobaciones de validación para verificar la configuración correcta de la cuenta de AWS.
Nota
El proceso de aprovisionamiento tarda aproximadamente entre 35 y 40 minutos en completarse.
Después de completar el aprovisionamiento, puedes ver los recursos creados (por ejemplo, instancias de EC2 y grupos de nodos) a través de la consola de AWS. Es muy importante que no los modifiques por tu cuenta. Los cambios manuales pueden causar problemas con la función del plano de datos privado.