code: def add_cluster_interface_on_master_engine(self, interface_id, macaddress,
              nodes, zone_ref=None, vlan_id=None, comment=None):
          
          _interface = {'interface_id': interface_id, 'macaddress': macaddress,
              'interfaces': [{'nodes': nodes if nodes else [], 'vlan_id': vlan_id}],
              'zone_ref': zone_ref, 'comment': comment}
          
          try:
              interface = self._engine.interface.get(interface_id)
              vlan = interface.vlan_interface.get(vlan_id)
              # Interface exists, so we need to update but check if VLAN already exists
              if vlan is None:
                  interface._add_interface(**_interface)
                  interface.update()
                  
          except InterfaceNotFound:
              interface = Layer3PhysicalInterface(**_interface)
              return self._engine.add_interface(interface)
docs: Add a cluster address specific to a master engine. Master engine
          clusters will not use "CVI" interfaces like normal layer 3 FW clusters,
          instead each node has a unique address and share a common macaddress.
          Adding multiple addresses to an interface is not supported with this
          method.
  
          :param str,int interface_id: interface id to use
          :param str macaddress: mac address to use on interface
          :param list nodes: interface node list
          :param bool is_mgmt: is this a management interface
          :param zone_ref: zone to use, by name, str href or Zone
          :param vlan_id: optional VLAN id if this should be a VLAN interface
          :raises EngineCommandFailed: failure creating interface
          :return: None