Site 1 cannot connect to Site 2? error: no route to site2: dropping message - jboss

I currently have an infinispan v.9.4.8 image with modified clustered.xml code for two sites. I am building the image through docker for 2 servers. On server 1 (ie hostname1) I have site1, and on server 2 I have site2.
ie relevant clustered.xml code in server1:
...
<relay site="site1">
<remote-site name="site2" channel="xsite"/>
<property name="relay_multicasts">false</property>
</relay>
<backups>
...
<backup site="site2" failure-policy="FAIL" strategy="SYNC" enabled="true">
<take-offline min-wait="60000" after-failures="3" />
</backup>
</backups>
and relevant clustered.xml code in server2:
...
<relay site="site2">
<remote-site name="site1" channel="xsite"/>
<property name="relay_multicasts">false</property>
</relay>
<backups>
...
<backup site="site1" failure-policy="FAIL" strategy="SYNC" enabled="true">
<take-offline min-wait="60000" after-failures="3" />
</backup>
</backups>
I then run both of them and the UI seems to work fine and all until I try to click on "Manage backup site" -> "Push state", in which I get the error:
no route to site2: dropping message.
Why is it that it can't push the states? I am basing the configuration off the demo online (https://access.redhat.com/documentation/en-us/red_hat_single_sign-on/7.4/html/server_installation_and_configuration_guide/operating-mode#setup for reference)

Related

Rundeck not able connect the domain servers

I am running Rundeck 3.0.20-20190408 in Red Hat Enterprise Linux 8 and I am connecting the node using pem key.
resource.xml
<?xml version="1.0" encoding="UTF-8"?>
<project>
<node name="10.10.101.100" description="MyServer" tags="" hostname="10.10.101.100" osArch="amd64" osFamily="unix" osName="Linux" osVersion="3.10.0-693.2.2.el7.x86_64" username="rundeckuser" ssh-keypath="/home/username#domain.com/rundeckuser.pem" />
</project>
Getting below error while executing the commands
Execution failed: 3138 in project test_default: [Workflow result: ,
step failures: {1=Dispatch failed on 1 nodes: [10.10.101.100:
ConfigurationFailure: SSH Keyfile does not exist:
/home/username#domain.com/rundeckuser.pem +
{dataContext=MultiDataContextImpl(map={}, base=null)} ]}, Node
failures: {10.10.101.100=[ConfigurationFailure: SSH Keyfile does not
exist: /home/username#domain.com/rundeckuser.pem +
{dataContext=MultiDataContextImpl(map={}, base=null)} ]}, status:
failed]
ssh-keypath must be defined with a local path reachable by rundeck user (or the user that launches Rundeck if you're using a WAR based installation), like this example.
But the best approach is to use the Rundeck's key storage (adding the rundeck server public key to your target servers to access it, follow this if you like). Also, you can see the best practices here (it's using Rundeck 2.11 but is the same principle for all versions.

jBPM 6.5.0.FInal look up email in active directory

My jBPM does not read the userinfo from active directory
I used the jbpm 6.5.0.Final installer, modified the standalone-full.xml to add active directory, setup the jbpm-roles.properties, jbpm.user.info.properties, jbpm.usergroup.callback.properties files to point to active directory
I added the following lines to the standalone-full.xml system properties
<property name="jbpm.usergroup.callback.properties" value="file:../standalone/configuration/jbpm.usergroup.callback.properties"/>
<property name="jbpm.user.info.properties" value="file:../standalone/configuration/jbpm.user.info.properties"/>
<property name="org.kie.mail.session" value="java:jboss/mail/Default"/>
<property name="org.jbpm.ht.callback" value="ldap"/>
<property name="org.jbpm.ht.userinfo" value="ldap"/
I am able to login using the active directory account, then setup a process that sends a notification.
Most of the email is not sent and I get the error message
ERROR [org.jbpm.services.task.deadlines.notifications.impl.email.EmailNotificationListener] (pool-24-thread-1) Unable to send email notification due to No EMail address found for testUser
using eclipse, i can see that the registry has user and group information taken UserGroupsAssignmentsOne.mvel and no call is made to LDAPUserInfoImpl.getEmailForEntity()

Failed to download RDP file for instance abc_webrole_IN_0 in cloud service testingservicecall

Failed to download RDP file for instance servicecall_webrole_IN_0 in cloud service testingservicecall.
Details:
The supplied cscfg file can not be parsed.
Got exception Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword.
more info:
using windows azure for php mssql with zend.
ServiceConfiguration.cscfg
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true"/>
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled" value="true" />
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountUsername" value="somename" />
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword" value="MIIBnQYJKoSomeStringPassucansee" />
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountExpiration" value="2013-12-31T23:59:59.0000000-07:00" />
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteForwarder.Enabled" value="true" />
what to put in AccountEncryptedPassword ?
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword" value="MIIBnQYJKoZIhv... " />
i m using eclipse editor.
you need to rebuild / redeploy the config file with the enable remote access option and the correct cert. If you have manually pasted the encrypted password in, then you likely have a missing or extra character in the username or the password field.
The error is very clear - the config file can't be parsed because the password can't be decrypted.
Use the Visual Studio "Package" Wizard. Right click the Cloud Project >> Package:
Then click "Settings":
Choose the cert, enter a username, password and expiration date. This will set the appropriate valuse in your ServiceConfiguration file.
My experience, Just if it happens to someone else:
1) Account Expired so i went to Azure and modified the expiry date (CloudSvc/Remote Desktop)
2) Stopped working with the error posted in this thread.
3) In my case the problem was that the Azure Certificate for remote desktop expired, so you get new one with the same name CN.
4) So when i changed the expiration of the account, kept using the old certificate.
5) the reason it took me some time to find out, is that the Combo to select certificate has the same name twice:
6) when i changed to the second item with the same name, it started working.

Doesn't get the output in Java Database Connectivity

I'm working on Java Database Connectivity through Eclipse IDE. I built a database through Ubuntu Terminal, and I need to connect and work with it. However, when I just add "mysql-connector-java-5.0.8-bin.jar" to the project library, I don't get the project output, but the following output is showed, anybody knows what this is and how I can get the output from my project ?
<ConnectionProperties>
<PropertyCategory name="Connection/Authentication">
<Property name="user" required="No" default="" sortOrder="-2147483647" since="all">
The user to connect as
</Property>
<Property name="password" required="No" default="" sortOrder="-2147483646" since="all">
The password to use when connecting
</Property>
<Property name="socketFactory" required="No" default="com.mysql.jdbc.StandardSocketFactory" sortOrder="4" since="3.0.3">
The name of the class that the driver should use for creating socket connections to the server. This class must implement the interface 'com.mysql.jdbc.SocketFactory' and have public no-args constructor.
</Property>
<Property name="connectTimeout" required="No" default="0" sortOrder="9" since="3.0.1">
Timeout for socket connect (in milliseconds), with 0 being no timeout. Only works on JDK-1.4 or newer. Defaults to '0'.
</Property>
...
Run your java file which tries to connect to MySQL through JDBC as a Application.
1)Right Click on java file
2)Go on run as
3) select java application.
It solved the problem for me.
Here is the process for installing the driver. You only need to follow these steps
once.
Make a directory, inside your cs home directory, called jdbc.
Copy the following file, available from the course website, to the directory
you just made: mysql-connector-java-3.0.6-stable-bin.jar.
Open the file .bashrc in your home directory with an editor such as
emacs. (Note that files whose names begin with . are ordinarily hidden
by default, so you may need to “show hidden files” to get to .bashrc.)
Add the following two lines the file .bashrc (anywhere in the file), changing ”username” to your own username:
MYSQLDRV="mysql-connector-java-3.0.6-stable-bin.jar"
export CLASSPATH="/home/username/jdbc/$MYSQLDRV:."
Save .bashrc.
Log out and log back in again, or, alternatively, type source .bashrc at a command prompt.
One other thing. You must inform your mySQL-connecting Eclipse projects
that you would like to use this driver. Do so by right-clicking the project in
question, choosing “Build Path — Add External Archives,” then navigating to
the aforementioned driver file. You will need to do this for every such Eclipse
project.

CruiseControl.NET no connection can be made?

I am setting up CruiseControl.NET and I get the following error message on the webdashboard:
No connection could be made because the target machine actively refused it 127.0.0.1:21234
The Url it is looking for is: tcp://localhost:21234/CruiseManager.rem
However the ccnet website in IIS has its tcp port set to 82.
So I use the following Url to navigate to the webdashboard http://127.0.0.1:82/ccnet/ViewFarmReport.aspx
I tried changing the Tcp port in IIS to 21234 and I get the following error message on the webdashboard:
Tcp channel protocol violation: expecting preamble.
I have also tried opening the port with the following command:
netsh firewall add portopening TCP 21234 CCNET
When I try and start the CCNET service I get the following message
The CruiseControl.NET Server service started then stopped. Some services stop automatically if they have no work to do....
Can anyone help me with this problem please?
EDIT - Adding config file
<cruisecontrol xmlns:cb="urn:ccnet.config.builder">
<cb:define PublishDir="C:\Deploy\Portal2.0Build"/>
<project name="Portal2.0">
<workingDirectory>C:\PortalCruiseControl\Working</workingDirectory>
<artifactDirectory>C:\PortalCruiseControl\Artifacts</artifactDirectory>
<webURL>http://192.168.17.59:82/ccnet</webURL>
<triggers>
<intervalTrigger name="continuous" seconds="10"
buildCondition="IfModificationExists"/>
</triggers>
<sourcecontrol type="svn">
<trunkUrl>https://portal2003.local:8443/svn/portalv2.0/trunk</trunkUrl>
<executable>C:\Program Files (x86)\VisualSVN Server\bin\svn.exe</executable>
<username>ccnet</username>
<password>***</password>
<cleanCopy>true</cleanCopy>
</sourcecontrol>
<tasks>
<msbuild>
<executable>
C:\WINDOWS\microsoft.net\Framework64\v3.5\MSBuild.exe
</executable>
<projectFile>Portal2.0.sln</projectFile>
<buildArgs>
/target:build;publish /p:Configuration=Release /p:MSBuildExtensionsPath=C:\Progra~2\MSBuild /p:MSBuildEmitSolution=1 /p:publishdir=C:\Deploy\Portal2.0Build /verbosity:diag
</buildArgs>
<logger>
C:\Program Files (x86)\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MSBuild.dll
</logger>
</msbuild>
</tasks>
<labeller type="assemblyVersionLabeller">
<major>2</major>
<minor>0</minor>
<incrementOnFailure>false</incrementOnFailure>
</labeller>
<publishers>
<statistics />
<xmllogger />
<package>
<name>ZipFilePublish</name>
<compression>9</compression>
<always>false</always>
<flatten>false</flatten>
<baseDirectory>$(PublishDir)</baseDirectory>
<dynamicValues>
<replacementValue property="name">
<format>C:\Deploy\Builds\PortalBuild{0}.zip</format>
<parameters>
<namedValue name="$CCNetLabel" value="Default" />
</parameters>
</replacementValue>
</dynamicValues>
<files>
<file>*.*</file>
<file>**\*</file>
</files>
</package>
<email from="bla" mailhost="bla" port="25" userName="bla"
password="bla" includeDetails="TRUE" useSSL="FALSE">
<users>
<user name="User1" group="Portal" address=""/>
</users>
<groups>
<group name="Portal">
<notifications>
<notificationType>change</notificationType>
</notifications>
</group>
</groups>
</email>
</publishers>
</project>
The first error message is probably caused by CCNET service not running because of which the web dashboard can't connect to it. It should go away as soon as you fix the ccnet.config so that service starts running.
The second problem ("Ilegal characters in path"; you seem to have already figured out the missing nodes part) is caused by msbuild/executable element. It seems that CC.NET doesn't like whitespace and especially new line characters inside it's value. Replacing:
<executable>
C:\WINDOWS\microsoft.net\Framework64\v3.5\MSBuild.exe
</executable>
with:
<executable>C:\WINDOWS\microsoft.net\Framework64\v3.5\MSBuild.exe</executable>
should fix the problem.
Another hint: when you're having problems with the validity of your ccnet.config file, try using CCValidator.exe (it's in your CruiseControl.NET\server folder). It usually points out the problematic part of the config file quite nicely (although that wasn't the case with "Illegal characters in path" problem - I had to comment out specific parts of the config to find the offending node).
The first message you receive (connection actively refused) makes me think of a firewall which is blocking the port you're using.
The second problem could be anything. It could for instance be an error in your XML configuration (ccnet.config) file. Can you find any pointers in the Windows Eventlog ?
Regarding the 2nd problem: did you try to run the CC.NET server from the command line?
If you've got an error in your XML configuration, this will give you a more meaningful error message.
Which account are you using to run the Windows service?
Have you checked your ccnet's dashboard.config file?
It has the following line in it:
<server name="local" url="tcp://localhost:21234/CruiseManager.rem" ... />
Try changing the port on that to 82 and then restarting the website (you should be just able to add a space to the web.config file and save and IIS will restart the website).
Sounds like you're confusing two different functions:
tcp://localhost:21234
This is the default remoting port for clients like CCTray. This is not used for the IIS web site (dashboard).
Configuration document is likely missing Xml nodes required for properly populating CruiseControl co nfiguration. Missing Xml node (packageList) for required member (ThoughtWorks.CruiseControl.Core.Publishers.Package Publisher.PackageList)
Your example config is missing required packageList node.
A misleading error message. The port really is 21234, not 82. I got the same errors. The fix was to start ccnet.exe from the desktop shortcut to discover that the real problem was illegal code in my ccnet.config file.
After fixing the ccnet.config file, the problem moved on. When attempting to build, the system would not let the subversion client modify the read-only marker files in the checked out repo.
In my case I misprinted project configuration file name in ccnet.config instead of timescheduler.config it were timesheduler. When I fixed file name I was able to run ccnet service.
<cruisecontrol xmlns:cb="urn:ccnet.config.builder">
<cb:include href="definitions.xml" xmlns:cb="urn:ccnet.config.builder"/>
<cb:include href="projects/timescheduler.config" xmlns:cb="urn:ccnet.config.builder"/>
</cruisecontrol>