How to run Kibana 4.4.1 on IBM Bluemix PaaS

I am trying to run Kibana 4.4.1 on an IBM Bluemix PaaS as a nodejs application. In my implementation, i use cloudfoundry to connect to the PaaS cloud.

I was able to run Kibana 4.1.1 on PaaS using the following steps

> Download Kibana from here to your personal desktop:
> https://download.elastic.co/kibana/kibana/kibana-4.1.1-windows.zip
> Extract the files using WinZip and navigate to /src/config/index.js
> Modify the following line from:
> // Set defaults for config file stuff
> kibana.port = kibana.port || 5601;
> To the following:
> kibana.port = process.env.PORT || 5601;

> Once the change has been made save the file.

> Navigate to the folder /src/ and create a new file called manifest.yml. The contents of this file should be the following:

> ---
> applications:
>  - name: %name%
>    host: %name%
>    memory: %memory%
>    domain: asdy.gfbryb..mybluemix.net
>    instances: 1
>    command: node ./bin/kibana.js
>    env:
>      NODE_ENV: production
>      CONFIG_PATH: ./config/kibana.yml

> This file will tell Blue Mix how to run this application once uploaded. The %name% should be the same as the application name within Blue Mix. For %memory% use an increment of 128M, 256M, 512M.

> Navigate to the folder /src/config/ and open the file kibana.yml. Add the following lines to the end of the file:

> bundled_plugin_ids:
>  - plugins/dashboard/index
>  - plugins/discover/index
>  - plugins/doc/index
>  - plugins/kibana/index
>  - plugins/markdown_vis/index
>  - plugins/metric_vis/index
>  - plugins/settings/index
>  - plugins/table_vis/index
>  - plugins/vis_types/index
>  - plugins/visualize/index

> In the same file we need to update the variable “elasticsearch_url” to point to the virtual machine’s IP:

> elasticsearch_url: "http://<Virtual Machine IP>:9200"

> Save the file when finished.

> Download the Cloud Foundary Command Line Interface (CF CLI) here:

> https://github.com/cloudfoundry/cli/releases

> Once CF CLI has been installed follow the steps from the webpage we need to connect to Blue Mix. Open up command prompt on your computer by navigating to Start -> Run and typing in “CMD”:

>  

> To connect to Blue Mix use the command “cf api https://api.ng.bluemix.net”:
>  

> Log in to Blue Mix “cf login –u user_name –o org_name –s space_name”:
>  

> User_name is your login for Blue Mix
> Org_name is the organization that will house the application(s)
> Space_name is the folder which the application will be stored

> To upload the application use the command cf push in the following syntax “cf push appname –m 512m”
>  

> When pushing the application make sure the directory is the /src/ folder of kibana.

but these steps dont work for Kibana 4.4.1 as the directory structure is completely different. I tried to push Kibana to PaaS by moving to the src folder and typing the cf push command, but it fails to upload.

Has anyone tried to do this?

finally figured it out. all you have to do is

create manifest.yml next to package.json

---
applications:
- name: %name_of_app%
  memory: 512M
  host: %name_of_app%
  domain: %name_of_domain%

create a Procfile next to package.json

web: bin/kibana --port $PORT

and we are done :slight_smile: