diff --git a/_modules/novang.py b/_modules/novang.py
index 791e185..dbfc297 100644
--- a/_modules/novang.py
+++ b/_modules/novang.py
@@ -561,8 +561,13 @@
         kstone = __salt__['keystoneng.auth'](profile, **kwargs)
         self.session = kstone.session
         self.version = str(kwargs.get('version', 2))
-        self.compute_conn = client.Client(version=self.version, session=self.session)
-        self.volume_conn = client.Client(version=self.version, session=self.session)
+        self.endpoint_type = str(kwargs.get('connection_endpoint_type', 'internal'))
+        self.compute_conn = client.Client(version=self.version,
+                                          session=self.session,
+                                          endpoint_type=self.endpoint_type)
+        self.volume_conn = client.Client(version=self.version,
+                                         session=self.session,
+                                         endpoint_type=self.endpoint_type)
 
     def expand_extensions(self):
         for connection in (self.compute_conn, self.volume_conn):
diff --git a/_states/novav21.py b/_states/novav21.py
index 0d8d76d..be424b7 100644
--- a/_states/novav21.py
+++ b/_states/novav21.py
@@ -197,7 +197,7 @@
             name, availability_zone_name, cloud_name=cloud_name)
         if metadata:
             _call_nova_salt_module('aggregate_set_metadata', name)(
-                cloud_name=cloud_name, **metadata)
+                name, cloud_name=cloud_name, **metadata)
             aggregate['metadata'] = metadata
         for host in hosts or []:
             _call_nova_salt_module('aggregate_add_host', name)(
@@ -209,7 +209,7 @@
         changes = {}
         existing_meta = set(aggregate['metadata'].items())
         requested_meta = set(metadata.items())
-        if hosts and (existing_meta - requested_meta or requested_meta - existing_meta):
+        if existing_meta - requested_meta or requested_meta - existing_meta:
             _call_nova_salt_module('aggregate_set_metadata', name)(
                 name, cloud_name=cloud_name, **metadata)
             changes['metadata'] = metadata
diff --git a/nova/controller.sls b/nova/controller.sls
index cf342ae..dfd33ff 100644
--- a/nova/controller.sls
+++ b/nova/controller.sls
@@ -2,6 +2,11 @@
 
 {%- if controller.get('enabled') %}
 
+{%- set nova_manage_cell_v2_discover_hosts_args = ["--verbose"] %}
+{%- if controller.version not in ["juno", "kilo", "liberty", "mitaka", "newton", "ocata"] %}
+{%- do nova_manage_cell_v2_discover_hosts_args.append("--by-service") %}
+{%- endif %}
+
 include:
   {%- if controller.version not in ["juno", "kilo", "liberty", "mitaka", "newton"] %}
   - apache
@@ -458,7 +463,7 @@
 
 nova_controller_discover_hosts:
   cmd.run:
-  - name: nova-manage cell_v2 discover_hosts --verbose --by-service
+  - name: nova-manage cell_v2 discover_hosts {{ nova_manage_cell_v2_discover_hosts_args | join(' ') }}
   {%- if grains.get('noservices') %}
   - onlyif: /bin/false
   {%- endif %}
diff --git a/nova/files/grafana_dashboards/nova_overview_prometheus.json b/nova/files/grafana_dashboards/nova_overview_prometheus.json
index fbde0bd..f6bb024 100644
--- a/nova/files/grafana_dashboards/nova_overview_prometheus.json
+++ b/nova/files/grafana_dashboards/nova_overview_prometheus.json
@@ -102,14 +102,14 @@
       "tableColumn": "",
       "targets": [
         {
-          "expr": "min(openstack_api_check_status{name=\"nova\"})",
+          "expr": "openstack_api_check_status{interface=\"public\",service_name=\"nova\"}",
           "format": "time_series",
           "intervalFactor": 2,
           "refId": "A"
         }
       ],
       "thresholds": "0.5,0.5",
-      "title": "VIP API availability",
+      "title": "Public VIP API Availability",
       "type": "singlestat",
       "valueFontSize": "80%",
       "valueMaps": [
diff --git a/nova/files/grafana_dashboards/nova_prometheus.json b/nova/files/grafana_dashboards/nova_prometheus.json
index 8ec0841..5764563 100644
--- a/nova/files/grafana_dashboards/nova_prometheus.json
+++ b/nova/files/grafana_dashboards/nova_prometheus.json
@@ -72,16 +72,15 @@
           "tableColumn": "",
           "targets": [
             {
-              "expr": "min(openstack_api_check_status{service=\"nova\"})",
+              "expr": "openstack_api_check_status{interface=\"public\",service_name=\"nova\"}",
               "format": "time_series",
               "intervalFactor": 2,
-              "legendFormat": "{{ service }}",
               "refId": "A",
               "step": 60
             }
           ],
           "thresholds": "0.5,1.5",
-          "title": "API Availability",
+          "title": "Public VIP API Availability",
           "type": "singlestat",
           "valueFontSize": "80%",
           "valueMaps": [
diff --git a/nova/files/grafana_dashboards/nova_prometheus_fluentd.json b/nova/files/grafana_dashboards/nova_prometheus_fluentd.json
index 978f951..1fd3a3a 100644
--- a/nova/files/grafana_dashboards/nova_prometheus_fluentd.json
+++ b/nova/files/grafana_dashboards/nova_prometheus_fluentd.json
@@ -72,16 +72,15 @@
           "tableColumn": "",
           "targets": [
             {
-              "expr": "min(openstack_api_check_status{service=\"nova\"})",
+              "expr": "openstack_api_check_status{interface=\"public\",service_name=\"nova\"}",
               "format": "time_series",
               "intervalFactor": 2,
-              "legendFormat": "{{ service }}",
               "refId": "A",
               "step": 60
             }
           ],
           "thresholds": "0.5,1.5",
-          "title": "API Availability",
+          "title": "Public VIP API Availability",
           "type": "singlestat",
           "valueFontSize": "80%",
           "valueMaps": [
diff --git a/nova/meta/grafana.yml b/nova/meta/grafana.yml
index 4561b11..0ed0b1a 100644
--- a/nova/meta/grafana.yml
+++ b/nova/meta/grafana.yml
@@ -159,4 +159,4 @@
               type: dashboard
             target:
               cluster_status:
-                expr: avg(openstack_api_check_status{service="nova"})
+                expr: openstack_api_check_status{interface="public",service_name="nova"}
diff --git a/nova/meta/prometheus.yml b/nova/meta/prometheus.yml
index 04d3384..7b03f29 100644
--- a/nova/meta/prometheus.yml
+++ b/nova/meta/prometheus.yml
@@ -274,26 +274,6 @@
   alert:
 {%- if is_controller %}
 {% raw %}
-    NovaApiOutage:
-      if: >-
-        max(openstack_api_check_status{name=~"nova.*|placement"}) == 0
-      labels:
-        severity: critical
-        service: nova
-      annotations:
-        summary: "Nova API outage"
-        description: >-
-          Nova API is not accessible for all available Nova endpoints in the OpenStack service catalog.
-    NovaApiDown:
-      if: >-
-        openstack_api_check_status{name=~"nova.*|placement"} == 0
-      labels:
-        severity: major
-        service: nova
-      annotations:
-        summary: "{{ $labels.name }} endpoint is not accessible"
-        description: >-
-          Nova API is not accessible for the {{ $labels.name }} endpoint.
     NovaApiEndpointDown:
       if: >-
         http_response_status{name=~"nova-api"} == 0
