diff --git a/diskimage_builder/elements/cloud-init-datasources/install.d/05-set-cloud-init-sources b/diskimage_builder/elements/cloud-init-datasources/install.d/05-set-cloud-init-sources
index 0d833c7f0..b0995365d 100755
--- a/diskimage_builder/elements/cloud-init-datasources/install.d/05-set-cloud-init-sources
+++ b/diskimage_builder/elements/cloud-init-datasources/install.d/05-set-cloud-init-sources
@@ -24,6 +24,19 @@ EOF
     else
         cat > /etc/cloud/cloud.cfg.d/91-dib-cloud-init-datasources.cfg <<EOF
 datasource_list: [  $DIB_CLOUD_INIT_DATASOURCES, None ]
+EOF
+    fi
+    # Newer cloud-init versions complain by default when they should
+    # use the Ec2 datasource on a non-AWS cloud.  If the Ec2
+    # datasource is desired, we need to tell cloud-init that we really
+    # want this.  Otherwise there will be ugly warnings or worse.
+    #
+    if [[ $DIB_CLOUD_INIT_DATASOURCES =~ Ec2 ]]; then
+        cat > /etc/cloud/cloud.cfg.d/92-ec2-datasource.cfg <<EOF
+#cloud-config
+datasource:
+    Ec2:
+        strict_id: false
 EOF
     fi
 fi