AI Conductor Terminology
변수명 | 변수 정의 | 변수 값 |
---|---|---|
AWS_ACCOUNT_ID | AWS 계정의 식별자(12자리 숫자) | |
AWS_ACCESS_KEY_ID | 관리자 권한이 있는 AWS 계정의 ACESS KEY ID | |
AWS_SECRET_ACCESS_KEY | 관리자 권한이 있는 AWS 계정의 SECRET ACESS KEY | |
AWS_DEFAULT_REGION | AWS 설치 지역 | e.g. ap-northeast-2 (Seoul) |
AWS_DEFAULT_REGION_ALIAS | AWS 설치 지역 약자 | e.g. an2 (Seoul) |
AWS_OUTPUT_FORMAT | AWS 계정 출력 선택 | json |
DOCKER_NAME | AWS Infra 설치를 위한 Docker Container 이름 | - |
DOMAIN_NAME | mellerikat 서비스를 위한 도메인 이름 | - |
INFRA_NAME | AWS Infra 이름 | - |
DEPLOY_ENV | mellerikat 개발(dev)/운영(prod) 선택 | dev 또는 prod 중 선택 |
AWS_CLUSTER_VERSION | AWS EKS 버전 | e.g. : 1.28 |
AWS_CLUSTER_VERSION_NUM | AWS EKS 버전 숫자 | `echo ${AWS_CLUSTER_VERSION} | tr -d '.' ` 예시 : 128 |
AWS_CLUSTER_VERSION_STR | AWS EKS 버전 문자열 | `echo ${AWS_CLUSTER_VERSION} | tr '.' '-' ` 예시 : 1-28 |
AWS_CLUSTER_NAME | AWS EKS 이름 | eks-an2-{INFRA_NAME}-{DEPLOY_ENV}-{AWS_CLUSTER_VERSION_STR}-eks-master |
AWS_VPC_NAME | AWS VPC 이름 | eksctl-eks-{AWS_DEFAULT_REGION_ALAIS}-{CLUSTER_NAME}-{DEPLOY_ENV}- {AWS_CLUSTER_VERSION_STR}-eks-master-cluster/VPC |
KUBEFLOW_USER_NAME | kubeflow 설치 및 운영를 위한 Kubeflow 계정 이름 | user-kubeflow-an2-{INFRA_NAME}-{DEPLOY_ENV} |
KUBEFLOW_USER_POLICY_NAME | Kubeflow 계정 정책 이름 | policy-an2-{INFRA_NAME}-{DEPLOY_ENV}-s3-rwd |
KUBEFLOW_USER_AWS_ACCESS_KEY_ID | kubeflow에서 이용할 목적으로 생성한 user의 ACCESS KEY ID | - |
KUBEFLOW_USER_AWS_SECRET_ACCESS_KEY | kubeflow에서 이용할 목적으로 생성한 user의 SECRET ACCESS KEY | - |
EBS_CSI_SA_ROLE_NAME | Amazon EBS CSI driver | role-ebs-csidriver-{CLUSTER_NAME} |
EBS_CSI_SA_ROLE_ARN | Amazon EBS CSI driver가 설치된 ARN | arn:aws:iam::{AWS_ACCOUNT_ID}:role/{EBS_CSI_SA_ROLE_NAME} |
EFS_CSI_SA_ROLE_NAME | Amazon EFS CSI driver | role-efs-csidriver-{CLUSTER_NAME} |
EFS_CSI_SA_ROLE_ARN | Amazon EFS CSI driver가 설치된 ARN | arn:aws:iam::{AWS_ACCOUNT_ID}:role/{EFS_CSI_SA_ROLE_NAME} |
DB_HOST | 생성된 DB의 Endpoint | - |
DB_PORT | 생성된 DB의 Port | 3310 |
DB_ADMIN_USERNAME | 생성된 DB의 admin 계정 | admin |
DB_ADMIN_PASSWORD | 생성된 DB의 admin 계정 비밀번호 | - |
DB_APP_USERNAME | mellerikat 에서 사용하는 DB 계정 (대문자 사용) | `echo ${INFRA_NAME}_APP | tr [:lower:] [:upper:] ` |
DB_APP_PASSWORD | mellerikat 에서 사용하는 DB 계정 비밀번호 | - |
REDIS_HOST | Redis Primary Endpoint | - |
REDIS_PORT | Redis Port | 6379 |
AWS_SECRETS_MANAGER_S3 | AWS Secrets Manager S3 이름 | /parameter/{AWS_DEFAULT_REGION}/{INFRA_NAME}/{DEPLOY_ENV}/s3 |
AWS_SECRETS_MANAGER_RDS | AWS Secrets Manager RDS 이름 | /parameter/{AWS_DEFAULT_REGION}/{INFRA_NAME}/{DEPLOY_ENV}/rds |
KUBEFLOW_VERSION | Kubeflow Version | e.g. : 1.8 |
KUBEFLOW_RELEASE_VERSION | Kubeflow Release Version | e.g. : v1.8-branch |
KUBEFLOW_VERSION_NUM | Kubeflow Version 숫자 | ` echo ${AWS_CLUSTER_VERSION} | tr -d '.' `e.g. : 18 |
KUBEFLOW_INSTALL_VERSION | Kubeflow install version based on EKS | kf{ KUBEFLOW_VERSION_NUM }-eks{AWS_CLUSTER_VERSION_NUM} e.g. : kf18-eks128 |
KUBEFLOW_KATIB_IMAGE | Kubeflow katib image URI | {AWS_ACCOUNT_ID}.dkr.ecr.{AWS_DEFAULT_REGION}.amazonaws.com/ ecr-repo-{AWS_DEFAULT_REGION_ALIAS}-{INFRA_NAME}-{DEPLOY_ENV}/kubeflowkatib/katib-db-manager |
KUBEFLOW_OIDC_IMAGE | Kubeflow OIDC image URI | {AWS_ACCOUNT_ID}.dkr.ecr.{AWS_DEFAULT_REGION}.amazonaws.com/ ecr-repo-{AWS_DEFAULT_REGION_ALIAS}-{INFRA_NAME}-{DEPLOY_ENV}/oidc-authservice |
KUBEFLOW_API_SERVER_IMAGE | Kubeflow API Server image URI | {AWS_ACCOUNT_ID}.dkr.ecr.{AWS_DEFAULT_REGION}.amazonaws.com/ ecr-repo-{AWS_DEFAULT_REGION_ALIAS}-{INFRA_NAME}-{DEPLOY_ENV}/ml-pipeline/api-server |
KUBEFLOW_CACHE_SERVER_IMAGE | Kubeflow Cache Server image URI | {AWS_ACCOUNT_ID}.dkr.ecr.{AWS_DEFAULT_REGION}.amazonaws.com/ ecr-repo-{AWS_DEFAULT_REGION_ALIAS}-{INFRA_NAME}-{DEPLOY_ENV}/ml-pipeline/cache-server |
KUBEFLOW_MANIFEST_GIT_URL | Kubeflow 설치 Manifest git URL | https://github.com/mellerikat/kubeflow-on-aws-manifests.git |
PROJECT_NAME | 프로젝트 이름 | - |
WORKSPACE_NAME | 프로젝트 작업 공간 이름 | {PROJECT_NAME}-ws |
WORKSPACE_ID | 생성된 Workspace 의 ID | uuid format |
PROJECT_DASHBOARD_HASH | Monitoring Dashboard 에서 Workspace 구분 값 | Monitoring Dashboard 추가 참고 e.g. : adz19cb14fkzka |
PROJECT_KUBEFLOW_NAMESPACE_NAME | Workspace와 매칭되는 Kubeflow Namespace 이름 | aic-ns-{WORKSPACE_NAME} |
PROJECT_KUBEFLOW_USER_NAME | Workspace와 매칭되는 Kubeflow Namespace 접속 계정 | aic-user-{WORKSPACE_NAME} |
PROJECT_KUBEFLOW_USER_UNIQUE_ID | Kubeflow Namespace 접속 계정의 Unique Number | $(echo date +"%Y%m%d%H%M%S") |
PROJECT_KUBEFLOW_USER_PASSWD | Workspace와 매칭되는 Kubeflow Namespace 접속 비밀번호 | bcrypt-generator에서 aic@com 으로 hash 생성 특수문자 인식을 위해 {PROJECT_KUBEFLOW_USER_PASSWD}='' 사용 |
PROJECT_S3_BUCKET_NAME | Project에서 사용할 S3 Bucket 이름 | s3-{AWS_DEFAULT_REGION_ALIAS}-{INFRA_NAME}-{DEPLOY_ENV}-{PROJECT_NAME} |
PROJECT_NODEGROUP_SPEC | 사용자의 편의를 위해 Model 학습에 필요한 Nodegroup을 6개로 제한 - low, standard, high 는 CPU/MEM 의 EC2 스펙을 포함한 Nodegroup 입니다. - low-gpu, standard-gpu, high-gpu 는 CPU/MEM/GPU 의 EC2 스펙을 포함한 Nodegroup 입니다. | low, standard, high low-gpu, standard-gpu, high-gpu |
PROJECT_NODEGROUP_LABEL | Nodegroup Label | {PROJECT_NAME}-ws-{PROJECT_NODEGROUP_SPEC} |
PROJECT_NODEGROUP_NAME | Project에서 사용할 Nodegroup 이름 | ng-{AWS_DEFAULT_REGION_ALIAS}-aicond-{PROJECT_NAME}-ws-{PROJECT_NODEGROUP_SPEC} |
PROJECT_NODEGROUP_DESIRED_SIZE | Nodegroup desired size | Nodegroup desired size >= 0 |
PROJECT_NODEGROUP_MIN | Nodegroup min size | 0 |
PROJECT_NODEGROUP_MAX | Nodegroup max size | > PROJECT_NODEGROUP_MIN && > PROJECT_NODEGROUP_DESIRED_SIZE |
PROJECT_NODEGROUP_EC2_NAME | Nodegroup EC2 Instance Size | e.g. m5.large |
PROJECT_NODEGROUP_EC2_VCPU | Nodegroup EC2 Instance Size vCPU | - |
PROJECT_NODEGROUP_EC2_MEM | Nodegroup EC2 Instance Size Memory(GiB) | - |
PROJECT_NODEGROUP_EC2_GPU | Nodegroup EC2 Instance Size GPUs | - |
AIC_RELEASE_VERSION | AI Conductor 배포 버전 | e.g. 1.9.1 |
AIC_FRONTEND_URL | AI Conductor Frontend URL | aicond-{DOMAIN_NAME} |
AIC_BACKEND_URL | AI Conductor Backend URL | aicond-{DOMAIN_NAME}/api/v1/docs |
AIC_KUBEFLOW_URL | AI Conductor Kubeflow URL | aicond-kf-{DOMAIN_NAME} |
AIC_BACKEND_IMAGE_URL | AI Conductor Backend Image URL | {AWS_ACCOUNT_ID}.dkr.ecr.{AWS_DEFAULT_REGION}.amazonaws.com/ ecr-repo-{AWS_DEFAULT_REGION_ALIAS}-{INFRA_NAME}-{DEPLOY_ENV}/ai-advisor/ai-conductor/aic-webserver |
AIC_BACKEND_IMAGE_TAG | AI Conductor Backend Image TAG | - |
AIC_FRONTEND_IMAGE_URL | AI Conductor Backend Image URL | {AWS_ACCOUNT_ID}.dkr.ecr.{AWS_DEFAULT_REGION}.amazonaws.com/ ecr-repo-{AWS_DEFAULT_REGION_ALIAS}-{INFRA_NAME}-{DEPLOY_ENV}/ai-advisor/ai-conductor/aic-frontend |
AIC_FRONTEND_IMAGE_TAG | AI Conductor Frontend Image TAG | - |
AIC_ADMIN_USER | AI Conductor 의 관리자 계정 또는 ADMIN 권한 계정 이름 | admin, ... |
AIC_ADMIN_PASSWD | AI Conductor 의 관리자 계정 또는 ADMIN 권한 계정 비밀번호 | - |
AIC_ADMIN_PASSWD_ENCRYPT | AI Conductor 의 관리자 계정 또는 ADMIN 권한 계정 비밀번호 Encrypt | {AIC_ADMIN_PASSWD} 의 Encrypt 특수문자 인식을 위해 {AIC_ADMIN_PASSWD_ENCRYPT}='' 사용 |
AIC_ADMIN_COMPANY | AI Conductor 의 관리자 회사 | - |
AIC_ADMIN_DEPARTMENT | AI Conductor 의 관리자 부서 | - |
AIC_ECR_BASE_PATH | mellerikat 에서 공용 사용을 위한 ECR 기본 경로 | {AWS_ACCOUNT_ID}.dkr.ecr.{AWS_DEFAULT_REGION}.amazonaws.com/ ecr-repo-{AWS_DEFAULT_REGION_ALIAS}-{INFRA_NAME}-{DEPLOY_ENV}/ |
AIC_ACCOUNT_NAME | AI Conductor 의 사용자 계정 ID | - |
AIC_ACCOUNT_PASSWD | AI Conductor 의 사용자 계정 비밀번호 | - |
AIC_ACCOUNT_TYPE | AI Conductor의 사용자 계정 구분 | ADMIN or DEVELOPER |
AIC_ACCOUNT_ROLE | AI Conductor의 사용자 계정 역할 | ADMIN or MANAGER or MEMBER |
AIC_MLOPS_ENGINE | MLOps 엔진 구분 | kubeflow or sagemaker |
DASHBOARD_PREFIX | 모니터링 도구의 URL | aicond-mon.{DOMAIN_NAME}.com/d/ |