FAT A-VPLS core load-balance
Dears
I need your assistance please regarding A-VPLS core load-balance
As I understood, A-VPLS inserts a new label "Flow Label" so that this label can be used in core routers to acheive load-balancing as shown in figure 2
Now my questions
1- P router has to use port-channel so it can calculate a hash based on the flow label, correct ?
2- Also I should configure "port-channel load-balance mpls" at P router, correct ?
3- If I am correct, flow label is the 3rd label according to figure 1 and according to command reference for "port-channel load-balance label" only last 2 labels are taken into considersation !?
------------Quote----------
If you select label, these guidelines apply:
• With only one MPLS label, the last MPLS label is used.
• With two or more MPLS labels, the last two labels (up to the fifth label) are used.
---------Unquote------------
Regards,
Sherif Ismail
Hello Sherif,
I am not completely sure of the guidelines that cisco have quoted, but the document which you are referring doesnt seem to be updated to the RFC recomendations. According to the RFC 6790, the Flow label ( or the entropy label ) is no longer placed after the application label ( which is the pseudowire label in your diagram ). This is now placed after the tunnel label ( which is the ldp label or RSVP label ). There should also be an Entropy label indicator ( reserved label value of 7 ) after the tunnel label ( and before the entropy label ) to indicate that the following label is the one that will be used for load balancing.
In the initial drafts of this RFC, the egress had to infer from the BOS bit on the application label whether or not there was an entropy label
All the hashing is calculated at the ingress. The output of the hash is the entropy label. The core routers would just use the label to loadbalance the traffic.
Regards,
Shreeram
Similar Messages
-
How is load-balancing achieved in MPLS L3 vpns and equal cost multiple links exist to reach egress PE along with per-destination load-balancing enabled on interfaces.
I have tried to simulate the network below
Ingress PE--->P1--->>P2--->Egress PE
Multiple equal cost links exist between P1 and P2, cisco platform,LDP, IGP-ospf being used.Hi,
Destination based load balancing in MPLS L3VPNs can be categorized into two scenarios:
1) multiple pathes between two PE routers
2) multiple access links to a single CE or site
Your question as I understand it was about the first scenario. So let me first quickly review how customer traffic is forwarded between VRFs on two different PE routers.
The VRF routing table will have BGP entries for the routes learned from the remote PE usually with next hop addresses being the remote PE loopback IP used for PE-to-PE BGP peering.
The traffic will be forwarded across P routers using the label for the BGP next hop.
Thus the load balancing accross the MPLS core in a first step is decided by the IGP, which has to insert several equal cost pathes into the global routing table for the BGP next hop networks (PE loopbacks).
Side note: MPLS traffic engineering in the core would allow for unequal cost load balancing.
The decision, which labeled packet to send across which path in the core is done by CEF using a hash algorithm. To achieve the same load balancing as with unlabeled IP traffic, a Cisco MPLS enabled router will look for the bottom label - the one with bottom-of-stack bit set to 1 - and try to determine, if the transported packet behind the bottom label is IP. If so, the hash is calculated for the customer IP header like for normal IP traffic. This ensures all traffic for a certain customer destination will always go through the same path. No unwanted packet reordering will occur.
Be aware, that the customer IP packet header will only be used for CEF hash calculation, no IP lookup will be performed, as core routers in MPLS L3VPNs do not have any knowledge about customer addresses.
As a side note: if the traffic transported is not IP (e.g. Ethernet over MPLS), the bottom label will be used for the CEF load balancing (e.g. the VC label).
For the second scenario - CE load balancing with multihomed CE/sites - it is first required to have two equal cost entries in the VRF routing tables. The difference will be the two different PE BGP next hop addresses. The first load balancing decision is the performed by CEF based on the IP packet received by the CE and the VRF routing table entries. Once CEF decided, which VRF entry to use, the required BGP next hop label (and the VPN label) is applied and the packet is transported across the MPLS core. load balancing there is done as described above.
Hope this helps! Please rate all posts.
Regards, Martin -
MPLS/VPN network load balancing in the core
Hi,
I've an issue about cef based load-balancing in the MPLS core in MPLS/VPN environment. If you consider flow-based load balancing, the path (out interface) will be chosen based on source-destination IP address. What about in MPLS/VPN environment? The hash will be based on PE router src-dst loopback addresses, or vrf packet src-dst in P and PE router? The topology would be:
CE---PE===P===PE---CE
I'm interested in load balancing efficiency if I duplicate the link between P and PE routers.
Thank you for your help!
GaborHi,
On the PE router you could set different types and 2 levels of load-balancing.
For instance, in case of a DUAL-homed site, subnet A prefix for VPN A could be advertised in the VPN by PE1 or PE2.
PE1 receives this prefix via eBGP session from CE1 and keep this route as best due to external state.
PE2 receives this prefix via eBGP session from CE2 and keep this route as best due to external state.
eBGP
PE1 ---------CE1
PE3----------P1 Subnet A
PE2----------CE2 /
eBGP
Therefore from PE3 point of view, 2 routes are available assuming that IGP metric for PE3/PE1 is equal to PE3/PE2.
The a 1rst level of load-sharing can be achieve thanks to the maximum-paths ibgp number command.
2 MP-BGP routes are received on PE3:
PE3->PE1->CE1->subnet A
PE3->PE2->CE2->subnet A
To use both routes you must set the number at 2 at least : maximum-paths ibgp 2
But gess what, in the real world an MPLS backbone hardly garantee an equal IGP cost between 2 Egress PE for a given prefix.
So it is often necessary to ignore the IGP metric by adding the "unequal-cost" keyword: maximum-paths unequal-cost ibgp 2
By default the load-balancing is called "per-session": source and destination addresses are considered to choose the path and the outgoing interface avoiding reordering the packets on the target site. Overwise it is possible to use "per-packet" load-balancing.
Then a 2nd load-sharing level can occur.
For instance:
__P1__PE1__CE1
PE3 \/ Subnet A
\ __P2__PE2__CE2
There is still 2 MP-BGP paths :
PE3->P1->PE1->CE1->subnet A
PE3->P1->PE2->CE2->subnet A
But this time for 2 MP-BGP paths 4 IGP path are available:
PE3->P1->PE1->CE1->subnet A
PE3->P1->PE2->CE2->subnet A
PE3->P2->PE1->CE1->subnet A
PE3->P2->PE2->CE2->subnet A
For a load-balancing to be active between those 4 paths, they must exist in the routing table thanks to the "maximum-path 4 "command in the IGP (ex OSPF) process.
Therefore if those 4 paths are equal-cost IGP paths then a 2nd level load-balancing is achieved. the default behabior is the same source destination mechanism to selected the "per-session" path as mentionned before.
On an LSP each LSR could use this feature.
BR -
Hi,
We've recently inherited a job that another company was doing, so we've had our hand slightly forced on the kit and overall topology involved, however that's all fine and we can make it work.
This is a collapsed core topology with core and access switches, split over 3 blocks (fibre connections between), one core switch/stack is in block B and the other in block C, with access switches throughout.
They require all access switches to be connected to the Core in B and the Core in C, and then obviously cross connects between the two cores.
They state:
"Core switches shall be linked with 2x 1Gbps links bonded into a standard compliant Etherchannel"
"Uplinks between access and core switches shall be non-blocking - for example equal cost load balancing at layer 3, or layer 2 bonded multi-chassis Etherchannel"
The specced kit for the core are 3850's, in an ideal world I'd use VSS (Virtual Switch System) to achieve the above statements beyond repute; but this is only supported on 4500/6500 and Nexus platforms.
Do we think a cross stack etherchannel (LACP between both core switch stacks) would satisfy the above statements? Or the statements may just be badly worded...
I look forward to your thoughts and views on this! Thanks!Disclaimer
The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk.
Liability Disclaimer
In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.
Posting
As the others have noted, the 3850s, to stack, are restricted to the length of the longest stack cables.
As you have noted, VSS physical units would allow the "logical" unit to be far apart.
For a "small" VSS core, the 4500-X might be an idea unit. (Other than cost, the 4500 would be a better choice for a core device.)
Something to watch for, or understand, when running VSS, Etherchannel doesn't load balance as it does on a single chassis or stack. VSS will avoid using the VSL cross link unless it must.
As many access switches, today, support basic L3 routing, you might also determine whether a L3 edge would be a suitable alternative choice. It would allow retention of the 3850s and can offer some advantages even over VSS. (Where VSS is very nice [as too the Nexus] supporting servers with Etherchannels.) -
Load Balancing Directory Servers with Access Manager - Simple questions
Hi.
We are in the process of configuring 2 Access Manager instances (servers) accessing the same logical LDAP repository (comprising physically of two Directory Servers working together with Multi-Master Replication configured and tested) For doing this, we are following guide number 819-6258.
The guide uses BigIP load balancer for load balancing the directory servers. However, we intend to use Directory Proxy Server. Since we faced some (unresolved) issues last time that we used DPS, there are some simple questions that I would be very grateful to have answers to:
1. The guide, in section 3.2.10 (To configure Access Manager 1 with the Directory Server load balancer), talks about making changes at 4 places, and replacing the existing entry (hostname and port) with the load balancer's hostname and port (assuming that the load balancer has already been configured). It says that changes need not be made on Access Manager 2 since the LDAPs are in replication, and hence changes will be replicated at all places. However, the guide also states that changes have to be made in two files, namely AMConfig.properties, and the serverconfig.xml file. But these changes will not be reflected on Access Manager 2, since these files are local on each machine.
Question 1. Do changes have to be made in AMConfig.properties and serverconfig.xml files on the other machine hosting Access Manager 2?
Question 2: What is the purpose of putting these values here? Specifically, what is achieved by specifying the Directory server host and port in AMConfig.properties, as well as in serverconfig.xml?
Question 3. In the HTTP console, there is the option of specifying multiple primary LDAP servers, as well as multiple secondary LDAP servers. What is the purpose of these? Are secondary servers attempted when none of the list in the primary list are accessible? Also, if there are multiple entries in the primary server list, are they accessed in a round robin fashion (hereby providing rudimentary load balancing), or are other servers accessed only when the one mentioned first is not reachable etc.?
2. Since I do not have a load balancer setup yet, I tried the following deviation to the above, which, according to me, should have worked. If viewed in the HTTP console, LDAP / Membership / MSISDN and Policy configuration all pointed to the DS on host 1. When I changed all these to point to the directory server on host 2 (and made AMConfig.properties and serverconfig.xml on host 1 point to DS of host 2 as well), things should have worked fine, but apparently Access manager 1 could not be started. Error from Webserver:
[14/Aug/2006:04:30:36] info (13937): WEB0100: Loading web module in virtual server [https-machine_1_FQDN] at [search]
[14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: Exception in thread "EventService" java.lang.ExceptionInInitializerError
[14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: at com.iplanet.services.ldap.event.EventServicePolling.run(EventServicePolling.java:132)
[14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: at java.lang.Thread.run(Thread.java:595)
[14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: Caused by: java.lang.InterruptedException
[14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: at com.sun.identity.sm.ServiceManager.<clinit>(ServiceManager.java:74)
[14/Aug/2006:04:31:48] warning (13937): CORE3283: stderr: ... 2 more
In effect, AM on 1 did not start. On rolling back the changes, things again worked like previously.
Will be really grateful for any help / insight / experience on dealing with the above.
Thanks!Update to the above, incase anyone is reading:
We setup a similar setup in Windows, and it worked. Here is a detailed account of what was done:
1. Host 1: Start installer, install automatically, chose Directory server, Directory Administration server, Directory Proxy server, Web server, Access Manager.
All installed, and worked fine. (AMConfig.properties, serverconfig.xml, and the info in LDAP service, all pointed to HOST1:389)
2. Host 2: Start installer, install automatically, chose Directory server, Directory Administration server, Directory Proxy server, Web server, Access Manager.
All installed, and worked fine. (AMConfig.properties, serverconfig.xml, and the info in LDAP service, all pointed to HOST2:389)
3. Host 1: Started replication. Set to Master
4. Host 2: Started replication. Set to Master
5. Host 1: Setup replication agreement to Host 2
6. Host 2: Setup replication agreement to Host 1
7. Initiated the remote replica from Host 1 ----> Host 2
Note that since default installation uses abc.....xyz as the encryption key, setting this to same was not an issue.
9. Started webserver for Host 1 and logged into AM as amadmin.
10. Added Host 2 FQDN in DNS Aliases / Realms
11. Added http://HOST2_FQDN:80 in the Platform server (instance) list.
12. Started Host 2 webserver. Logged in AM on Host 2, things worked fine.
At this stage, note the following:
a) Host 1:
AMConfig.properties file has
com.iplanet.am.directory.host=host1_FQDN
and
com.iplanet.am.directory.port=389
serverconfig.xml has:
<Server name="Server1" host="host1_FQDN" port="389" type="SIMPLE" />
b) Host 2:
AMConfig.properties file has
com.iplanet.am.directory.host=host2_FQDN
and
com.iplanet.am.directory.port=389
serverconfig.xml has:
<Server name="Server1" host="host2_FQDN" port="389" type="SIMPLE" />
c) If one logs into AM, and checks LDAP servers for LDAP / Policy Configuration / Membership etc services, they all contain Host2_FQDN:389 (which makes sense, since replica 2 was initialized from 1)
Returning back to the configuations:
13. On Host 1, login into the Admin server console of the Directory server. Navigate to the DPS, and confgure the following:
a) Network Group
b) LDAP servers
c) Load Balancing
d) Change Group
e) Action on-bind
f) Allow all actions (permit modification / deletion etc.).
g) any other configuations required - Am willing to give detailed steps if someone needs them to help me / themselves! :)
So now, we have DPS configured and running on Host1:489, and distributing load to DS1 and DS2 on a 50:50 basis.
14. Now, log into AM on Host 1, and instead of Host1_fqdn:389 (for DS) in the following places, specify Host1_fqdn:489 (for the DPS)--
LDAP Authentication
MSISDN server
Membership Service
Policy configuation.
Verified that this propagated to the Policy Configuration service and the LDAP authentication service that are already registered with the default organization.
15. Log out of AM. Following the documentation, modify directory.host and directory.port in AMConfig.properties to point to Host 1_FQDN and 489 respectively. Make this change in AMConfig.properties of both Host 1 as well as 2.
16. Edit serverconfig.xml on both hosts, and instead of they pointing to their local directory servers, point both to host1_FQDN:489
17. When you start the webserver, it will refuse to start. Will spew errors such as:
[https-host1_FQDN]: Sun ONE Web Server 6.1SP5 B06/23/2005 17:36
[https-host1_FQDN]: info: CORE3016: daemon is running as super-user
[https-host1_FQDN]: info: CORE5076: Using [Java HotSpot(TM) Server VM, Version 1.5.0_04] from [Sun Microsystems Inc.]
[https-host1_FQDN]: info: WEB0100: Loading web module in virtual server [https-host1_FQDN] at [amserver]
[https-host1_FQDN]: warning: WEB6100: locale-charset-info is deprecated, please use parameter-encoding
[https-host1_FQDN]: info: WEB0100: Loading web module in virtual server [https-host1_FQDN] at [ampassword]
[https-host1_FQDN]: warning: WEB6100: locale-charset-info is deprecated, please use parameter-encoding
[https-host1_FQDN]: info: WEB0100: Loading web module in virtual server [https-host1_FQDN] at [amcommon]
[https-host1_FQDN]: info: WEB0100: Loading web module in virtual server [https-host1_FQDN] at [amconsole]
[https-host1_FQDN]: warning: WEB6100: locale-charset-info is deprecated, please use parameter-encoding
[https-host1_FQDN]: info: WEB0100: Loading web module in virtual server [https-host1_FQDN] at [search]
[https-host1_FQDN]: warning: CORE3283: stderr: netscape.ldap.LDAPException: error result (32); matchedDN = dc=sun,dc=com; No such object (DN changed)
[https-host1_FQDN]: warning: CORE3283: stderr: Got LDAPServiceException code=-1
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.services.ldap.DSConfigMgr.getConnection(DSConfigMgr.java:357)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.services.ldap.DSConfigMgr.getNewFailoverConnection(DSConfigMgr.java:314)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.services.ldap.DSConfigMgr.getNewConnection(DSConfigMgr.java:253)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.services.ldap.DSConfigMgr.getNewProxyConnection(DSConfigMgr.java:184)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.services.ldap.DSConfigMgr.getNewProxyConnection(DSConfigMgr.java:194)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ums.DataLayer.initLdapPool(DataLayer.java:1248)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ums.DataLayer.(DataLayer.java:190)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ums.DataLayer.getInstance(DataLayer.java:215)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ums.DataLayer.getInstance(DataLayer.java:246)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.sun.identity.sm.ldap.SMSLdapObject.initialize(SMSLdapObject.java:156)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.sun.identity.sm.ldap.SMSLdapObject.(SMSLdapObject.java:124)
[https-host1_FQDN]: warning: CORE3283: stderr: at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[https-host1_FQDN]: warning: CORE3283: stderr: at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
[https-host1_FQDN]: warning: CORE3283: stderr: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
[https-host1_FQDN]: warning: CORE3283: stderr: at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
[https-host1_FQDN]: warning: CORE3283: stderr: at java.lang.Class.newInstance0(Class.java:350)
[https-host1_FQDN]: warning: CORE3283: stderr: at java.lang.Class.newInstance(Class.java:303)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.sun.identity.sm.SMSEntry.(SMSEntry.java:216)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.sun.identity.sm.ServiceSchemaManager.(ServiceSchemaManager.java:67)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.am.util.AMClientDetector.getServiceSchemaManager(AMClientDetector.java:219)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.am.util.AMClientDetector.(AMClientDetector.java:94)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.sun.mobile.filter.AMLController.init(AMLController.java:85)
[https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262)
[https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:322)
[https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:120)
[https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3271)
[https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.StandardContext.start(StandardContext.java:3747)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ias.web.WebModule.start(WebModule.java:251)
[https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
[https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.StandardHost.start(StandardHost.java:652)
[https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
[https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:355)
[https-host1_FQDN]: warning: CORE3283: stderr: at org.apache.catalina.startup.Embedded.start(Embedded.java:995)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ias.web.WebContainer.start(WebContainer.java:431)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ias.web.WebContainer.startInstance(WebContainer.java:500)
[https-host1_FQDN]: warning: CORE3283: stderr: at com.iplanet.ias.server.J2EERunner.confPostInit(J2EERunner.java:161)
[https-host1_FQDN]: failure: WebModule[amserver]: WEB2783: Servlet /amserver threw load() exception
[https-host1_FQDN]: javax.servlet.ServletException: WEB2778: Servlet.init() for servlet LoginLogoutMapping threw exception
[https-host1_FQDN]: at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:949)
[https-host1_FQDN]: at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:813)
[https-host1_FQDN]: at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3478)
[https-host1_FQDN]: at org.apache.catalina.core.StandardContext.start(StandardContext.java:3760)
[https-host1_FQDN]: at com.iplanet.ias.web.WebModule.start(WebModule.java:251)
[https-host1_FQDN]: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
[https-host1_FQDN]: at org.apache.catalina.core.StandardHost.start(StandardHost.java:652)
[https-host1_FQDN]: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
[https-host1_FQDN]: at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:355)
[https-host1_FQDN]: at org.apache.catalina.startup.Embedded.start(Embedded.java:995)
[https-host1_FQDN]: at com.iplanet.ias.web.WebContainer.start(WebContainer.java:431)
[https-host1_FQDN]: at com.iplanet.ias.web.WebContainer.startInstance(WebContainer.java:500)
[https-host1_FQDN]: at com.iplanet.ias.server.J2EERunner.confPostInit(J2EERunner.java:161)
[https-host1_FQDN]: ----- Root Cause -----
[https-host1_FQDN]: java.lang.NullPointerException
[https-host1_FQDN]: at com.sun.identity.authentication.UI.LoginLogoutMapping.init(LoginLogoutMapping.java:71)
[https-host1_FQDN]: at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:921)
[https-host1_FQDN]: at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:813)
[https-host1_FQDN]: at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3478)
[https-host1_FQDN]: at org.apache.catalina.core.StandardContext.start(StandardContext.java:3760)
[https-host1_FQDN]: at com.iplanet.ias.web.WebModule.start(WebModule.java:251)
[https-host1_FQDN]: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
[https-host1_FQDN]: at org.apache.catalina.core.StandardHost.start(StandardHost.java:652)
[https-host1_FQDN]: at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
[https-host1_FQDN]: at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:355)
[https-host1_FQDN]: at org.apache.catalina.startup.Embedded.start(Embedded.java:995)
[https-host1_FQDN]: at com.iplanet.ias.web.WebContainer.start(WebContainer.java:431)
[https-host1_FQDN]: at com.iplanet.ias.web.WebContainer.startInstance(WebContainer.java:500)
[https-host1_FQDN]: at com.iplanet.ias.server.J2EERunner.confPostInit(J2EERunner.java:161)
[https-host1_FQDN]:
[https-host1_FQDN]: info: HTTP3072: [LS ls1] http://host1_FQDN:58080 [i]ready to accept requests
[https-host1_FQDN]: startup: server started successfully
Success!
The server https-host1_FQDN has started up.
The server infact, didn't start up (nothing even listening on 58080).
However, if AMConfig.properties is left as it originally was, and only serverconfig.xml files were changed as mentioned above, web servers started fine, and things worked all okay. (Alright, except for some glitches when viewed in /amconsole. If /amserver/console is accessed, all is good. Can this mean that all is still not well? I am not sure).
So far so good. Now comes the sad part. When the same is done on Solaris 9, things dont work. You continue to get the above error, OR the following error, and the web server will refuse to start:
Differences in Solaris and Windows are as follows:
1. Windows hosts have 1 IP and hostname. Solaris hosts have 3 IPs and hostnames (for DS, DPS, and webserver).
No other difference from an architectural perspective.
Any help / insight on why the above is not working (and why the hell does the documentation seem so sketchy / insecure / incorrect).
Thanks a bunch! -
Configuring 2 css11503s for multiple service load-balancing
first here's my present config on one of my CSS11503:
!************************** CIRCUIT **************************
circuit VLAN33
ip address 19.10.28.211 255.255.255.0
ip virtual-router 2 priority 110 preempt
ip redundant-vip 2 19.10.28.210
ip critical-service 2 UpstreamRouter
circuit VLAN200
ip address 10.15.15.251 255.255.255.0
ip virtual-router 1 priority 110 preempt
ip redundant-interface 1 10.15.15.1
ip critical-service 1 UpstreamRouter
!************************** SERVICE **************************
service BrowServ-1
ip address 10.15.15.21
redundant-index 1
protocol tcp
port 80
active
service BrowServ-2
ip address 10.15.15.22
redundant-index 2
protocol tcp
port 80
active
service UpstreamRouter
ip address 19.10.28.1
active
!*************************** OWNER ***************************
owner BrowServ_Owner
content BrowServ_Rule
add service BrowServ-1
add service BrowServ-2
vip address 19.10.28.210
redundant-index 1
active
!*************************** GROUP ***************************
group BrowServ_Group
vip address 19.10.28.210
add service BrowServ-1
add service BrowServ-2
redundant-index 1
active
here are my questions:
1) how do I configure an additional vip address? e.g. I'd like to configure a vip - 19.10.28.215 to load-balance http traffic to 10.15.15.25 and 10.15.15.26?
2) I presently have a static route in my core router "ip route 10.15.15.0 255.255.255.0 19.10.28.210". (this enables the load-balanced servers to connect to Oracle servers on the Core network). do I need to configure a new route on my core router when I add the additional vip 19.10.28.215?
relevant references and/or examples will be much appreciated.
dayo1/ configure the following :
service web1
ip address 10.15.15.25
active
service web
ip address 10.15.15.26
active
content WEB
vip address 19.10.28.215
proto tcp
port 80
add service web1
add service web2
active
2/ I would create a redundant-interface and point your static route to this redundant ip address.
you should not use vip address in static route.
VIP address should only be used when you want to reach the vip address not a when you want a direct connection to the real server.
Gilles. -
Email send issue using "Mail Server Load balancer" (Cisco ACE 20)
Please let me know if someone have experienced this kind of issue or any suggestions.
The send email action was working file in MII with smtp mail server on port 25. Recently basis did a change in mail server ip address and they installed a new Load Balancer . The Load balancer is between SMTP and MII. After this change MII does not send email (unknown source error). now MII send email action has ip address or qualified path of Load balancer in MII send email configuration instead of direct ip address of SMTP server. Below is the error message in Net Weaver logs.
MII still sends email if direct ip address of email server provided but not through email Load balancer .
Any suggestions ?
Could not authenticate mail account (Unknown Source)
[EXCEPTION]
javax.mail.AuthenticationFailedException
at javax.mail.Service.connect(Service.java:319)
at javax.mail.Service.connect(Service.java:169)
at javax.mail.Service.connect(Service.java:118)
at com.sap.xmii.storage.connections.MailConnection.sendMail(MailConnection.java:202)
at com.sap.xmii.bls.executables.actions.mail.MailActions.send(MailActions.java:223)
at sun.reflect.GeneratedMethodAccessor1412.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at com.sap.xmii.bls.engine.ReflectiveAction.doExecute(ReflectiveAction.java:747)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseAction.execute(BaseAction.java:76)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runAction(ProductionRunner.java:147)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:50)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.controls.Switch.doExecute(Switch.java:131)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:122)
at com.sap.xmii.bls.executables.controls.Repeater.doExecute(Repeater.java:113)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:64)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:59)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.RootNode.execute(RootNode.java:39)
at com.sap.xmii.bls.engine.TransactionInstance.execute(TransactionInstance.java:1001)
at com.sap.xmii.bls.engine.TransactionInstance.run(TransactionInstance.java:680)
at com.sap.xmii.bls.executables.actions.logic.LogicActions.transaction(LogicActions.java:310)
at sun.reflect.GeneratedMethodAccessor387.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at com.sap.xmii.bls.engine.ReflectiveAction.doExecute(ReflectiveAction.java:747)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseAction.execute(BaseAction.java:76)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runAction(ProductionRunner.java:147)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:50)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:59)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.controls.Conditional.doExecute(Conditional.java:151)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:64)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.RootNode.execute(RootNode.java:39)
at com.sap.xmii.bls.engine.TransactionInstance.execute(TransactionInstance.java:1001)
at com.sap.xmii.bls.engine.TransactionInstance.run(TransactionInstance.java:680)
at com.sap.xmii.bls.executables.actions.logic.LogicActions.transaction(LogicActions.java:310)
at sun.reflect.GeneratedMethodAccessor387.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at com.sap.xmii.bls.engine.ReflectiveAction.doExecute(ReflectiveAction.java:747)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseAction.execute(BaseAction.java:76)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runAction(ProductionRunner.java:147)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:50)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.controls.Conditional.doExecute(Conditional.java:151)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:122)
at com.sap.xmii.bls.executables.controls.Conditional.doExecute(Conditional.java:151)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:122)
at com.sap.xmii.bls.executables.controls.Conditional.doExecute(Conditional.java:151)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:64)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.controls.Conditional.doExecute(Conditional.java:151)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:64)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.RootNode.execute(RootNode.java:39)
at com.sap.xmii.bls.engine.TransactionInstance.execute(TransactionInstance.java:1001)
at com.sap.xmii.bls.engine.TransactionInstance.run(TransactionInstance.java:680)
at com.sap.xmii.bls.executables.actions.logic.LogicActions.transaction(LogicActions.java:310)
at sun.reflect.GeneratedMethodAccessor387.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at com.sap.xmii.bls.engine.ReflectiveAction.doExecute(ReflectiveAction.java:747)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseAction.execute(BaseAction.java:76)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runAction(ProductionRunner.java:147)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:50)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:59)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.controls.Conditional.doExecute(Conditional.java:151)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:122)
at com.sap.xmii.bls.executables.controls.Conditional.doExecute(Conditional.java:151)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:64)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.controls.Conditional.doExecute(Conditional.java:151)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:122)
at com.sap.xmii.bls.executables.controls.Conditional.doExecute(Conditional.java:158)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseControl.execute(BaseControl.java:127)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runControl(ProductionRunner.java:97)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:64)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:59)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.RootNode.execute(RootNode.java:39)
at com.sap.xmii.bls.engine.TransactionInstance.execute(TransactionInstance.java:1001)
at com.sap.xmii.bls.engine.TransactionInstance.run(TransactionInstance.java:680)
at com.sap.xmii.bls.executables.actions.logic.LogicActions.transaction(LogicActions.java:310)
at sun.reflect.GeneratedMethodAccessor387.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at com.sap.xmii.bls.engine.ReflectiveAction.doExecute(ReflectiveAction.java:747)
at com.sap.xmii.bls.engine.BaseNode.executeNode(BaseNode.java:198)
at com.sap.xmii.bls.engine.BaseAction.execute(BaseAction.java:76)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runAction(ProductionRunner.java:147)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:50)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:59)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.Sequence.execute(Sequence.java:59)
at com.sap.xmii.bls.engine.runners.ProductionRunner.runSequence(ProductionRunner.java:126)
at com.sap.xmii.bls.executables.sequences.RootNode.execute(RootNode.java:39)
at com.sap.xmii.bls.engine.TransactionInstance.execute(TransactionInstance.java:1001)
at com.sap.xmii.bls.engine.TransactionInstance.run(TransactionInstance.java:680)
at com.sap.xmii.Illuminator.connectors.Xacute.XacuteRequestHandler.processQueryRequest(XacuteRequestHandler.java:342)
at com.sap.xmii.Illuminator.connectors.Xacute.XacuteRequestHandler.QueryRequest(XacuteRequestHandler.java:135)
at com.sap.xmii.Illuminator.connectors.Xacute.XacuteConnector.doProcessRequest(XacuteConnector.java:86)
at com.sap.xmii.Illuminator.connectors.AbstractConnector.processRequest(AbstractConnector.java:83)
at com.sap.xmii.Illuminator.server.QueryEngine.run(QueryEngine.java:41)
at com.sap.xmii.Illuminator.services.handlers.IlluminatorService.processRequest(IlluminatorService.java:68)
at com.sap.xmii.Illuminator.services.ServiceManager.run(ServiceManager.java:68)
at com.sap.xmii.servlet.Illuminator.service(Illuminator.java:68)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at com.sap.xmii.servlet.ServletRunner.run(ServletRunner.java:80)
at com.sap.xmii.servlet.ServletRunner.run(ServletRunner.java:44)
at com.sap.xmii.Illuminator.gui.irpt.ReportParser.processServletRequest(ReportParser.java:610)
at com.sap.xmii.Illuminator.gui.irpt.ReportParser.parseServletTag(ReportParser.java:276)
at com.sap.xmii.Illuminator.gui.irpt.ReportParser.parseFile(ReportParser.java:154)
at com.sap.xmii.Illuminator.gui.irpt.ReportParser.parse(ReportParser.java:119)
at com.sap.xmii.servlet.ReportServlet.service(ReportServlet.java:90)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:162)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:81)
at com.sap.xmii.system.SecurityFilter.doFilter(SecurityFilter.java:96)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:73)
at com.sap.xmii.system.SecurityFilter.doFilter(SecurityFilter.java:96)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:73)
at com.sap.xsrf.filter.XSRFProtectorFilter.doFilter(XSRFProtectorFilter.java:62)
at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:73)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:468)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:298)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:399)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:388)
at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:48)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:84)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:244)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:78)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:43)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:42)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:428)
at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:247)
at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:45)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:327)
Date:
2014-03-25
Time:
14:04:06:176
Category:
com.sap.xmii.storage.connections.MailConnection
Location:
com.sap.xmii.storage.connections.MailConnection
Application:
sap.com/xapps~xmii~ear
Thread:
Thread[HTTP Worker [@629095796],5,Dedicated_Application_Thread]
Data Source:
j2ee\cluster\server0\log\defaultTrace_00.trc
Arguments:
DSR Transaction:Have a look at this thread please:
http://social.msdn.microsoft.com/Forums/sqlserver/en-US/f11f3079-b04a-4a8e-b89e-d56eb0532c42/the-mail-could-not-be-sent-to-the-recipients-because-of-the-mail-server-failure-sending-mail-using?forum=sqldatabaseengine
Saeid Hasani [sqldevelop] -
Azure Cloud Service Scaling - do I have to configure a Load Balancer?
I'm a little bit confused by how scaling in Azure works. I'm using a Cloud Service and have 2 web roles running a PHP application. I can RDP on both machines and both applications run great on each machine. Also I don't have any problems calling the staging
URL.
But I can't figure out if I configure scaling so that 2 machines run always, if I have to configure a load balancer somehow. Or is this already done for me?
In Azure VM's I had to create a load-balanced set endpoint for an endpoint, but what about cloud services?
And how is this done in the XML configuration file for my service? What if I don't do it?Hi,
Scaling is affected by core usage. Larger role instances or Virtual Machines use more cores. You can only scale an application within the limit of cores for your subscription. For example, if your subscription has a limit of twenty cores
and you run an application with two medium sized Virtual Machines (a total of four cores), you can only scale up other cloud service deployments in your subscription by sixteen cores. All Virtual Machines in an availability set that are used in scaling an
application must be the same size.
Windows Azure supports load balance for cloud services and standard websites, we just need to set instance count to more than 1 to enable load balance. For virtual machines, it needs to set up manually.
Please refer this link for Load Balance a Virtual Machine:
http://www.windowsazure.com/en-us/manage/windows/common-tasks/how-to-load-balance-virtual-machines/
for more information.
Auto scale lets you set scaling limits and scheduling goals to ensure you are always getting optimal performance
Please refer this link for Scaling on Cloud Services:
http://azure.microsoft.com/en-us/services/cloud-services/
Also, Please refer this link for Scaling an Application :
http://azure.microsoft.com/en-us/documentation/articles/cloud-services-how-to-scale/
XML configuration : Azure (Load-balanced) Endpoints can only be used for TCP/UDP based services. please check
https://techlib.barracuda.com/display/BNGv54/How+to+Configure+a+High+Availability+Cluster+in+Azure/printable for the detailed information
Hope this helps.
Regards,
Shirisha Paderu. -
Failover clustering Hyper-V + load balancing
I have successfully setup a number of Hyper-V (5) on Server 2008 R2 fail-over cluster environment with two nodes connected to a SAN using MS iSCSI Target 3.3 with cluster shared volume and all is working well.
Now each Hyper-v is run by node-A or node-B. is there a way to have both nodes process all Hyper-Vs at once?
MikeYes you are right I was not using the proper term. I have Hyper-V installed on both nodes and added the Hyper-V service in the Fail-over Clustering service. I can run the VMs on either nodes and distribute the 5 VMs but instead of selecting which node to
run each VM I would like to run all 5 VMs in one environment where both servers (nodes) can manage the processes of all 5 VMs. In other words each server have 64GB RAM and 16 core CPUs, I would like to have my 5 VMs processed by 128GBRAM and 32 core CPU. My
understanding is I am looking at Load balancing, I have seen how to do this with a web application but couldn't find anything on Load Balancing VMs.
You need to configure CSV on top of shared LUN, put your VM images there and run VMs on every host having access to LUN / CSV. See:
http://technet.microsoft.com/en-us/library/dd630633(v=ws.10).aspx
http://technet.microsoft.com/en-us/library/gg610692.aspx
Load balancing is another thing, you can use Live Migration to move VMs from one host to another (no downtime). See:
http://blogs.technet.com/b/iftekhar/archive/2010/01/18/microsoft-virtualization-hyper-v-live-migration-network-configuration.aspx
You can configure HA so one VM would re-boot on another node if primary host is down (minimal downtime). See:
http://blogs.technet.com/b/canitpro/archive/2011/04/18/creating-ha-vms-for-hyper-v-with-failover-clustering-using-free-microsoft-iscsi-target-3-3.aspx
You can configure guest VM cluster so VM would transparently failover to another host if primary one is down (no downtime). See:
http://blogs.technet.com/b/mghazai/archive/2009/12/12/hyper-v-guest-clustering-step-by-step-guide.aspx
http://blogs.technet.com/b/keithmayer/archive/2013/03/21/virtual-machine-guest-clustering-with-windows-server-2012-become-a-virtualization-expert-in-20-days-part-14-of-20.aspx#.Uss8YvRdWSo
Hope this helped :)
StarWind VSAN [Virtual SAN] clusters Hyper-V without SAS, Fibre Channel, SMB 3.0 or iSCSI, uses Ethernet to mirror internally mounted SATA disks between hosts. -
I am new to CSS. I have CSS 1150 with IOS 7.3. I want to load balancing two servers 192.168.210.55 and 192.168.210.56 on port 80.
My CSS is connected in single arm configuration. Core switch is dong the Inter VLAN routing and CSS is connected in the VLAN 200 access Port.
Servers and CSS are connected to same Layer 3 switch.
CSS is in VLAN 200 (192.168.200.10)
Servers are in VLAN 210
Below is the configuration of my CSS
================================================================================
CSS11501(config)# show run
!Generated on 04/03/2011 16:47:41
!Active version: sg0730106
configure
!*************************** GLOBAL ***************************
username net des-password xxxxxx superuser
logging subsystem flowmgr level debug-7
logging disk log.log
ip route 0.0.0.0 0.0.0.0 192.168.200.1 1
!************************* INTERFACE *************************
interface e1
phy 100Mbits-FD
bridge port-fast enable
bridge vlan 2
interface e2
bridge vlan 2
bridge port-fast enable
phy 100Mbits-FD
interface e4
bridge port-fast enable
phy 100Mbits-FD
interface e8
bridge port-fast enable
phy 100Mbits-FD
!************************** CIRCUIT **************************
circuit VLAN1
ip address 192.168.200.10 255.255.255.0
!************************** SERVICE **************************
service Citrix_Xenapp
ip address 192.168.210.55
keepalive port 80
active
service Citrix_Xenapp_2
ip address 192.168.210.56
keepalive port 80
active
!*************************** OWNER ***************************
owner ENOC_Citrix_XENAPP
content Citrix_XENAPP
add service Citrix_Xenapp
add service Citrix_Xenapp_2
vip address 192.168.200.52
protocol tcp
port 80
active
CSS11501(config)# show service
Services (3 entries):
Name: Citrix_Xenapp Index: 0
Type: Local State: Alive
Rule ( 192.168.210.55 ANY ANY )
Session Redundancy: Disabled
Redirect Domain:
Redirect String:
Keepalive: (ICMP 5 3 5 )
Last Clearing of Stats Counters: 04/03/2011 16:38:49
Mtu: 1500 State Transitions: 14
Total Local Connections: 0 Total Backup Connections: 0
Current Local Connections: 0 Current Backup Connections: 0
Total Connections: 0 Max Connections: 65534
Total Reused Conns: 0
Weight: 1 Load: 2
DFP: Disable
Name: Citrix_Xenapp_2 Index: 6
Type: Local State: Alive
Rule ( 192.168.210.56 ANY ANY )
Session Redundancy: Disabled
Redirect Domain:
Redirect String:
Keepalive: (ICMP 5 3 5 )
Last Clearing of Stats Counters: 04/03/2011 16:39:40
Mtu: 1500 State Transitions: 12
Total Local Connections: 1 Total Backup Connections: 0
Current Local Connections: 0 Current Backup Connections: 0
Total Connections: 1 Max Connections: 65534
Total Reused Conns: 0
Weight: 1 Load: 2
DFP: Disable
CSS11501(config)# sh version
Version: sg0730106 (07.30.1.06)
Flash (Locked): 07.20.2.06
Flash (Operational): 07.30.1.06
Type: PRIMARY
Licensed Cmd Set(s): Standard Feature Set
CSS11501(config)# sh run
!Generated on 04/03/2011 17:39:46
!Active version: sg0730106
configure
!*************************** GLOBAL ***************************
username net des-password xxxxx superuser
logging subsystem flowmgr level debug-7
logging disk log.log
ip route 0.0.0.0 0.0.0.0 192.168.200.1 1
!************************* INTERFACE *************************
interface e1
phy 100Mbits-FD
bridge port-fast enable
bridge vlan 2
interface e2
bridge vlan 2
bridge port-fast enable
phy 100Mbits-FD
interface e4
bridge port-fast enable
phy 100Mbits-FD
interface e8
bridge port-fast enable
phy 100Mbits-FD
!************************** CIRCUIT **************************
circuit VLAN1
ip address 192.168.200.10 255.255.255.0
!************************** SERVICE **************************
service Citrix_Xenapp
ip address 192.168.210.55
keepalive port 80
active
service Citrix_Xenapp_2
ip address 192.168.210.56
keepalive port 80
active
!*************************** OWNER ***************************
owner ENOC_Citrix_XENAPP
content Citrix_XENAPP
add service Citrix_Xenapp
add service Citrix_Xenapp_2
vip address 192.168.200.52
protocol tcp
port 80
active
CSS11501(config)# show service
Services (3 entries):
Name: Citrix_Xenapp Index: 0
Type: Local State: Alive
Rule ( 192.168.210.55 ANY ANY )
Session Redundancy: Disabled
Redirect Domain:
Redirect String:
Keepalive: (ICMP 5 3 5 )
Last Clearing of Stats Counters: 04/03/2011 16:38:49
Mtu: 1500 State Transitions: 14
Total Local Connections: 0 Total Backup Connections: 0
Current Local Connections: 0 Current Backup Connections: 0
Total Connections: 0 Max Connections: 65534
Total Reused Conns: 0
Weight: 1 Load: 2
DFP: Disable
Name: Citrix_Xenapp_2 Index: 6
Type: Local State: Alive
Rule ( 192.168.210.56 ANY ANY )
Session Redundancy: Disabled
Redirect Domain:
Redirect String:
Keepalive: (ICMP 5 3 5 )
Last Clearing of Stats Counters: 04/03/2011 16:39:40
Mtu: 1500 State Transitions: 12
Total Local Connections: 1 Total Backup Connections: 0
Current Local Connections: 0 Current Backup Connections: 0
Total Connections: 1 Max Connections: 65534
Total Reused Conns: 0
Weight: 1 Load: 2
DFP: Disable
CSS11501(config)# show content
Content Database:
Pieces of content for module: 1
Total Content: 56
CSS11501(config)# show owner
Owner Configuration:
Name: ENOC_Citrix_XENAPP
Billing Info:
Address:
Email Address:
DNS Policy: none
Case Matching: Insensitive
CSS11501(config)# show owner ?
<cr> Execute command
ENOC_Citrix_XENAPP
CSS11501(config)# show owner ENOC_Citrix_XENAPP ?
<cr> Execute command
statistics Show owner statistical information
CSS11501(config)# show owner ENOC_Citrix_XENAPP
Owner Configuration:
Name: ENOC_Citrix_XENAPP
Billing Info:
Address:
Email Address:
DNS Policy: none
Case Matching: Insensitive
CSS11501(config)# show owner ENOC_Citrix_XENAPP statistics
Owner Statistics for <ENOC_Citrix_XENAPP>:
DNS Policy: None Case Sensitivity: Off
Hits: 1 Reject Overload: 0
Bytes: 52 Reject No Services 0
Frames: 1 Drops 0
Redirects 0 NAT Translations: 0
Spoofs: 0
CSS11501(config)#
The load balaning IP is 192.168.200.52 but I cant ping this virtual IP and cant telnet on port 80 on this IP address.
CSS11501(config)# ping 192.168.205.55
Pinging 192.168.205.55 1 time(s)...
Working(-) 0/1
0% Success.
%% Ping Failure
CSS11501(config)# ping 192.168.210.55
Pinging 192.168.210.55 1 time(s)...
Working(-) 1/1
100% Success.
CSS11501(config)# ping 192.168.210.56
Pinging 192.168.210.56 1 time(s)...
Working(-) 1/1
100% Success.
CSS11501(config)# ping 192.168.210.1
Pinging 192.168.210.1 1 time(s)...
Working(-) 1/1
100% Success.
CSS11501(config)# ping 192.168.200.1
Pinging 192.168.200.1 1 time(s)...
Working(-) 1/1
100% Success.
Network connectivity is there. Please let me know what I am missing and how to solve this problem.
Thanks in advance.Thanks for the reply, But I have modified my configuration. Now I am load balancing VLAN 200 Servers where the CSS also located in the same VLAN. Attach is the updated configuration.
I can only ping the VIP but not able to telnet on VIP (192.168.200.65 80).
configure
!*************************** GLOBAL ***************************
username net des-password net@dmin superuser
no restrict web-mgmt
logging subsystem flowmgr level debug-7
logging disk log.log
ip route 0.0.0.0 0.0.0.0 192.168.200.1 1
!************************* INTERFACE *************************
interface e1
phy 100Mbits-FD
bridge port-fast enable
bridge vlan 2
interface e2
bridge vlan 2
bridge port-fast enable
phy 100Mbits-FD
interface e4
bridge port-fast enable
phy 100Mbits-FD
interface e8
bridge port-fast enable
phy 100Mbits-FD
!************************** CIRCUIT **************************
circuit VLAN1
ip address 192.168.200.10 255.255.255.0
!************************** SERVICE **************************
service Citrix_Xenapp
ip address 192.168.210.55
keepalive port 80
active
service Citrix_Xenapp_2
ip address 192.168.210.56
keepalive port 80
active
service ENOC_EFAX_1
ip address 192.168.200.66
keepalive type none
protocol tcp
port 80
active
service ENOC_EFAX_2
ip address 192.168.200.67
keepalive type none
port 80
protocol tcp
active
!*************************** OWNER ***************************
owner ENOC_Citrix_XENAPP
content Citrix_XENAPP
add service Citrix_Xenapp
add service Citrix_Xenapp_2
vip address 192.168.200.52
protocol tcp
port 80
active
owner ENOC_EFAX
content EFAX
add service ENOC_EFAX_2
add service ENOC_EFAX_1
vip address 192.168.200.65
protocol tcp
port 80
active
!*************************** GROUP ***************************
group EFAX
vip address 192.168.200.65
add service ENOC_EFAX_1
add service ENOC_EFAX_2
active
=====================
CSS11501(config)# show flow
flow-timeout Display flow-timeout values.
flows Show flow summary information
CSS11501(config)# show flow 0.0.0.0
^
%% Invalid input detected at '^' marker.
CSS11501(config)# show flows 0.0.0.0
Src Address SPort Dst Address DPort NAT Dst Address Prt InPort OutPort
192.168.80.89 4567 192.168.200.65 80 192.168.200.67 TCP e8 e8
192.168.200.67 80 192.168.80.89 4567 192.168.80.89 TCP e8 e8
192.168.80.89 2474 192.168.200.10 23 0.0.0.0 TCP e8 Ipv4
CSS11501(config)# show service
Services (5 entries):
Name: Citrix_Xenapp Index: 0
Type: Local State: Alive
Rule ( 192.168.210.55 ANY ANY )
Session Redundancy: Disabled
Redirect Domain:
Redirect String:
Keepalive: (ICMP 5 3 5 )
Last Clearing of Stats Counters: 04/04/2011 21:57:17
Mtu: 1500 State Transitions: 0
Total Local Connections: 0 Total Backup Connections: 0
Current Local Connections: 0 Current Backup Connections: 0
Total Connections: 0 Max Connections: 65534
Total Reused Conns: 0
Weight: 1 Load: 2
DFP: Disable
Name: Citrix_Xenapp_2 Index: 6
Type: Local State: Alive
Rule ( 192.168.210.56 ANY ANY )
Session Redundancy: Disabled
Redirect Domain:
Redirect String:
Keepalive: (ICMP 5 3 5 )
Last Clearing of Stats Counters: 04/04/2011 21:57:17
Mtu: 1500 State Transitions: 0
Total Local Connections: 0 Total Backup Connections: 0
Current Local Connections: 0 Current Backup Connections: 0
Total Connections: 0 Max Connections: 65534
Total Reused Conns: 0
Weight: 1 Load: 2
DFP: Disable
Name: ENOC_EFAX_1 Index: 1
Type: Local State: Alive
Rule ( 192.168.200.66 TCP 80 )
Session Redundancy: Disabled
Redirect Domain:
Redirect String:
Keepalive: (NONE 5 3 5 )
Last Clearing of Stats Counters: 04/04/2011 21:57:17
Mtu: 1500 State Transitions: 0
Total Local Connections: 1 Total Backup Connections: 0
Current Local Connections: 0 Current Backup Connections: 0
Total Connections: 1 Max Connections: 65534
Total Reused Conns: 0
Weight: 1 Load: 2
DFP: Disable
Name: ENOC_EFAX_2 Index: 2
Type: Local State: Alive
Rule ( 192.168.200.67 TCP 80 )
Session Redundancy: Disabled
Redirect Domain:
Redirect String:
Keepalive: (NONE 5 3 5 )
Last Clearing of Stats Counters: 04/04/2011 21:57:17
Mtu: 1500 State Transitions: 0
Total Local Connections: 2 Total Backup Connections: 0
Current Local Connections: 1 Current Backup Connections: 0
Total Connections: 2 Max Connections: 65534
Total Reused Conns: 0
Weight: 1 Load: 2
DFP: Disable
CSS11501(config)# show service summary
Service Name State Conn Weight Avg State
Load Transitions
Citrix_Xenapp Alive 0 1 2 0
Citrix_Xenapp_2 Alive 0 1 2 0
ENOC_EFAX_1 Alive 0 1 2 0
ENOC_EFAX_2 Alive 1 1 2 0
CSS11501(config)# show rule
Content Rules:
///\\\ The Duke of Url.
{ O--O }
[||]
>>>>>>>>
Name: EFAX Owner: ENOC_EFAX
State: Active Type: HTTP
Balance: Round Robin Failover: N/A
Persistence: Enabled Param-Bypass: Disabled
Session Redundancy: Disabled
IP Redundancy: Not Redundant
L3: 192.168.200.65
L4: TCP/80
Url:
Redirect: ""
TCP RST client if service unreachable: Disabled
Rule Services & Weights:
1: ENOC_EFAX_1-Alive, S-1
2: ENOC_EFAX_2-Alive, S-1
>>>>>>>>
Name: Citrix_XENAPP Owner: ENOC_Citrix_XENAPP
State: Active Type: HTTP
Balance: Round Robin Failover: N/A
Persistence: Enabled Param-Bypass: Disabled
Session Redundancy: Disabled
IP Redundancy: Not Redundant
L3: 192.168.200.52
L4: TCP/80
Url:
Redirect: ""
TCP RST client if service unreachable: Disabled
Rule Services & Weights:
1: Citrix_Xenapp-Alive, S-1
2: Citrix_Xenapp_2-Alive, S-1
CSS11501(config)# show content
Content Database:
Pieces of content for module: 1
Total Content: 56
CSS11501(config)# show owner
Owner Configuration:
Name: ENOC_EFAX
Billing Info:
Address:
Email Address:
DNS Policy: none
Case Matching: Insensitive
Name: ENOC_Citrix_XENAPP
Billing Info:
Address:
Email Address:
DNS Policy: none
Case Matching: Insensitive
CSS11501(config)#
Please let me know what I am missing and also one link is not working.
To configure source nat you can refer to the following:
http://www.cisco.com/en/US/partner/docs/app_ntwk_services/data_center_app_services/css11500series/v8.20/configuration/content_lb/guide/SGrp.html -
Query on Clustering,Load Balancing and Dehydration in Oracle BPEL PM
Hi,
I had a Few queries on Dehydration ,Clustering and Load Balancing:
1) In section 5.1 "Use Case for Asynchronous Web Services",insertion of a dehydration point is mentioned.What do you exactly mean by this.Can a dehydration point be inserted explicitly?OR we have to put a wait activity or something so that dehydration happens?
2) If a dehydration point needs to be inserted explicity arent we assuming that the invoke-reply will take long?But this might not be the case always.Is is a lso possible that an asynchronous process is not a long running one.
3) Can we configure administratively ,how much time the process (say 10 seconds or so)waits after which it gets dehydrated?
4) Consider a load balancing scenario,where we have 2 BPEL PM's (PM1 and PM2) running on 2 different App Servers (SRV1 and SRV2)in an clustered environment.
Scenario:
1)We have an asynchronous process which makes a call to a human task activity.
2)A request from client comes for this process.
3) The load balancing server forwards it to PM1 on SRV1.PM1 processes the request and calls the human task.
4) PM1 has not dehydrated the process.
5) The response from the Human User comes back to the Load Balancer before the process is dehydrated by PM1.It forwards this response to PM2.PM2 searches for the Process based on the Cor-relation ID and does not find it.
Can you tell me how this scenario is handled?
I would be grateful if someone can answer these queries or direct me to some place where it is already explained.
Thanks
Dileep1) In section 5.1 "Use Case for Asynchronous Web Services",insertion of a dehydration point is mentioned.What do you exactly mean by this.Can a dehydration point be inserted explicitly?OR we have to put a wait activity or something so that dehydration happens?
Insert a java snippet with "checkpoint();"
3) Can we configure administratively ,how much time the process (say 10 seconds or so)waits after which it gets dehydrated?
No, this is due to the performance of your database. -
Load-balancing of transparent cache + IP spoofing + RTSP + MMS not working
We have already in production an architecture with load-balancing of
transparent cache + ip spoofing.
We are unable to do the same for streaming flows (MMS and RTSP).
We are doing PBR from our core network (2 * C6K) to redirect port 80, 554 and
1755 toward CSS boxes, same in our access router (2* Ciso7200).
In this config desired flows are redirected toward the CSS.
Then CSS should load balance the traffic toward our BlueCoat proxy-cache farm.
It's working fine for HTTP but we are unable to make it works for MMS and
RTSP.
Note that we are requiered to use ECMP to perform IP Spoofing on the CSS, meaning we need 4 routes for each client subnet (one route toward upstream C6K, and 3 routes for each proxy cache). We use acl to get rid off looping condition.
Anyone who has already put in place Load-balancing of Streaming transparent cache + IP spoofing could give us some hint.
Many thanks.
Regards,
Pierre ViennetGilles, thanks for your input.
Here where we are at with streaming implementation:
- HTTP on all type off client is working
- RTSP: TCP 554 with Real Media client is working
- RTSP: TCP 554 with WMP not working, but it's due to a bug in Bluecoat implementation, the proxy send an error when he see a request with ( User-Agent: WMPlayer ) for RTSP content.
- MMS: TCP 1755 not working with IP spoofing enable on the proxy but OK without IP spoofing...
- UDP 554: not working
- UDP 1755: not working
I fully understand the limitation for UDP traffic.
But I don't see why it's not working for MMS over TCP traffic.
Note that I have the exact same configuration for RTSP and MMS.
Why is it not working for MMS with IP spoofing? Are you aware of a difference on the way CSS handle MMS flows? or a specificity of the MMS protocol?
Below what we can see on the different equipement when trying to launch a MMS over TCP Stream:
c6k-Faaa#sh mls ip source 195.83.182.72
Displaying Netflow entries in Supervisor Earl
DstIP SrcIP Prot:SrcPort:DstPort Src i/f:AdjPtr
Pkts Bytes Age LastSeen Attributes
202.3.225.5 195.83.182.72 tcp :1755 :1504 0 : 0
3 124 17 18:58:12 L3 - Dynamic
202.3.225.5 195.83.182.72 tcp :1755 :1527 0 : 0
2 84 3 18:58:20 L3 - Dynamic
202.3.225.5 195.83.182.72 tcp :554 :1503 0 : 0
4 360 17 18:58:06 L3 - Dynamic
c6k-Faaa#
CSS11503_CORE1# sho flows 202.3.225.5 | grep 1755
202.3.225.5 38531 195.83.182.72 1755 0.0.0.0 TCP
2/3 2/1
202.3.225.5 1527 195.83.182.72 1755 195.83.182.72 TCP
2/7 2/3
CSS11503_CORE1# sho flows 202.3.225.5 | grep 1755
202.3.225.5 38531 195.83.182.72 1755 0.0.0.0 TCP
2/3 2/1
202.3.225.5 1527 195.83.182.72 1755 195.83.182.72 TCP
2/7 2/3
CSS11503_CORE1# sho flows 202.3.225.5 | grep 1755
202.3.225.5 38531 195.83.182.72 1755 0.0.0.0 TCP
2/3 2/1
202.3.225.5 1527 195.83.182.72 1755 195.83.182.72 TCP
2/7 2/3
CSS11503_CORE1#
TCP 192.168.4.19:1491 195.83.182.72:554 TIME_WAIT
TCP 192.168.4.19:1492 195.83.182.72:554 TIME_WAIT
TCP 192.168.4.19:1493 195.83.182.72:1755 TIME_WAIT
TCP 192.168.4.19:1502 195.83.182.72:554 TIME_WAIT
TCP 192.168.4.19:1503 195.83.182.72:554 TIME_WAIT
TCP 192.168.4.19:1504 195.83.182.72:1755 TIME_WAIT
TCP 192.168.4.19:1525 195.83.182.72:554 TIME_WAIT
TCP 192.168.4.19:1526 195.83.182.72:554 TIME_WAIT
TCP 192.168.4.19:1527 195.83.182.72:1755 TIME_WAIT
Many Thanks for your input.
Pierre Viennet. -
Load balancing MQ 7.0 Foreign JMS Server and Weblogic 10 MDBs?
We have the following configuration and we are trying to troubleshoot what appears to be a load balancing issue.
We have 3 Solaris servers. Each Solaris server has two Weblogic managed servers running on it. There are a total of 6 managed servers in the Weblogic cluster.
MQ Series 7.0 is also installed on each Solaris server. The MQ queue managers are in a MQ cluster. Each queue manager has the same queues defined.
We have a foreign JMS Server configured on Weblogic that has destinations and a connection factory defined. There aren't many configuration options available for the connection factory. The destinations are bound to the queues defined on MQ using the MQ bindings file.
The MQ bindings file was generated using the TRANSPORT(BIND) mechanism. Each bindings file points to the queue manager running on that machine. So the 2 managed servers running on one machine are accepting messages from the queue manager on that machine.
The MDB's listenning for messages on the MQ queues are configured as follows in the weblogic-ejb-jar.xml:
<max-beans-in-free-pool>16</max-beans-in-free-pool>
We also created a custom work manager with min threads constraint=5 and max threads constraint=16. The dispatch-policy of all the MDBs is set to the custom work manager.
The open input count on each MQ queue managers shows up as 32 which is expected.
The default load algorithm on the cluster is round-robin.
When we run a load test (injecting 40 messages per second on one MQ queue), we notice that one managed server ends up being significantly loaded than the other. Each MQ queue manager in the MQ cluster receives approximately the same number of messages in the load test. But it seems like one managed server is preferred over the other in Weblogic.
What can be done to equally balance the load among the two managed servers on each Solaris server?
Thanks for the help.Load balancing generally applies at determing how many consumer threads has to be created on each of the clustered queue instance. In that sense you have achieved perfect load balancing as your queue instances has the same no of consumer threads.
Once you have set 'x' consumer threads on a queue, it is upto messaging provider to decide which thread to deliver a particular message and you will hardly have any control over this. Since your 32 threads are listening on the same queue, MQ can select any thread for delivering the message and the behaviour could be non deterministic.
One option to change your design is to have a dispacther mdb which picks the messages off the MQ and then routes to a weblogic distributed destination and you can have your core mdb which does all processing listen to this distributed destination. You can enable load balancing when the disaptcher mdb routes the message to the distributed destination. Since dispatcher MDB is nothing more than a router, the unbalanced consumption off the MQ shouldn't seriously affect the server. -
Load Balancing with OSPF and maximum-paths command
Hello,
Just a quick query really, we have a disribution layer 3 switch, in its routing table it has 3 default routes all with the same metric from the core router, this is because the core router is setup with the comamnd "default-information originate always metric 50" which obviously proagates the default route around the area and the metric never changes from 50.
So i have a routing table that looks like this:
O*E2 0.0.0.0/0 [110/50] via 77.95.176.9, 06:44:51, GigabitEthernet4/9
[110/50] via 77.95.176.17, 06:44:51, Vlan903
[110/50] via 91.203.72.5, 06:44:51, Vlan262
Three default routes with the same metric, does this mean that the router IOS will load balance traffic over all three routes evenly? I mean i have been reading up on it and appartemtly i dont have the command "maximum-paths 3" under my ospf process?
I have been doing some traceroutes from this switch to the internet (various sites) and all the traffic seems to be going out over the first route in the table that next hop is 77.95.176.9
My question is how can i verify that load balancing is taking place, or if its not then i need to add this "maximum-paths 3" command to the ospf on the local switch? I would say load balancing is not taking place but im sure i have seen traffic from one customer being routes over all 3 paths due to matching spikes on the SNMP sensors?
Many Thanks.
MattDisclaimer
The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk.
Liability Disclaimer
In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.
Posting
Yes, your traffic should use all three paths, as Rick notes, OSPF, on Cisco, normally defaults to using up to 4 equal cost paths.
As Rick also notes mentioning CEF, how actual traffic is forwarded across ECMP can vary. Often, the device will keep all traffic for the same flow on the same egress port, and attributes selected for actual egress port selection might be deterministic. I.e. it's possible same traffic flow will always be sent to the same egress port. (This means even with ECMP, you may not see an equal load distribution.) -
Dual ISP load balancing with 2 routers and 2 FW without using BGP
Hi all,
Based on the attachment diagram, is the design viable?
Do anyone has a similar deployment before and can you share with me the config guide to this because I'm at lost on a few configs:
1. On core switch A and B, I understood we need to have a default route pointing to the firewall interface. For this case, I have different IPs for the same context on both the firewalls.
So, how should the config be?
CoreSW_A(config)#ip route 0.0.0.0 0.0.0.0 192.168.1.110
CoreSW_A(config)#ip route 0.0.0.0 0.0.0.0 192.168.1.111
I don't think the above will work as the core switch will load balance the traffic to both firewalls even if one of the context is on standby mode?
2. The area from the firewall to the internet would all be public IP. Thus, if i put a switch in between the firewall and the router, then i would waste some public IP addresses but if i remove the switch, I would not have enough ports on the ASA firewall. What is the best recommended solution for this?
3. How do I load balance traffic to both R1 and R2 to their respective ISPs without using BGP? I may be using only a 2811 router.
Thanks alot!!.. really much looking forward for some guidance and tips on this as I havent found any guides on this deployment yet.. mostly are LAN HA.For policy based routing, I would need to create route maps on the core switch itself right?
Correct me if I'm wrong, if i use route-maps, i would be assigning e.g. internal network A to go through firewall context A and internal network B to go through firewall context B.
Context A will only have path to Router A and context B will only have path to Router B. But if router B goes down, network B won't be able to access the Internet, right?
I'm not sure whether it's a PI or PA for this as the ISP will assign us a block of IP address, for example 202.111.1.8/29 (these IPs can be used for webservers, etc). There will also be a public IP of /30 on the serial interface to connect to their router.
Thanks alot..
Maybe you are looking for
-
How to insert a bean variable into MySql using jsp
Hi, I have a problem that I have been trying to work out for ages..unsuccessfully. My web-site takes 2 inputs off a user...does a calculation on them and returns the result to the user. I want to then use another jsp page that will take this result a
-
Hi Friends, I have a table purchase_table EMP_ID NAME PUR 10 SCOTT 1000 10 SCOTT 5000 10 TIGER 2000 10 TIGER
-
ITunes on Windows gone due to crash. Switched to an iMac. Now what?
Brother-in-law lost his iTunes library due to Windoze machine dying. He switched to an iMac. Still has his iPods but no associated iTunes library with it now due to the crash (and no backup). What can he do in this situation to get his library back a
-
Do I need to plug in both usb cables on a external HD?
Hi guys, I got a Comstar 500GB 2.5" USB powered external hard drive for Christmas. It came with a USB Y Cable and my question is do I have to plug in both USB cables to see maximum performance? Or is the Y cable for computers that provide lower bus p
-
When i try to sign in I get a message cannot sign in check network connection
Can someone help me with my question