cloudstack-mirror/client/tomcatconf/componentContext.xml.in
Devdeep Singh 38c72ad7f9 Changes for implicitly dedicating a resource. It includes a following:
1. A new implicit planner which extends the functionality provided by FirstFitPlanner.
2. Implicit planner can be used in either strict or preferred mode. In strict mode it tries to deploy a vm of a given account on a host on which vms of the account are already running. If no such host is found it'll search for an empty host to service the request. Otherwise the deploy vm request fails.
3. In preferred mode, if a host which is running vms of the account or an empty host isn't found, the planner then tries to deploy on any other host provided it isn't running implicitly dedicated strict vms of any other account.
4. Updated the createServiceOffering api to configure the details for the planner that the service offering is using.
5. Made db changes to store the service offering details for the planner.
6. Unit tests for testing the implicit planner functionality.
7. Marvin test for validating the functionality.
2013-05-17 11:14:25 +05:30

273 lines
9.1 KiB
XML

<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<!--
OSS deployment configuration
OSS/non-OSS counter-exclusive components and related configurations should be put here
for example, configurationDaoImpl component, it has exclusive configuration settings in OSS and non-OSS deployment,
its component declaration should be put in both componentContext.xml.in and nonossComponentContext.xml.in, each with
independent configuration
-->
<bean id="databaseUpgradeChecker" class="com.cloud.upgrade.DatabaseUpgradeChecker" />
<bean id="configurationDaoImpl" class="com.cloud.configuration.dao.ConfigurationDaoImpl" />
<bean id="GlobalLoadBalancingRulesServiceImpl" class ="org.apache.cloudstack.region.gslb.GlobalLoadBalancingRulesServiceImpl" />
<!--
Nicira support components
-->
<bean id="niciraNvpDaoImpl" class="com.cloud.network.dao.NiciraNvpDaoImpl" />
<bean id="niciraNvpNicMappingDaoImpl" class="com.cloud.network.dao.NiciraNvpNicMappingDaoImpl" />
<bean id="niciraNvpRouterMappingDaoImpl" class="com.cloud.network.dao.NiciraNvpRouterMappingDaoImpl" />
<bean id="NiciraNvpGuestNetworkGuru" class="com.cloud.network.guru.NiciraNvpGuestNetworkGuru">
<property name="name" value="NiciraNvpGuestNetworkGuru"/>
</bean>
<bean id="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement">
<property name="name" value="NiciraNvp"/>
</bean>
<!--
Midonet support components
-->
<bean id="MidoNetGuestNetworkGuru" class="com.cloud.network.guru.MidoNetGuestNetworkGuru">
<property name="name" value="MidoNetGuestNetworkGuru"/>
</bean>
<bean id="MidoNetElement" class="com.cloud.network.element.MidoNetElement">
<property name="name" value="MidoNetElement"/>
</bean>
<!--
Deployment configurations of various adapters
It determines whether or not a adapter is activated or how it is loaded in order in its managing provider,
-->
<!-- Security adapters -->
<bean id="userAuthenticators" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="SHA256SaltedUserAuthenticator"/>
<ref bean="MD5UserAuthenticator"/>
<ref bean="LDAPUserAuthenticator"/>
<ref bean="PlainTextUserAuthenticator"/>
</list>
</property>
</bean>
<bean id="userPasswordEncoders" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="SHA256SaltedUserAuthenticator"/>
<ref bean="MD5UserAuthenticator"/>
<ref bean="LDAPUserAuthenticator"/>
<ref bean="PlainTextUserAuthenticator"/>
</list>
</property>
</bean>
<bean id="securityCheckers" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="domainChecker"/>
</list>
</property>
</bean>
<!-- Resource discoverers -->
<bean id="resourceDiscoverers" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="XcpServerDiscoverer"/>
<ref bean="SecondaryStorageDiscoverer"/>
<ref bean="KvmServerDiscoverer"/>
<ref bean="LxcServerDiscoverer"/>
<!--
<ref bean="BareMetalDiscoverer"/>
-->
<ref bean="OvmDiscoverer"/>
</list>
</property>
</bean>
<!-- HA adapters -->
<bean id="haInvestigators" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="CheckOnAgentInvestigator"/>
<ref bean="XenServerInvestigator"/>
<ref bean="UserVmDomRInvestigator"/>
<ref bean="ManagementIPSystemVMInvestigator"/>
</list>
</property>
</bean>
<bean id="haFenceBuilders" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="XenServerFencer"/>
<ref bean="KVMFencer"/>
<ref bean="OvmFencer"/>
</list>
</property>
</bean>
<!-- Deployment/allocation adapters -->
<bean id="deploymentPlanners" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="FirstFitPlanner" />
<ref bean="UserDispersingPlanner" />
<ref bean="UserConcentratedPodPlanner" />
<ref bean="ImplicitDedicationPlanner" />
<!--
<ref bean="BareMetalPlanner" />
-->
</list>
</property>
</bean>
<bean id="podAllocators" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="UserConcentratedAllocator"/>
</list>
</property>
</bean>
<bean id="hostAllocators" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="FirstFitRouting"/>
</list>
</property>
</bean>
<bean id="storagePoolAllocators" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="LocalStoragePoolAllocator"/>
<ref bean="clusterScopeStoragePoolAllocator"/>
<ref bean="zoneWideStoragePoolAllocator"/>
<ref bean="garbageCollectingStoragePoolAllocator"/>
</list>
</property>
</bean>
<!-- Networking adapters -->
<bean id="ipDeployers" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="elasticLoadBalancerElement"/>
<ref bean="VirtualRouter"/>
<ref bean="VpcVirtualRouter"/>
<ref bean="NiciraNvp"/>
<ref bean="InternalLbVm"/>
</list>
</property>
</bean>
<bean id="dhcpProviders" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="VirtualRouter"/>
<ref bean="VpcVirtualRouter"/>
<!--
<ref bean="BareMetalDhcp"/>
-->
</list>
</property>
</bean>
<bean id="networkGurus" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="StorageNetworkGuru"/>
<ref bean="ExternalGuestNetworkGuru"/>
<ref bean="PublicNetworkGuru"/>
<ref bean="PodBasedNetworkGuru"/>
<ref bean="DirectPodBasedNetworkGuru"/>
<ref bean="ControlNetworkGuru"/>
<ref bean="DirectNetworkGuru"/>
<ref bean="OvsGuestNetworkGuru"/>
<ref bean="PrivateNetworkGuru"/>
<ref bean="NiciraNvpGuestNetworkGuru"/>
<ref bean="MidoNetGuestNetworkGuru"/>
</list>
</property>
</bean>
<bean id="networkElements" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="VirtualRouter"/>
<ref bean="Ovs"/>
<ref bean="SecurityGroupProvider"/>
<ref bean="VpcVirtualRouter"/>
<ref bean="NiciraNvp" />
<ref bean="MidoNetElement"/>
<ref bean="InternalLbVm"/>
<!--
<ref bean="BareMetalDhcp"/>
<ref bean="BareMetalPxe"/>
<ref bean="BareMetalUserdata"/>
-->
</list>
</property>
</bean>
<!--
AffinityGroup Processors
-->
<bean id="HostAntiAffinityProcessor" class="org.apache.cloudstack.affinity.HostAntiAffinityProcessor">
<property name="name" value="HostAntiAffinityProcessor"/>
<property name="type" value="host anti-affinity"/>
</bean>
<bean id="affinityProcessors" class="com.cloud.utils.component.AdapterList">
<property name="Adapters">
<list>
<ref bean="HostAntiAffinityProcessor" />
</list>
</property>
</bean>
</beans>