stratos-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vishanth Balasubramaniam <vishan...@wso2.com>
Subject Re: Problem starting cassandra from a Entrypoint script
Date Thu, 16 Oct 2014 12:35:34 GMT
Hi Udara,

Tried to wait till it pings the hostname from the script before starting
the cassandra with the following line and identified that the hostname is
not getting resolved.

while ! ping -c1 $(hostname) &>>/tmp/hostname.log; do echo "IP is not UP"
>> /tmp/hostname.log  ; sleep 5  ; done

And there is no option of appending the hostname into the '/etc/hosts' as
it is not supported to the docker container.

On Thu, Oct 16, 2014 at 10:10 AM, Udara Liyanage <udara@wso2.com> wrote:

> Hi Vishanth,
>
> When you ssh into the instance and execute the run script, it works and
> when add as a entry point it does not means there may a difference between
> the users who execute the script. When you ssh and execute, you execute as
> root users.
> @Sajith what is the user who execute the script when you add as an entry
> point.
>
> On Thu, Oct 16, 2014 at 8:06 AM, Vishanth Balasubramaniam <
> vishanthb@wso2.com> wrote:
>
>> Hi,
>>
>> There is a problem with starting the cassandra from the Entrypoint at the
>> docker file. BUT it totally works fine when I run the script
>> (run_scripts.sh) inside the instance (ssh root@10.11.12.2).
>>
>> The following line is used in the docker file to call the run script at
>> Entrypoint
>>
>> ENTRYPOINT /usr/local/bin/run_scripts.sh | /usr/sbin/sshd -D
>>
>>
>> run_scripts.sh has the following lines of code to execute
>>
>> #!/bin/bash
>> source /root/.bashrc
>> /usr/local/bin/metadata_svc_bugfix.sh
>> /etc/init.d/apache2 start > /tmp/apache_start.log
>> /root/bin/init.sh > /tmp/init.log &
>> opt/cassandra/bin/start.sh > /tmp/cassandra_start.log &
>>
>>
>> from the run script I am calling the start.sh to start the cassandra,
>> run_script contains the following
>>
>> #setting up the env variables
>> export JAVA_HOME=/opt/java
>> export CASSANDRA_HOME=/opt/cassandra
>> export PATH=$PATH:/opt/cassandra/bin:/opt/java/bin
>> export CASSANDRA_CONF=/opt/cassandra/conf
>> export CLASSPATH=/opt/cassandra/lib/*.jar
>>
>> echo "127.0.0.1 localhost" >> /etc/hosts
>> /opt/cassandra/bin/cassandra
>>
>>
>> The cassandra didn't start at the Entrypoint, then I logged the error
>> into a file using the following line
>> /opt/cassandra/bin/cassandra >> /tmp/cassandra_start.log 2>&1
>>
>> Error: Exception thrown by the agent : java.net.MalformedURLException:
>> Local host name unknown: java.net.UnknownHostException:
>> instance-00000001: instance-00000001
>>
>> Then found the fix from the following discussion
>> http://stackoverflow.com/questions/7496640/problem-on-starting-cassandra
>>
>> and modified the script replacing  echo "127.0.0.1 localhost" >>
>> /etc/hosts with
>> echo "127.0.0.1 localhost.localdomain localhost instance-00000001" >>
>> /etc/hosts
>>
>> But unfortunately I am not able to append the 'hosts' file in etc because
>> it is a read only file.
>>
>> Why is it that it is able to start cassandra inside the instance using
>> the same script but not from calling the script at entrypoint?
>>
>> Herewith I have attached all the Dockerfile, Run_scripts.sh and Start.sh.
>>
>>
>> Thank you
>> --
>> *Vishanth Balasubramaniam*
>> Software Engineer
>> WSO2 Inc.; http://wso2.com
>> lean.enterprise.middleware
>>
>> mobile: *+94771737718*
>> about me: *http://about.me/vishanth <http://about.me/vishanth>*
>>
>>
>
>
> --
>
> Udara Liyanage
> Software Engineer
> WSO2, Inc.: http://wso2.com
> lean. enterprise. middleware
>
> web: http://udaraliyanage.wordpress.com
> phone: +94 71 443 6897
>



-- 
*Vishanth Balasubramaniam*
Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware

mobile: *+94771737718*
about me: *http://about.me/vishanth <http://about.me/vishanth>*

Mime
View raw message