cancel
Showing results for 
Search instead for 
Did you mean: 

login

tanislavm
Level 6

Hi,

If an group will failover enough fast then the users not need to relogin to use the application.right?

Only if the failover takes long time,the users should relogin.

 

 

On parallel service group there is no floating IP.right.

The chain is like:user->application->oraclerac.But between application and ORAC there is an software balancer.right?So some transactions that come from the application go through an oracle instance and other transactions go through other oracle instance from ORAC.right?

So if an box with an orac instance fails,the transactions go through the other box.

 

 

 

 

thanks so much.

7 ACCEPTED SOLUTIONS

Accepted Solutions

Gaurav_S
Moderator
Moderator
   VIP    Certified

If an group will failover enough fast then the users not need to relogin to use the application.right?

Only if the failover takes long time,the users should relogin.

>>> Incorrect, if application is a failover application & configured in cluster, application will be completely offline before it is onlined on second node so users may need to relogin. Time is not a factor here.As application will be offline & online again, session termination is likely to happen.

 

On parallel service group there is no floating IP.right.

>>> Correct,parallel service groups will have individual IPs, for e.g oracle RAC database will have IPs for listener on each node where for database to connect to parallel instances.

The chain is like:user->application->oraclerac.But between application and ORAC there is an software balancer.right?So some transactions that come from the application go through an oracle instance and other transactions go through other oracle instance from ORAC.right?

>>> Correct, RAC will take care of load balancing between two instances

So if an box with an orac instance fails,the transactions go through the other box.

>>> Ideally yes, if I remember correctly, you need to configure TAF (transparent application failover) in TNS to enable seamless movement, otherwise users may need to reattempt connection

 

G

View solution in original post

mikebounds
Level 6
Partner Accredited

These all depends on the application - below are some scenarios for an application where you are entering some data , when a service group fails over 

  1. The application client has held data you were entering locally and reconnects when the group fails over and the failover is seamless to the client.
     
  2. The application looses the data you were entering, but reconnects when the group fails over so you don't have to reconnect, but have to reenter the data
     
  3. You have to reconnect and have to reenter the data

The above results may vary depending on how long it takes to failover, compared with the timeouts used in the application - i.e if the application has a timeout of 3 mins to reconnect if it looses connection, then obviously VCS need to failover group in less than 3 mins (including detection time).  Also it may depend on what the application is doing - if the group fails over just as application client sends data that has being inputted, then the application client code MAY resend data if "send" doesn't work or it may not.

So it all depends on how the application is coded and configured and the same is true of Oracle RAC - it depends on how you configure the client.

Mike

View solution in original post

mikebounds
Level 6
Partner Accredited

This is more an Oracle question than VCS - my understanding is most of the configuation is done in the oracle client (i.e the client load balanced) - I know of at least 3 methods (but I am not an Oracle DB expert so this maybe incorrect):

  1. Oracle client is configured with one IP, so needs IP to failover on server before it can access Oracle RAC on second node
     
  2. Oracle client is configured with 2 IPs so that when it looses connection to first node, it tries the next IP in its configuration to connect to 2nd node (I would guess the Oracle client can also be configured to send transactions round robin between the 2 IPs)
     
  3. Oracle client is configured with 2 IPs and uses TAF PRECONNECT and sends transaction to BOTH nodes - the primary instance and backup instance, and only the primary instance applies the transaction, but if the primary dies, then the back instance has the transaction, so no transactions are lost (I believe in the other 2 scenarios that Oracle RAC as to roll back any uncompleted transactions).

As I say, I know Symantec products, not Oracle, so above may be wrong.

Mike

View solution in original post

Gaurav_S
Moderator
Moderator
   VIP    Certified

Some sample configurations can be found here, this should clear your doubt on dependency

https://sort.symantec.com/public/documents/sfha/6.1/solaris/productguides/html/vcs_oracle_agent/apbs01.htm

so for every parallel instance i need an software balancer.right?

>> Please read through previous response provided, Once you install RAC, load balance feature will come automatically, its not that you need to install something separtely on each node

 

G

View solution in original post

Gaurav_S
Moderator
Moderator
   VIP    Certified

Also look at

https://sort.symantec.com/public/documents/sfha/6.1/solaris/productguides/html/vcs_oracle_agent/apbs02.htm

This depicts graphical representation of dependency


G

View solution in original post

mikebounds
Level 6
Partner Accredited

Just to clarify:

Your application client will communicate through a virtual IP to an application process on the server and this process will have associated memory about the connection state, so when the application process fails over to another system, the application process is now a different process available on the same virtual IP and it will most likely not have the same in-memory state about the connection, so the application client needs to have the logic to:

  1. Wait for the process to become available again (while VCS fails it over)
  2. Reconnect to the NEW process

Note this is not the same as if your application client lost access due to network outage, as in this scenario, it would need to do step 1 above "Wait for the process to become available again" while network recovers, but it would probably not need to do 2, as the process still exists (unless the application server process timed out and dropped connection).

Mike

View solution in original post

mikebounds
Level 6
Partner Accredited

As before it depends on what the client and application are, how they are configured and in some instances how long the failover time is.  i.e in for some clients and applications it won't matter how quick the failover is, the client will need to reconnect, but for other applications the client and/or application server component will have timeouts so the failover time matters.

Mike

View solution in original post

16 REPLIES 16

RiaanBadenhorst
Moderator
Moderator
Partner    VIP    Accredited Certified

Hi,

 

Oracle handles the connection to the databases and the failover of the clients if there is a connections issue.

 

http://www.oracle.com/technetwork/database/options/clustering/overview/scan-129069.pdf

Gaurav_S
Moderator
Moderator
   VIP    Certified

If an group will failover enough fast then the users not need to relogin to use the application.right?

Only if the failover takes long time,the users should relogin.

>>> Incorrect, if application is a failover application & configured in cluster, application will be completely offline before it is onlined on second node so users may need to relogin. Time is not a factor here.As application will be offline & online again, session termination is likely to happen.

 

On parallel service group there is no floating IP.right.

>>> Correct,parallel service groups will have individual IPs, for e.g oracle RAC database will have IPs for listener on each node where for database to connect to parallel instances.

The chain is like:user->application->oraclerac.But between application and ORAC there is an software balancer.right?So some transactions that come from the application go through an oracle instance and other transactions go through other oracle instance from ORAC.right?

>>> Correct, RAC will take care of load balancing between two instances

So if an box with an orac instance fails,the transactions go through the other box.

>>> Ideally yes, if I remember correctly, you need to configure TAF (transparent application failover) in TNS to enable seamless movement, otherwise users may need to reattempt connection

 

G

tanislavm
Level 6

hi,

so the session will be terminated on one node of failover scenarion,and this means that all the network connetions to that group on this node will gone.

 

 

RAC will take care of load balancing between two instances.-So the load balancer will be on the box with every orac instance?In this case if we have 2 boxes with 2 instances (orac),there will be 1 load balancer in an box and other one in other box?To me this sound strange,because load balancer should runs on a box between aplication box and the 2 boxes with orac.

 

 

 

thanks so much.

mikebounds
Level 6
Partner Accredited

These all depends on the application - below are some scenarios for an application where you are entering some data , when a service group fails over 

  1. The application client has held data you were entering locally and reconnects when the group fails over and the failover is seamless to the client.
     
  2. The application looses the data you were entering, but reconnects when the group fails over so you don't have to reconnect, but have to reenter the data
     
  3. You have to reconnect and have to reenter the data

The above results may vary depending on how long it takes to failover, compared with the timeouts used in the application - i.e if the application has a timeout of 3 mins to reconnect if it looses connection, then obviously VCS need to failover group in less than 3 mins (including detection time).  Also it may depend on what the application is doing - if the group fails over just as application client sends data that has being inputted, then the application client code MAY resend data if "send" doesn't work or it may not.

So it all depends on how the application is coded and configured and the same is true of Oracle RAC - it depends on how you configure the client.

Mike

Gaurav_S
Moderator
Moderator
   VIP    Certified

we are not talking about a physical load balancer, rather this is a capability of Oracle RAC software  itself to balance connections.

G

tanislavm
Level 6

Hi,

In this case then i like to understand the path from user(client computer) to orac.

client->application->listener->orac software load balancer->IP of oracle instance.right?

so the first time an database is accessed the listener take the query,but next the client queries go directly to the IP instance.right?

 

 

so for every parallel instance i need an software balancer.right?

 

 

 

is there any command to veify from client that an oracle instance works?

mikebounds
Level 6
Partner Accredited

This is more an Oracle question than VCS - my understanding is most of the configuation is done in the oracle client (i.e the client load balanced) - I know of at least 3 methods (but I am not an Oracle DB expert so this maybe incorrect):

  1. Oracle client is configured with one IP, so needs IP to failover on server before it can access Oracle RAC on second node
     
  2. Oracle client is configured with 2 IPs so that when it looses connection to first node, it tries the next IP in its configuration to connect to 2nd node (I would guess the Oracle client can also be configured to send transactions round robin between the 2 IPs)
     
  3. Oracle client is configured with 2 IPs and uses TAF PRECONNECT and sends transaction to BOTH nodes - the primary instance and backup instance, and only the primary instance applies the transaction, but if the primary dies, then the back instance has the transaction, so no transactions are lost (I believe in the other 2 scenarios that Oracle RAC as to roll back any uncompleted transactions).

As I say, I know Symantec products, not Oracle, so above may be wrong.

Mike

Gaurav_S
Moderator
Moderator
   VIP    Certified

Some sample configurations can be found here, this should clear your doubt on dependency

https://sort.symantec.com/public/documents/sfha/6.1/solaris/productguides/html/vcs_oracle_agent/apbs01.htm

so for every parallel instance i need an software balancer.right?

>> Please read through previous response provided, Once you install RAC, load balance feature will come automatically, its not that you need to install something separtely on each node

 

G

Gaurav_S
Moderator
Moderator
   VIP    Certified

Also look at

https://sort.symantec.com/public/documents/sfha/6.1/solaris/productguides/html/vcs_oracle_agent/apbs02.htm

This depicts graphical representation of dependency


G

tanislavm
Level 6

Hi Gaurav,

I asked my first question about login again when an group failover,as Mike written,that there on the cliend side the channel with application is still open for a certain period of the time,so maybe there will not be the need to login again after the group failover to other node if the time of failover is short enough,so the channels open on client are still open.

 

 

Please what is your opinion?Still the same?

 

 

thanks so much. 

tanislavm
Level 6

also the listener takes the transaction requests and send them to the database processes using the IP of this database instance?

RiaanBadenhorst
Moderator
Moderator
Partner    VIP    Accredited Certified

Hi,

 

Your questions really relate to Oracle, not SFRAC. Maybe you should check with DBA about these topics as you seem new to them :)

tanislavm
Level 6

Hi,

No problem but my last question remains.

 

 

 

Hi Gaurav,

I asked my first question about login again when an group failover,as Mike written,that there on the cliend side the channel with application is still open for a certain period of the time,so maybe there will not be the need to login again after the group failover to other node if the time of failover is short enough,so the channels open on client are still open.

 

 

Please what is your opinion?Still the same?

 

 

thanks so much. 

mikebounds
Level 6
Partner Accredited

Just to clarify:

Your application client will communicate through a virtual IP to an application process on the server and this process will have associated memory about the connection state, so when the application process fails over to another system, the application process is now a different process available on the same virtual IP and it will most likely not have the same in-memory state about the connection, so the application client needs to have the logic to:

  1. Wait for the process to become available again (while VCS fails it over)
  2. Reconnect to the NEW process

Note this is not the same as if your application client lost access due to network outage, as in this scenario, it would need to do step 1 above "Wait for the process to become available again" while network recovers, but it would probably not need to do 2, as the process still exists (unless the application server process timed out and dropped connection).

Mike

tanislavm
Level 6

Hi Mike,

Of course what you written here is correct,but my query is "should the client to login again if the failover time is very short,so the channel in client is still open?

mikebounds
Level 6
Partner Accredited

As before it depends on what the client and application are, how they are configured and in some instances how long the failover time is.  i.e in for some clients and applications it won't matter how quick the failover is, the client will need to reconnect, but for other applications the client and/or application server component will have timeouts so the failover time matters.

Mike