Hi,
unfortunately I have made a wrong assumption in my last mail:
" In admin managed databases/services I could set a preferred node, and the
service would always return to this node, as soon as it is available again."
Thats simply wrong, even with a preferred node set, the admin managed service
will NOT jump back:
from the 2-day RAC Guide: If a service fails over to an available instance,
then the service is not moved back to its preferred instance automatically.
However, you can automate the relocation of a service to its preferred instance
by using a callout. For more information about callouts, see "About FAN
Callouts". An example callout script for relocating services back to their
preferred instances is available on Oracle Technology Network at:
http://www.oracle.com/technetwork/database/enterprise-edition/twpracwkldmgmt-132994.pdf
(Thanks Troy for the hint and the link!)
My newly found "solution" for admin managed databases is simpler, though
unsupported, and works like a charm:
<use at your own risk>
srvctl add service -db mydb -service myservice -preferred mynode1 -available
mynode2
crsctl modify res ora.mydb.myservice.svc -attr
"PLACEMENT=favored,ACTIVE_PLACEMENT=1,CHECK_INTERVAL=1,RELOCATE_KIND=offline,SERVER_POOLS=*,HOSTING_MEMBERS=mynode1"
-unsupported
</use at your own risk>
I love CRS - it can do more than Oracle wants. :)
--
Martin Klier | Performing Databases GmbH
Managing Partner | Senior DB Consultant
Oracle ACE
martin.klier@xxxxxxxxxxxxxxxxx | http://www.performing-databases.com ;
Von: "Martin Klier - Performing Databases GmbH"
<martin.klier@xxxxxxxxxxxxxxxxx>
An: oracle-l@xxxxxxxxxxxxx
Gesendet: Donnerstag, 11. Mai 2017 12:13:09
Betreff: RAC 12.2 - singleton service balancing
Hi listers,
we have the need to run 12cR2 database services as singleton services on a RAC
(that's a hard fact, please take that as given).
According to the documentation, a singleton service will not return to its
original location, when a node stops/restarts. That means in a 2-node-RAC,
that
booting a node will concentrate all load on one server, and I have to
redistribute them manually again after we have the second node online again.
In admin managed databases/services I could set a preferred node, and the
service would always return to this node, as soon as it is available again. In
12.2 with a policy managed database, I can't have an admin managed service for
this DB. I can even understand why, but what I am missing now is an option to
rubber-wire a DB service to a node / instance.
The logic of server pools also prevents me from having a node joining a pool
only if the second node is away, at least as far as I came with my tests.
I appreciate any idea, as long as I don't have to start the same service name
on
more than one node at the same time.
Thank you very much in advance!
--
Martin Klier | Performing Databases GmbH
Managing Partner | Senior DB Consultant
Oracle ACE
martin.klier@xxxxxxxxxxxxxxxxx | http://www.performing-databases.com