Study guide
7.3 Model Governance with SageMaker Model Registry
AWS Certified Machine Learning Engineer — Associate MLA-C01
Track your progress as you read
Finished sections get a check mark.
1 Chapter 1: Introduction & Exam Strategy
1.1 AWS MLA-C01 Blueprint, Format & Strategy 1.2 The Machine Learning Engineering Lifecycle on AWS
2 Domain 1: Data Ingestion & Storage Architecture for ML
2.1 Ingesting Batch and Streaming Data for ML 2.2 High-Performance Storage for Training and Inference 2.3 Data Cataloging, Governance, and Querying
3 Domain 1: Feature Engineering & Data Transformation
3.1 Distributed Feature Engineering with AWS Glue & DataBrew 3.2 Interactive Data Preparation with SageMaker Data Wrangler 3.3 Feature Management with SageMaker Feature Store
4 Domain 1: Data Quality, Integrity & Ground Truth Labeling
4.1 Data Validation, Schema Drift, and Quality Rules 4.2 Handling Missing Values, Outliers & Class Imbalance 4.3 Data Labeling with SageMaker Ground Truth & Ground Truth Plus
5 Domain 2: Model Selection & Framework Architecture
5.1 SageMaker Built-in Algorithms & Selection Criteria 5.2 Custom Models with Script Mode and BYOC 5.3 Foundation Models, JumpStart, and Amazon Bedrock
6 Domain 2: SageMaker Model Training & Hyperparameter Optimization
6.1 SageMaker Training Jobs & Cost Optimization 6.2 Distributed Training Strategies & Architectures 6.3 Hyperparameter Optimization with Automatic Model Tuning (AMT)
7 Domain 2: Model Evaluation, Tracking & Model Registry
7.1 ML Evaluation Metrics & Validation Strategies 7.2 Experiment Tracking with SageMaker Experiments 7.3 Model Governance with SageMaker Model Registry
8 Domain 3: SageMaker Inference Options & Endpoint Architecture
8.1 Real-Time, Serverless, and Asynchronous Inference 8.2 High-Throughput Offline Inference with Batch Transform 8.3 Multi-Model Endpoints (MME) & Multi-Container Endpoints (MCE)
9 Domain 3: Deployment Strategies & Infrastructure Scaling
9.1 Production Deployment Patterns & Traffic Shifting 9.2 Endpoint Auto-Scaling & Hardware Acceleration
10 Domain 3: MLOps Pipelines & Workflow Orchestration
10.1 SageMaker Pipelines Core Architecture 10.2 Advanced Pipeline Patterns & Integration 10.3 End-to-End MLOps CI/CD & Automated Retraining
11 Domain 4: Production Model Monitoring with SageMaker Model Monitor
11.1 Data Quality & Model Quality Monitoring 11.2 Model Bias & Model Explainability Drift 11.3 Operational Observability with Amazon CloudWatch
12 Domain 4: Responsible AI, Bias Detection & Governance
12.1 Pre-Training and Post-Training Bias with SageMaker Clarify 12.2 Model Documentation & Auditing with Model Cards & Dashboard 12.3 Safety, Guardrails & Generative AI Governance
13 Domain 4: ML Security, Network Isolation & Cost Optimization
13.1 IAM Roles and Least Privilege for ML 13.2 Network Isolation, VPC Endpoints & Data Encryption 13.3 ML Cost Optimization & Resource Governance
7.3 Model Governance with SageMaker Model Registry
Key Takeaways Explain This Topic AI
SageMaker Model Registry acts as a centralized model catalog organized into Model Package Groups (business use case) housing versioned, immutable Model Packages.
Model Packages store complete deployment metadata: inference container ECR image, model weight S3 URI, performance metrics JSON, baseline drift constraints, and associated SageMaker Model Cards.
Model approval lifecycle transitions through PendingManualApproval , Approved , and Rejected , preventing unverified models from reaching production environments.
Amazon EventBridge natively captures SageMaker Model Package State Change events, enabling automated event-driven CI/CD pipelines (AWS CodePipeline, Step Functions) upon model approval.
Cross-account model governance allows a central governance/shared services account to catalog models while development accounts register them and production accounts deploy them via IAM role trust, S3 bucket policies, and cross-account KMS key grants.
Last updated: August 2026
Model Governance with SageMaker Model Registry
In enterprise machine learning systems, training a high-performing model is only halfway to production. Organizations must enforce strict governance: models must be cataloged, versioned, evaluated against baseline quality gates, audited for regulatory compliance, and approved by authorized stakeholders before automated deployment to staging and production environments.
Amazon SageMaker Model Registry provides a centralized metadata store and governance layer for managing the lifecycle of machine learning models across AWS accounts. It integrates natively with SageMaker Pipelines , Amazon EventBridge , AWS CodePipeline , and SageMaker Model Cards to create automated, auditable MLOps release gates.
1. SageMaker Model Registry Architecture
The Model Registry organizes models into a versioned catalog structure. +-----------------------------------------------------------------------------------------+
- | SAGEMAKER MODEL REGISTRY ARCHITECTURE |
- | |
- | +---------------------------------------------------------------------------------+ |
- | | MODEL PACKAGE GROUP: 'fraud-detection-production' | |
- | | (Description, Group ARN, Resource Access Policy, Tags) | |
- | +---------------------------------------------------------------------------------+ |
- | | | |
- | v v |
- | +------------------------------------+ +------------------------------------+ |
- | | MODEL PACKAGE VERSION 1: | | MODEL PACKAGE VERSION 2: | |
- | | - S3 Model: s3://.../v1/model.tar | | - S3 Model: s3://.../v2/model.tar | |
- | | - Container: 123.dkr.ecr/xgb:1.5 | | - Container: 123.dkr.ecr/xgb:1.7 | |
- | | - Metrics: PR-AUC = 0.912 | | - Metrics: PR-AUC = 0.948 | |
- | | - Baseline: constraints.json | | - Baseline: constraints.json | |
- | | - Status: APPROVED | | - Status: PENDING MANUAL APPROVAL | |
- | | - Model Card: MC-Fraud-v1 | | - Model Card: MC-Fraud-v2 | |
- | +------------------------------------+ +------------------------------------+ |
- +-----------------------------------------------------------------------------------------+
Key Architectural Entities:
Model Package Group ( ModelPackageGroup ):
A named collection of model versions created for a specific business problem or use case (e.g., credit-risk-scoring or customer-churn-xgboost ).
Defines the top-level boundary for IAM resource-based access policies and tagging.
Model Package ( ModelPackage ):
An individual, immutable, versioned model record within a group (e.g., Version 1 , Version 2 ).
Contains all metadata required for production inference and monitoring:
Inference Image URI: ECR repository path for the serving container.
Model Artifact URI: Amazon S3 path to the serialized model weights ( model.tar.gz ).
Evaluation Metrics: JSON metrics payload containing validation scores (e.g., accuracy, precision, recall, PR-AUC, RMSE).
Drift Baselines: Baseline statistics and constraints files ( statistics.json , constraints.json ) for data quality, model quality, model bias, and model explainability used by SageMaker Model Monitor .
Model Approval Status: Current lifecycle state ( PendingManualApproval , Approved , Rejected ).
Associated SageMaker Model Card: Comprehensive compliance document detailing intended use, training parameters, risk assessment, and ethical considerations.
2. Model Registration & Approval Lifecycle Workflows
Models can be registered into the Model Registry programmatically via the SageMaker Python SDK, as an automated step in a SageMaker Pipeline , or via the AWS CLI / Boto3. +-----------------------------------------------------------------------------------------+
- | MODEL APPROVAL LIFECYCLE WORKFLOW |
- | |
- | [Training / Pipeline Finishes] |
- | | |
- | v |
- | [Register Model Package] |
- | - Status: PendingManualApproval (Default) |
- | | |
- | +-------------------------------------------------------+ |
- | | | |
- | v v |
- | [HUMAN / AUTOMATED REVIEW] [HUMAN / AUTOMATED REVIEW] |
- | - Metrics meet SLA (PR-AUC > 0.93) - Metrics fail SLA |
- | - Model Card complete - Bias detected |
- | | | |
- | v v |
- | [Status -> APPROVED] [Status -> REJECTED] |
- | | | |
- | v v |
- | (Triggers EventBridge Deploy Rule) (Alert Sent; No Deployment) |
- +-----------------------------------------------------------------------------------------+
- Registering a Model from a SageMaker Pipeline
In SageMaker Pipelines, use the RegisterModel step to register a candidate model package automatically upon completion of training and evaluation: from sagemaker.workflow.model_step import ModelStep
- from sagemaker.model import Model
- from sagemaker.model_metrics import ModelMetrics, MetricsSource
- # Define evaluation metrics payload
- model_metrics = ModelMetrics(
- model_statistics=MetricsSource(
- s3_uri='s3://ml-artifacts-bucket/eval/evaluation_metrics.json',
- content_type='application/json'
- )
- )
- # Create Model instance
- model = Model(
- image_uri='683313688378.dkr.ecr.us-east-1.amazonaws.com/sagemaker-xgboost:1.7-1',
- model_data='s3://ml-artifacts-bucket/models/model.tar.gz',
- sagemaker_session=session,
- role=role
- )
- # Define RegisterModel Step in Pipeline
- register_step = ModelStep(
- name='RegisterFraudModel',
- step_args=model.register(
- content_types=['text/csv'],
- response_types=['text/csv'],
- inference_instances=['ml.m5.xlarge', 'ml.c5.xlarge'],
- transform_instances=['ml.m5.xlarge'],
- model_package_group_name='fraud-detection-production',
- approval_status='PendingManualApproval', # Always default to Pending
- model_metrics=model_metrics
- )
- )
- Updating Model Approval Status via Boto3
Once a Lead Data Scientist or Risk Officer verifies model metrics and compliance in SageMaker Studio, the status is updated to Approved : import boto3
sm_client = boto3.client('sagemaker')
- response = sm_client.update_model_package(
- ModelPackageArn='arn:aws:sagemaker:us-east-1:123456789012:model-package/fraud-detection-production/2',
- ModelApprovalStatus='Approved',
- ApprovalDescription='Approved by Lead ML Engineer after validating PR-AUC of 0.948 and zero bias drift.'
- )
- 3. Event-Driven CI/CD Deployment with Amazon EventBridge
Manually provisioning infrastructure after approving a model violates MLOps automation principles. SageMaker Model Registry emits state change events directly to Amazon EventBridge , enabling automated zero-touch CI/CD pipelines. +-----------------------------------------------------------------------------------------+
- | EVENTBRIDGE-DRIVEN MODEL DEPLOYMENT FLOW |
- | |
- | 1. Approver updates status: ModelPackage -> 'Approved' |
- | | |
- | v |
- | 2. SageMaker emits EventBridge Event: 'SageMaker Model Package State Change' |
- | | |
- | v |
- | 3. EventBridge Rule Filters: |
- | - ModelPackageGroupName == 'fraud-detection-production' |
- | - ModelApprovalStatus == 'Approved' |
- | | |
- | +-----------------------------------+ |
- | | | |
- | v v |
- | 4. Trigger AWS CodePipeline / Step Functions Notify Slack / SNS Topic |
- | - Deploy to Staging Endpoint ('Model v2 Approved & Deploying') |
- | - Run Automated Load & Integration Tests |
- | - Execute Blue/Green Production Rollout |
- +-----------------------------------------------------------------------------------------+
- EventBridge Rule Pattern Configuration
- To capture approved model events, create an EventBridge rule with the following event pattern: {
- "source": ["aws.sagemaker"],
- "detail-type": ["SageMaker Model Package State Change"],
- "detail": {
- "ModelPackageGroupName": ["fraud-detection-production"],
- "ModelApprovalStatus": ["Approved"]
- }
- }
When this event triggers, EventBridge initiates an AWS CodePipeline pipeline or AWS Step Functions state machine that creates a SageMaker Model, updates the Staging endpoint configuration, conducts validation tests, and shifts production traffic safely using Blue/Green deployments.
4. Multi-Account Enterprise Model Governance
Enterprise architectures segregate environments into separate AWS accounts for security and regulatory compliance: Development/Data Science Account , Central Shared Services / Governance Account , and Production Deployment Account . +-----------------------------------------------------------------------------------------+
- | CROSS-ACCOUNT MODEL REGISTRY ARCHITECTURE |
- | |
- | +--------------------------+ +-------------------------------------------+ |
- | | DATA SCIENCE / DEV ACCT | | CENTRAL GOVERNANCE / SHARED ACCT | |
- | | - Feature Engineering | | (Account ID: 111111111111) | |
- | | - Model Training Jobs | | | |
- | | - Model Evaluation | | +---------------------------------------+ | |
- | | | | | CENTRAL SAGEMAKER MODEL REGISTRY | | |
- | | Registers Model -------->|--------->| | - ModelPackageGroup: fraud-models | | |
- | | Artifacts & Metrics | | +---------------------------------------+ | |
- | +--------------------------+ +-------------------------------------------+ |
- | | |
- | | Approved Model Package |
- | v |
- | +-------------------------------------------+ |
- | | PRODUCTION ACCOUNT (Account: 222222222222)| |
- | | | |
- | | - Pulls Approved Model Package Metadata | |
- | | - Reads model.tar.gz from S3 via KMS Key | |
- | | - Deploys High-Availability Real-Time | |
- | | SageMaker Endpoints | |
- | +-------------------------------------------+ |
- +-----------------------------------------------------------------------------------------+
Cross-Account IAM & S3 Bucket Policy Requirements:
To allow the Production account to deploy models cataloged in the Central Registry account:
Model Registry Resource Policy: Attach a resource policy to the ModelPackageGroup in the Central Governance account granting sagemaker:DescribeModelPackage , sagemaker:ListModelPackages , and sagemaker:CreateModel to the Production account's IAM execution role.
Amazon S3 Bucket Policy: Grant s3:GetObject and s3:ListBucket on the artifact bucket in the Central/Dev account to the Production account role.
AWS KMS Key Policy: Model artifacts stored in S3 must be encrypted with a customer-managed KMS key (CMK). The KMS key policy must grant kms:Decrypt and kms:DescribeKey permissions to the Production account's IAM role.
Amazon ECR Repository Policy: Grant the Production account permissions to pull serving Docker container images ( ecr:BatchGetImage , ecr:GetDownloadUrlForLayer ).