Copy link to clipboard
Copied
Hi,
So, I have two server: msrvwin2016 and msrvwin2016-02.
I have 2 instances on each (cfusion and msrvwin2016instance1 / msrvwin201602instance1).
I created a cluster on the cfusion instance on msrvwin2016 with msrvwin2016instance1 and the remote instance msrvwin201602instance1
When i try to link IIS and CF with this cluster selected, i have an error "An unknown error has occured".
I don't have this issue with the first release of CF2018, but since the "Update 2", it doesn't work. I don't find any logs where there is more detailed informations
Weirdly, it works when I select one instance and not the cluster in the Web Server Configuration Tool
and when I select the cluster and there is no Remote Instance in the cluster.
So the problem seems to be the remote instance, but the configuration looks ok and it worked before Update 2.
Does any one had the same problem or knows what to do?
Thanks,
Guillaume
Few screenshots:
When making the configuration with a cluster:
Remote Instance configuration:
EDIT:
I did the test again:
On CF2018, with no update.
1) I create my remote instance
2) I create my cluster
3) I add my local and remote instance to the cluster
4) I launch the "Web Server Configuration Tools", I select my cluster and my website, and it works
On CF2018, Update 1:
1) I install the update
2) I launch the "Web Server Configuration Tools" and delete the configuration from before
3) I add again the connection between my cluster and my website, and it works
On CF2018, Update 2:
1) I install the update
2) I launch the "Web Server Configuration Tools" and delete the configuration from before
3) I add again the connection between my cluster and my website, and it fails wih the "An unknown error has occured". It creates the folder in wsconfig with only the isapi_redirect.dll, it also create the virtual directories in IIS (cf_scripts and jakarta).
But there'sno logs in coldfusion, wsconfig, event viewer...nothing.
So i'm lost...
I've made a zip files with my configurations and screenshots, if somebody has time...
https://drive.google.com/file/d/1pglrTAn6eBPK-ibJuXf1svF5wCSvPm1e/view?usp=sharing
Thanks
Hi Chalie,
Thanks again for the time you took to look at my problem, i appreciate it.
I've talked to Adobe support and the issue was that i didn't filled the "PMT Shared secret key" when creating the remote instance which is required since update 2 (even if the field is not marked as mandatory)
Now, it's working fine !
Copy link to clipboard
Copied
This not some known issue I'm aware of. So let's start with you saying, "when I select the cluster and there is no Remote Instance in the cluster". Are you saying you HAVE used the feature in instance manager to add a remote instance? Is it there? And when you edit the cluster, can you see it as available?
And either way when you say it worked before update 2, do you mean this very machine had the instances and cluster before? And that all you did was update cf, and now things "don't work"?
That wouldn't make sense really, as the update mechanism does not affecr cluatering. (Of course, if you have multiple instances on a machine and run the cf update from the cfusion instance, it should ask to update the instances also.)
Let's take it from your responses to this.
Copy link to clipboard
Copied
Hi Charlie, thanks for you answer.
Yes, I added a remote instance, I see it and I can add it to my cluster.
It worked before Update 2 with the exact same servers, instances and same cluster. I updated CF, and if I remove the link between IIS and CF (i don't know the official name) and I try to recreate it, it fails with the "An unknown error occured". If i uninstall the update, I can create it without problem.
And as i said, it fails only if there is a remote instance in my cluster...
Copy link to clipboard
Copied
I can think of a few reasons why this might happen. First, though, I'd recommend that you not use the default cfusion instance for anything other than creating new instances, if you plan to run multiple instances in the first place. When you're not creating new instances, you can turn off the default cfusion instance. This is because it's used as a template for any new instances you create, and things can get kind of weird as a result.
OK, with that out of the way, there could be some sort of TCP communication error or blockage between the two machines. That could be a Windows Firewall issue (assuming you're using Windows) or a Linux iptables issue (or whatever iptables is called now). That seems kind of unlikely, but it is possible.
Another potential cause is that the connector versions might be different, and that this difference is breaking something. This seems more likely to me. You'll have to verify that you're using the latest connectors for your CF version on each box.
Finally, each box will need to have the same basic file structure if I recall correctly (I could be wrong about this, it's been a while since I've needed to use CF's clustering ability thanks to AWS). That is, if you have c:/inetpub/wwwroot/index.cfm on one box, you'd have to have it on the other box as well. I don't know if that would prevent the clustering from even being set up in the first place or not, though.
Dave Watts, Eidolon LLC
Copy link to clipboard
Copied
Hi Dave,
Thanks for your answer.
I don't think it's a firewall issue as it fails only when the update 2 or more is installed.
The connector should be updated during the installation of the update, no? If no, how can i check that the version is up to date?
I'll try to do more tests and provide you with more exemples.
Copy link to clipboard
Copied
It might be a problem with connections between the clusters. If so, then you should find clues in the log files, C:\ColdFusion2018\config\wsconfig\[MAGIC_NUMBER]\isapi_redirect.log.
Perhaps also in C:\ColdFusion2018\[INSTANCE_NAME]\logs\coldfusion-error.log
Copy link to clipboard
Copied
In the meantime, verify the following for each server:
1) Compare - for the all instances - the files C:\ColdFusion2018\[INSTANCE_NAME]\runtime\conf\server.xml. In particular, two instances may not share the same port numbers.
2) Compare, for each instance, the AJP connector settings in C:\ColdFusion2018\[INSTANCE_NAME]\runtime\conf\server.xml with those in C:\ColdFusion2018\config\wsconfig\[MAGIC_NUMBER_OF_INSTANCE]\worker.properties. Do the settings match for each instance? Remember that timeout is in milliseconds in server.xml (default 60000), in seconds in worker.properties (default 60).
3) The setting in C:\Coldfusion2018\config\wsconfig\wsconfig.properties look like this:
1=IIS,3,true,myCFInstance1,"",bitness64
1.srv=localhost,myCFInstance1
2=IIS,4,true,myCFInstance2,"",bitness64
2.srv=localhost,myCFInstance2
Here, 3 and 4 are the respective IIS IDs for the instances. Verify this as follows:
Open the IIS manager.
In turn, right-click on a site, select Manage Website , then Advanced Settings. Read off the ID and compare with the value in the wsconfig.properties file.
Copy link to clipboard
Copied
Hi, thanks for your answer.
So, first, i don't have the isapi_redirect.log, it doesn't reach this step. And there nothing in coldfusion_error.log when I do the connection.
I confirm that the ports number corresponds to what is in the server.xml file
The worker.properties is not createdm there's just isapi_redirect.dll in my ColdFusion2018\config\wsconfig\[MAGIC_NUMBER_OF_INSTANCE] folder.
I did the test again:
On CF2018, with no update.
1) I create my remote instance
2) I create my cluster
3) I add my local and remote instance to the cluster
4) I launch the "Web Server Configuration Tools", I select my cluster and my website, and it works
On CF2018, Update 1:
1) I install the update
2) I launch the "Web Server Configuration Tools" and delete the configuration from before
3) I add again the connection between my cluster and my website, and it works
On CF2018, Update 2:
1) I install the update
2) I launch the "Web Server Configuration Tools" and delete the configuration from before
3) I add again the connection between my cluster and my website, and it fails wih the "An unknown error has occured". It creates the folder in wsconfig with only the isapi_redirect.dll, it also create the virtual directories in IIS (cf_scripts and jakarta).
But there'sno logs in coldfusion, wsconfig, event viewer...nothing.
So i'm lost...
I've made a zip files with my configurations and screenshots, if somebody has time...
https://drive.google.com/file/d/1pglrTAn6eBPK-ibJuXf1svF5wCSvPm1e/view?usp=sharing
Thanks
Copy link to clipboard
Copied
You indicate stopping at update 2. I realize you're telling us that's where you have an error, but can you confirm that if you go to update 4 (required before you can go further, if using the CF Admin UI to do the update), and then on to update 10 (from last month), and you THEN try the wsconfig step, does it STILL fail?
If it does, and you would rather have some direct (remote) help with trying to sort things out, that may be far more expedient than a lot of back and forth here. That said, I realize some don't feel they should have to pay for help with seeming bugs, or they can't pay for any help. I will say that I offer this sort of help, as do others, which I list at cf411.com/cftrouble. I also offer a satisfaction guarantee, so you won't pay for any time you don't find valuable.
And Dave and BKBK, would you want to be added to that list?
Copy link to clipboard
Copied
Yes, it still fails with Update 10 unfortunalely.
Thanks for your recommandation, i'll check that.
Copy link to clipboard
Copied
1) You may, for the time being, ignore the warning about AJP/1.3 and HTTP/1.1. They are irrelevant to this problem.
2) You get an error when you run the Web Server Configuration Tool. Which is an indication that one or more of your initial settings is incorrect.
3)When I downloaded your files, I saw that the two instances share the same port numbers in server.xml. That's not right. Each such port number should be unique to each instance.
Copy link to clipboard
Copied
The information from the server.xml files:
Coldfusion2018-NoUpdate
====================
instance = cfusion
<Server port="8013" shutdown="SHUTDOWN">
<Connector port="8500" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8451" />
<Connector port="8018" packetSize="65535" protocol="AJP/1.3" redirectPort="8451" tomcatAuthentication="false" maxThreads="500" connectionTimeout="60000"/>
instance = server1
<Server port="8007" shutdown="SHUTDOWN">
<Connector protocol="HTTP/1.1" port="8501" redirectPort="8445" connectionTimeout="20000"/>
<Connector protocol="AJP/1.3" port="8012" redirectPort="8445" packetSize="65535" maxThreads="500" connectionTimeout="60000" tomcatAuthentication="false"/>
instance = server2
<Server port="8007" shutdown="SHUTDOWN">
<Connector protocol="HTTP/1.1" port="8501" redirectPort="8445" connectionTimeout="20000"/>
<Connector protocol="AJP/1.3" port="8012" redirectPort="8445" packetSize="65535" maxThreads="500" connectionTimeout="60000" tomcatAuthentication="false"/>
Coldfusion2018-Update02
===================
instance = cfusion
<Server port="8013" shutdown="SHUTDOWN">
<Connector port="8500" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8451" />
<Connector packetSize="65535" port="8018" protocol="AJP/1.3" redirectPort="8451" tomcatAuthentication="false" maxThreads="500" connectionTimeout="60000"/>
instance = server1
<Server port="8007" shutdown="SHUTDOWN">
<Connector packetSize="65535" protocol="HTTP/1.1" port="8501" redirectPort="8445" connectionTimeout="20000"/>
<Connector packetSize="65535" protocol="AJP/1.3" port="8012" redirectPort="8445" maxThreads="500" connectionTimeout="60000" tomcatAuthentication="false"/>
instance = server2
<Server port="8007" shutdown="SHUTDOWN">
<Connector packetSize="65535" protocol="HTTP/1.1" port="8501" redirectPort="8445" connectionTimeout="20000"/>
<Connector packetSize="65535" protocol="AJP/1.3" port="8012" redirectPort="8445" maxThreads="500" connectionTimeout="60000" tomcatAuthentication="false"/>
Copy link to clipboard
Copied
BKBK, it's OK if the ports are the same as long as the instances are on different machines from each other. And that seems the case from the discussion and from the zip.
Copy link to clipboard
Copied
Thanks for the correction, Charlie. I had assumed from the beginning there are two servers, each having 2 instances.
Copy link to clipboard
Copied
OK on that, Guillaume (that even cf2018 update 10 did not fix it). I'll offer new thoughts as a top level reply. This nesting of replies can cause them to be missed.
Copy link to clipboard
Copied
@Charlie, that's kind of you. Thanks for the tip.
My schedule is full at the moment. Were I to go on the list, I might not be able to offer clients the time they need. Perhaps some time in future.
Copy link to clipboard
Copied
OK on that, BKBK.
Copy link to clipboard
Copied
This is all very interesting (especially after the additional discussion). But it would seem there must be something unique to your setup, or we'd have heard of people hitting this in the nearly 2 years since update 2 of cf2018. 🙂
I can see from your zip (offered in a later comment) that you did take Dave's suggestion to create new instances, rather than rely on the cfusion one. That's important especially for replication of sessions but can affect other aspects of tomcat clustering (which cf uses under the covers since cf10).
I have a few more thoughts :
If you don't get to a resolution, this may call for Adobe's direct help, which you can request at cfinstal@adobe.com. They don't often get involved here.
And if you remain stuck, I'll again offer how I help folks remotely. Sometimes there's no substitute for seeing things directly. And if I didn't solve it, you'd not need to pay for the time. But see if Adobe may help first for free. Perhaps they've seen this and may have a thought.
I'd you do resolve it, please do update us here. We're obviously interested. :-=
Copy link to clipboard
Copied
Hi Chalie,
Thanks again for the time you took to look at my problem, i appreciate it.
I've talked to Adobe support and the issue was that i didn't filled the "PMT Shared secret key" when creating the remote instance which is required since update 2 (even if the field is not marked as mandatory)
Now, it's working fine !