You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@guacamole.apache.org by Shilpa Bhandari <sh...@fonantrix.com> on 2019/01/14 07:43:36 UTC

Guacamole performance improvement

There is some time gap after logging into Guac application and landing to
remote desktop through RDP where the message is seen like Connectiong to
Remote desktop. Is there any way to reduce this time? In my case this is
aroung 5-6 seconds gap before landing to remote window.

Thanks and regards,
Shilpa Bhandari

Re: Guacamole performance improvement

Posted by Amarjeet Singh <am...@gmail.com>.
I am also using the token API and Logout API and it always responds.

*TO GET TOKEN :-*

   1. Request URL:
   https://hostname/guacamole/api/tokens
   2. Request Method:
   POST
   3. Status Code:
   200 OK
   4. Remote Address: hostname:443
   5. Referrer Policy:
   origin-when-cross-origin

*TO DELETE TOKEN :-*

   1. Request URL:

   https://hostname/guacamole/api/tokens/7DAA03E7D8ED357CC24F34515484BDC838B72B19F73D3F90A9E5546DA4465956
   2. Request Method:
   DELETE
   3. Status Code:
   204 No Content
   4. Remote Address: hostname:443
   5. Referrer Policy:
   origin-when-cross-origin

My suggestion would be to checkout latest code of  *guacamole-client
*and *guacamole-server
*and then test without  doing any changes in the code or without calling
any API ( using *user-mapping.xml*).

*<user-mapping>*
*    <!-- Per-user authentication and config information -->*
*    <authorize username="admin" password="admin">*
*                 <connection name="Windows Server">*
*                        <protocol>rdp</protocol>*
*                        <param name="hostname">XXXX</param>*
*                        <param name="port">3389</param>*
*                        <param name="resize-method">reconnect</param>*
*                        <param name="domain">xxxx</param>*
*                        <param name="username">amarjeet.singh</param>*
*                        <param name="password">xxxxxx</param>*
*                </connection>*
*        </authorize>*
</*user-mapping>*


If issue still exists, then take the *tcpdump *for the delay.

*NOTE :* If you haven't done any changes in guacamole-client and
guacamole-server code that means the issue is not with the API.

As Nick said you can always check the *logs of guacamole-client and
guacamole-server*.

For memory consumption, please check which process is consuming more
memory  using *top command. * Check if it is guacd or java .



*On Wed, Jan 16, 2019 at 6:12 PM Shilpa Bhandari
<shilpa.bhandari@fonantrix.com <sh...@fonantrix.com>> wrote:*

> One more thing. The memory consumption by Guacamole reached upto 90-100%
> when this issue occurred. CPU utilization was also ~70%. I'm working with 5
> Guac users and 5 remoting instances.
>
> Thanks and regards,
> Shilpa Bhandari
>
>
> On Wed, Jan 16, 2019 at 5:34 PM Nick Couchman <vn...@apache.org> wrote:
>
>> On Wed, Jan 16, 2019 at 6:44 AM Shilpa Bhandari <
>> shilpa.bhandari@fonantrix.com> wrote:
>>
>>> In my case I made 3-4 calls to Guac API to delete a token but it didn't
>>> give any response for those and after 4-5 minutes it sent response for
>>> those calls as 404 Token not found. Meanwhile there were some other calls
>>> also to Guac API to fetch new tokens and those calls also got responded
>>> with this much delay.
>>>
>>
>> Yes, this is not expected behavior for Guacamole, and indicates either an
>> issue with the system running Guacamole Client (Tomcat) or the network
>> between the web browser and the server.
>>
>> -Nick
>>
>

Re: Guacamole performance improvement

Posted by Mike Jumper <mj...@apache.org>.
On Wed, Jan 16, 2019, 04:42 Shilpa Bhandari <shilpa.bhandari@fonantrix.com
wrote:

> One more thing. The memory consumption by Guacamole reached upto 90-100%
> when this issue occurred. CPU utilization was also ~70%. I'm working with 5
> Guac users and 5 remoting instances.
>

Resource consumption for 5 typical remote desktop users should be minimal.

I don't really know what to tell you other than what you're seeing doesn't
make sense. I suggest checking whether other factors (overcommitted
hypervisor resources? very low memory available on the server on general?)
might be exacerbating what is otherwise a very low level of concurrent use.

Perhaps you could describe how your server is set up at a low level?
Hardware, virtualization in use (if any), and the amount of actual
dedicated resources available?

Is there anything custom about your deployment? Custom auth of some kind?

- Mike

Re: Guacamole performance improvement

Posted by Shilpa Bhandari <sh...@fonantrix.com>.
One more thing. The memory consumption by Guacamole reached upto 90-100%
when this issue occurred. CPU utilization was also ~70%. I'm working with 5
Guac users and 5 remoting instances.

Thanks and regards,
Shilpa Bhandari


On Wed, Jan 16, 2019 at 5:34 PM Nick Couchman <vn...@apache.org> wrote:

> On Wed, Jan 16, 2019 at 6:44 AM Shilpa Bhandari <
> shilpa.bhandari@fonantrix.com> wrote:
>
>> In my case I made 3-4 calls to Guac API to delete a token but it didn't
>> give any response for those and after 4-5 minutes it sent response for
>> those calls as 404 Token not found. Meanwhile there were some other calls
>> also to Guac API to fetch new tokens and those calls also got responded
>> with this much delay.
>>
>
> Yes, this is not expected behavior for Guacamole, and indicates either an
> issue with the system running Guacamole Client (Tomcat) or the network
> between the web browser and the server.
>
> -Nick
>

Re: Guacamole performance improvement

Posted by Nick Couchman <vn...@apache.org>.
On Wed, Jan 16, 2019 at 6:44 AM Shilpa Bhandari <
shilpa.bhandari@fonantrix.com> wrote:

> In my case I made 3-4 calls to Guac API to delete a token but it didn't
> give any response for those and after 4-5 minutes it sent response for
> those calls as 404 Token not found. Meanwhile there were some other calls
> also to Guac API to fetch new tokens and those calls also got responded
> with this much delay.
>

Yes, this is not expected behavior for Guacamole, and indicates either an
issue with the system running Guacamole Client (Tomcat) or the network
between the web browser and the server.

-Nick

Re: Guacamole performance improvement

Posted by Shilpa Bhandari <sh...@fonantrix.com>.
In my case I made 3-4 calls to Guac API to delete a token but it didn't
give any response for those and after 4-5 minutes it sent response for
those calls as 404 Token not found. Meanwhile there were some other calls
also to Guac API to fetch new tokens and those calls also got responded
with this much delay.

Thanks and regards,
Shilpa Bhandari


On Tue, Jan 15, 2019 at 11:23 PM Mike Jumper <mj...@apache.org> wrote:

> On Tue, Jan 15, 2019, 04:16 Shilpa Bhandari <shilpa.bhandari@fonantrix.com
> wrote:
>
>> I'm using Guacamole API to fetch session token and to expire the token
>> also. But sometimes the API doesn't respond back but seems that the work
>> gets done on Guacamole side. e.g. I made a call to expire the token and for
>> 3-4 minutes no response returned from Guac API after sometime when I make
>> same call it responds back with Token not found error which indicates that
>> the token has already been expired using previous calls. Any thoughts on
>> this?
>>
>
> The API always responds, and revoking a token should be instantaneous. If
> you are seeing delays and sometimes zero response, it sounds like something
> is interfering on the network.
>
> - Mike
>
>

Re: Guacamole performance improvement

Posted by Mike Jumper <mj...@apache.org>.
On Tue, Jan 15, 2019, 04:16 Shilpa Bhandari <shilpa.bhandari@fonantrix.com
wrote:

> I'm using Guacamole API to fetch session token and to expire the token
> also. But sometimes the API doesn't respond back but seems that the work
> gets done on Guacamole side. e.g. I made a call to expire the token and for
> 3-4 minutes no response returned from Guac API after sometime when I make
> same call it responds back with Token not found error which indicates that
> the token has already been expired using previous calls. Any thoughts on
> this?
>

The API always responds, and revoking a token should be instantaneous. If
you are seeing delays and sometimes zero response, it sounds like something
is interfering on the network.

- Mike

Re: Guacamole performance improvement

Posted by Shilpa Bhandari <sh...@fonantrix.com>.
I'm using Guacamole API to fetch session token and to expire the token
also. But sometimes the API doesn't respond back but seems that the work
gets done on Guacamole side. e.g. I made a call to expire the token and for
3-4 minutes no response returned from Guac API after sometime when I make
same call it responds back with Token not found error which indicates that
the token has already been expired using previous calls. Any thoughts on
this?

Thanks and regards,
Shilpa Bhandari


On Tue, Jan 15, 2019 at 5:40 PM Shilpa Bhandari <
shilpa.bhandari@fonantrix.com> wrote:

> Thanks.
>
>
> On Tue, Jan 15, 2019 at 5:23 PM Nick Couchman <vn...@apache.org> wrote:
>
>> On Tue, Jan 15, 2019 at 6:45 AM Shilpa Bhandari <
>> shilpa.bhandari@fonantrix.com> wrote:
>>
>>> Where to check the logs for this?
>>>
>>> Thanks and regards,
>>> Shilpa Bhandari
>>>
>>
>> For Guacamole Client, check the Tomcat catalina.out file, which logs all
>> of the Java messages for the Guacamole Client application.
>>
>> For guacd, check your normal syslog facilities - /var/log/messages,
>> journalctl, etc. - and look for messages that contain "guacd".
>>
>> You also may want to put one or both of these in Debug logging mode - for
>> Guacamole Client, you create a logback.xml file in GUACAMOLE_HOME (where
>> guacamole.properties is located) and configure it appropriately:
>>
>>
>> http://guacamole.apache.org/doc/gug/configuring-guacamole.html#webapp-logging
>>
>>
>> For guacd, you can either start with "-L debug" as a flag on the command
>> line or you can specify the log_level parameter in the config file:
>>
>> http://guacamole.apache.org/doc/gug/configuring-guacamole.html#guacd.conf
>>
>> -Nick
>>
>

Re: Guacamole performance improvement

Posted by Shilpa Bhandari <sh...@fonantrix.com>.
Thanks.


On Tue, Jan 15, 2019 at 5:23 PM Nick Couchman <vn...@apache.org> wrote:

> On Tue, Jan 15, 2019 at 6:45 AM Shilpa Bhandari <
> shilpa.bhandari@fonantrix.com> wrote:
>
>> Where to check the logs for this?
>>
>> Thanks and regards,
>> Shilpa Bhandari
>>
>
> For Guacamole Client, check the Tomcat catalina.out file, which logs all
> of the Java messages for the Guacamole Client application.
>
> For guacd, check your normal syslog facilities - /var/log/messages,
> journalctl, etc. - and look for messages that contain "guacd".
>
> You also may want to put one or both of these in Debug logging mode - for
> Guacamole Client, you create a logback.xml file in GUACAMOLE_HOME (where
> guacamole.properties is located) and configure it appropriately:
>
>
> http://guacamole.apache.org/doc/gug/configuring-guacamole.html#webapp-logging
>
>
> For guacd, you can either start with "-L debug" as a flag on the command
> line or you can specify the log_level parameter in the config file:
>
> http://guacamole.apache.org/doc/gug/configuring-guacamole.html#guacd.conf
>
> -Nick
>

Re: Guacamole performance improvement

Posted by Nick Couchman <vn...@apache.org>.
On Tue, Jan 15, 2019 at 6:45 AM Shilpa Bhandari <
shilpa.bhandari@fonantrix.com> wrote:

> Where to check the logs for this?
>
> Thanks and regards,
> Shilpa Bhandari
>

For Guacamole Client, check the Tomcat catalina.out file, which logs all of
the Java messages for the Guacamole Client application.

For guacd, check your normal syslog facilities - /var/log/messages,
journalctl, etc. - and look for messages that contain "guacd".

You also may want to put one or both of these in Debug logging mode - for
Guacamole Client, you create a logback.xml file in GUACAMOLE_HOME (where
guacamole.properties is located) and configure it appropriately:

http://guacamole.apache.org/doc/gug/configuring-guacamole.html#webapp-logging


For guacd, you can either start with "-L debug" as a flag on the command
line or you can specify the log_level parameter in the config file:

http://guacamole.apache.org/doc/gug/configuring-guacamole.html#guacd.conf

-Nick

Re: Guacamole performance improvement

Posted by Shilpa Bhandari <sh...@fonantrix.com>.
Where to check the logs for this?

Thanks and regards,
Shilpa Bhandari


On Tue, Jan 15, 2019 at 5:12 PM Nick Couchman <vn...@apache.org> wrote:

> On Tue, Jan 15, 2019 at 4:32 AM Shilpa Bhandari <
> shilpa.bhandari@fonantrix.com> wrote:
>
>> No we don't have SFTP enabled on RDP connection.
>>
>
> Are you able to look at the log files and determine where the delay is
> occurring?  If it is a multi-second delay, you should be able to see
> timestamps in the log files that indicate if the delay is between Guacamole
> Client and guacd, or between guacd and the remote host.  These entries also
> may indicate if it's being caused by trying to connect to the remote
> server, or the connection happens quickly but the remote server is taking a
> long time processing the login.
>
> -Nick
>

Re: Guacamole performance improvement

Posted by Nick Couchman <vn...@apache.org>.
On Tue, Jan 15, 2019 at 4:32 AM Shilpa Bhandari <
shilpa.bhandari@fonantrix.com> wrote:

> No we don't have SFTP enabled on RDP connection.
>

Are you able to look at the log files and determine where the delay is
occurring?  If it is a multi-second delay, you should be able to see
timestamps in the log files that indicate if the delay is between Guacamole
Client and guacd, or between guacd and the remote host.  These entries also
may indicate if it's being caused by trying to connect to the remote
server, or the connection happens quickly but the remote server is taking a
long time processing the login.

-Nick

Re: Guacamole performance improvement

Posted by Shilpa Bhandari <sh...@fonantrix.com>.
No we don't have SFTP enabled on RDP connection.

Thanks and regards,
Shilpa Bhandari


On Mon, Jan 14, 2019 at 10:07 PM Mike Jumper <mj...@apache.org> wrote:

> On Mon, Jan 14, 2019 at 12:16 AM Shilpa Bhandari <
> shilpa.bhandari@fonantrix.com> wrote:
>
>> Yes. I want to know if there is any way to reduce that time between login
>> to remote desktop connection.
>>
>
> There's very little that Guacamole needs to do when establishing a
> connection. If the remote desktop responds quickly, and there are no
> network issues which would substantially slow things down (unlikely if the
> connection itself performs well after being established), then the
> connection should establish quickly as well. I suspect that the remote
> desktop server(s) involved are simply taking that long for their own
> reasons, independently of Guacamole.
>
> If you'd like to compare a known-good production deployment of Apache
> Guacamole vs. what you're seeing, the company I work for hosts a public
> demo server which might be helpful here as a baseline:
> https://demo.glyptodon.com/
>
> Do you have SFTP enabled on the RDP connection? That could easily slow
> down the initial connection in cases where the SSH server is configured to
> perform reverse DNS lookups, etc.
>
> - Mike
>
>

Re: Guacamole performance improvement

Posted by Mike Jumper <mj...@apache.org>.
On Mon, Jan 14, 2019 at 12:16 AM Shilpa Bhandari <
shilpa.bhandari@fonantrix.com> wrote:

> Yes. I want to know if there is any way to reduce that time between login
> to remote desktop connection.
>

There's very little that Guacamole needs to do when establishing a
connection. If the remote desktop responds quickly, and there are no
network issues which would substantially slow things down (unlikely if the
connection itself performs well after being established), then the
connection should establish quickly as well. I suspect that the remote
desktop server(s) involved are simply taking that long for their own
reasons, independently of Guacamole.

If you'd like to compare a known-good production deployment of Apache
Guacamole vs. what you're seeing, the company I work for hosts a public
demo server which might be helpful here as a baseline:
https://demo.glyptodon.com/

Do you have SFTP enabled on the RDP connection? That could easily slow down
the initial connection in cases where the SSH server is configured to
perform reverse DNS lookups, etc.

- Mike

Re: Guacamole performance improvement

Posted by Shilpa Bhandari <sh...@fonantrix.com>.
Yes. I want to know if there is any way to reduce that time between login
to remote desktop connection.

Thanks and regards,
Shilpa Bhandari


On Mon, Jan 14, 2019 at 1:26 PM Mike Jumper <mj...@apache.org> wrote:

> On Sun, Jan 13, 2019 at 11:44 PM Shilpa Bhandari <
> shilpa.bhandari@fonantrix.com> wrote:
>
>> There is some time gap after logging into Guac application and landing to
>> remote desktop through RDP where the message is seen like Connectiong to
>> Remote desktop. Is there any way to reduce this time? In my case this is
>> aroung 5-6 seconds gap before landing to remote window.
>>
>
> Once connected, everything performs well, correct? It's just taking longer
> than expected to complete the connection?
>
> - Mike
>
>

Re: Guacamole performance improvement

Posted by Mike Jumper <mj...@apache.org>.
On Sun, Jan 13, 2019 at 11:44 PM Shilpa Bhandari <
shilpa.bhandari@fonantrix.com> wrote:

> There is some time gap after logging into Guac application and landing to
> remote desktop through RDP where the message is seen like Connectiong to
> Remote desktop. Is there any way to reduce this time? In my case this is
> aroung 5-6 seconds gap before landing to remote window.
>

Once connected, everything performs well, correct? It's just taking longer
than expected to complete the connection?

- Mike