A method comprising: obtaining, by a management device, a policy that includes high-level configuration data defining a service to be deployed within a network, the high-level configuration data including resource selector criteria that identifies one or more criteria for selecting a resource to support the service from a plurality of potential resources; obtaining state data identifying a status of each of the plurality of potential resources, wherein the state data is selected from a plurality of different types of state data based on the resource selector criteria, wherein the state data identifies one or more resource metrics that are defined using an extensible set of commands, and a corresponding one or more weights, and wherein the resource metrics identify an operational state of a corresponding resource of the plurality of potential resources; determining, by the management device and based on application of the resource selector criteria to the state data, the resource to support the service from the plurality of potential resources, wherein determining the resource comprises: applying the one or more weights to the corresponding one of the resource metrics to obtain one or more corresponding resource loads; and determining, based on application of the resources selector criteria to the resource loads, the resource to support the service from the plurality of potential resources; translating, by the management device, the high-level configuration data to low-level configuration data specific to the determined resource; and configuring, by the management device and when provisioning the service in the network, the determined resource using the low-level configuration data specific to the determined resource. obtaining, by a management device, a policy that includes high-level configuration data defining a service to be deployed within a network, the high-level configuration data including resource selector criteria that identifies one or more criteria for selecting a resource to support the service from a plurality of potential resources; obtaining state data identifying a status of each of the plurality of potential resources, wherein the state data is selected from a plurality of different types of state data based on the resource selector criteria, wherein the state data identifies one or more resource metrics that are defined using an extensible set of commands, and a corresponding one or more weights, and wherein the resource metrics identify an operational state of a corresponding resource of the plurality of potential resources; determining, by the management device and based on application of the resource selector criteria to the state data, the resource to support the service from the plurality of potential resources, wherein determining the resource comprises: applying the one or more weights to the corresponding one of the resource metrics to obtain one or more corresponding resource loads; and determining, based on application of the resources selector criteria to the resource loads, the resource to support the service from the plurality of potential resources; applying the one or more weights to the corresponding one of the resource metrics to obtain one or more corresponding resource loads; and determining, based on application of the resources selector criteria to the resource loads, the resource to support the service from the plurality of potential resources; translating, by the management device, the high-level configuration data to low-level configuration data specific to the determined resource; and configuring, by the management device and when provisioning the service in the network, the determined resource using the low-level configuration data specific to the determined resource.