@kan kodali, i’m not a front guy either.i’v got the same requirement as you 
recently,  i have to separate zeppelin backend and frontend to different 
servers, i did as what the previous mail says,i works.
for you questions:
1. AFAK,is not configurable. if you are familiar with Grunt ,maybe  a custom 
property  can do.(i’m not sure)
2.   zeppelin use Websocket to handle bidirectional communication with backend 
and frontend. Once is Websocket connection is done, backend run you sql, and 
send result data as json back to frontend, which handling rendering.
3. let me elaborate on my procedure to achieve separating zeppelin backend and 
frontend to different servers。
   1)host1,as zeppelin backend, install zeppelin-xxx.tar.gz(the distribution 
binary), bin/zeppelin-daemon.sh start. then, you got your zeppelin backend 
done, which has a frontend bundled with it . but you would use it.
   2) host2 , as zeppelin frontend. Grab zeppelin-web module(src code),install 
node.js and Grunt,change zeppelin-web/src/components/baseUrl/baseUrl.service.js 
like this, which reference you zeppelin backend address:

this.getWebsocketUrl = function() {
    var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
    return wsProtocol + ‘//host1:' + this.getPort() + 
skipTrailingSlash(location.pathname) + '/ws';
  };
 
  this.getRestApiBase = function() {
    return location.protocol + ‘//host1:' + this.getPort() + 
skipTrailingSlash(location.pathname) +
      '/api';
  };
   3) in host2, run   " grunt serve “  in zeppelin-web folder.

Done


> 在 2016年9月8日,02:30,kant kodali <kanth...@gmail.com> 写道:
> 
> Hi! Thanks for this but I still see the big picture. I have not used Angular 
> before nor I am a frontend guy. so I have the following questions.
> 
> Why do we need to change the source code? isn't this configurable or isn't 
> there a way to pass url as a parameter? If you think it is the easiest way 
> sure I can change that.
> How change this let me grab data from my websocket server and display it with 
> the charts/graphs (simple to graphs we see when we run sql on Zeppelin 
> notebook)
> if there is a simple example that would be awesome.
> Thanks again!
> 
> 
> 
> 
> 
> On Wed, Sep 7, 2016 5:05 AM, spacewalk...@163.com spacewalk...@163.com 
> <mailto:spacewalk...@163.com> wrote:
> @kant kodali
> 
> change   zeppelin-web\ src\components\baseUrl\baseUrl.service.js like this:
> 
>  this.getWebsocketUrl = function() {
>     var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
>     return wsProtocol + ‘//your_ip_address:' + this.getPort() + 
> skipTrailingSlash(location.pathname) + '/ws';
>   };
>  
>   this.getRestApiBase = function() {
>     return location.protocol + '//your_ip_address:' + this.getPort() + 
> skipTrailingSlash(location.pathname) +
>       '/api';
>   };
>> 在 2016年9月7日,15:39,kant kodali <kanth...@gmail.com 
>> <mailto:kanth...@gmail.com>> 写道:
>> 
>> HI Guys,
>> 
>> I have a server which can handle websocket connections. Now I would like to 
>> see if there is a way to tell apache zeppellin to create to websocket 
>> connect to my server and display the whatever it received?
>> 
>> Thanks,
>> Kant

Reply via email to