I have a requirement to configure custom ports for one of our environments. I am able to configure rest / capi / query_ports.
I want to configure Full Text Search. So I am assuming that this would be {fts_port , NNNN}.
Can some one please confirm if this is a right parameter that needs to be in the static_config file.
CB Server : 4.6.X
RHEL 6.6
Here is log message —> 8094 is being used by other application and that is why we are moving couchbase FTS to some other port.
Service ‘fts’ exited with status 1. Restarting. Messages: 2017-08-31T23:36:05.072-04:00 [INFO] ------------------------------------------------------------
2017-08-31T23:36:05.072-04:00 [FATAL] main: listen, err: listen tcp 0.0.0.0:8094: bind: address already in use
Please check that your -bindHttp parameter (“0.0.0.0:8094”)
is correct and available. – main.MainServeHttp() at main.go:274
[goport] 2017/08/31 23:36:05 /opt/couchbase/bin/cbft terminated: exit status 1
Yes, I used that in static_config file. Unfortunately I still can’t get the user defined port work for FTS. I am still seeing the same error message in the log.
We have some existing applications that run on {8091 - 8097} ports and are being requested to use other available ports( this is only for Development purposes ) . I installed Data, Index, Query, & FullText services.
We are having issues using FTS. Only fts_http_port seems to have issues. I am again posting the error message for reference.
Service ‘fts’ exited with status 1. Restarting. Messages: 2017-08-31T18:57:41.742-04:00 [INFO] ------------------------------------------------------------ 2017-08-31T18:57:41.742-04:00 [FATAL] main: listen, err: listen tcp 0.0.0.0:8094: bind: address already in use Please check that your -bindHttp parameter (“0.0.0.0:8094”) is correct and available. – main.MainServeHttp() at main.go:274 [goport] 2017/08/31 18:57:41 /opt/couchbase/bin/cbft terminated: exit status 1
This should work for you (does work for me). However, there’s a gotcha - you have to delete your config.dat file after you update the static_config. (The settings in the static_config are essentially copied to the config.dat when the server is started up the first time, but not thereafter.) If you changed the fts_http_port later it won’t have made it.
This will show you what the fts_port_actually is. You’ll probably find it to be 8094. To save you deleting your config.dat file (basically starting with an unconfigured cluster), the following diag/eval should just change your fts_http_port (and restart fts).
The static_config is set to 6094 for fts_http_port value. I followed the exact instructions as per the user defined ports documentation.
I also ran the queries passed here to get the values for fts_http_port, and I get {value,6094}, so the user defined ports are being picked up.
curl -s localhost:6091/diag/eval -d ‘ns_config:search({node, node(), fts_http_port})’ -u Administrator:
{value,6094}
I still see the bind error for 8094 port, for now the application can survive without FTS, so I took off the FTS from the node by reinstalling Couchbase. This is a development node and a single node cluster .
But we need this issue to be resolved to take advantage of FTS. Any pointers in debugging the below issue is appreciated. If you think I need to raise a support request, I am more then happy to do that.
Service ‘fts’ exited with status 1. Restarting. Messages: 2017-09-01T09:56:22.880-04:00 [INFO] ------------------------------------------------------------
2017-09-01T09:56:22.880-04:00 [FATAL] main: listen, err: listen tcp 0.0.0.0:8094: bind: address already in use
Please check that your -bindHttp parameter (“0.0.0.0:8094”)
is correct and available. – main.MainServeHttp() at main.go:274
[goport] 2017/09/01 09:56:22 /opt/couchbase/bin/cbft terminated: exit status 1
Well, that’s odd. The bindHttp value that FTS complains about is passed to FTS by ns_server with the port number being obtained from the config in the same manner as the diag/eval you ran. I was not able to reproduce the behavior you’re seeing. The port customization worked and FTS was listening to the customized port and not the default port.
In this case I think probably the best course is to create a support request and upload the “cbcollect” logs (which you can do from the logs tab.)