Riak-CS-Control

Konstantin Kalin konstantin.kalin at gmail.com
Tue Jul 2 22:06:09 EDT 2013


Yes. I know… Sorry I wasn't clear. Usually changing of IP will require name change also (if name contains IP not a hostname), right? I assumed it (my bad). But it like dejavu for me since I hit this "trick" almost every time when I'm preparing a new node :)

Thank you,
Konstantin. 

On Jul 2, 2013, at 7:00 PM, Christopher Meiklejohn wrote:

> The 'reip' command should only be required when the node name changes, not when the bind interfaces change.  
> 
> If you've only changed the settings in app.config, and not vm.args, this shouldn't be necessary.
> 
> - Chris  
> 
> --  
> Christopher Meiklejohn
> Software Engineer
> Basho Technologies, Inc.
> 
> 
> 
> On Tuesday, July 2, 2013 at 9:48 PM, Konstantin Kalin wrote:
> 
>> Would the changing of IP require dropping of the ring-data which had been created for "127.0.0.1"? If I remember correctly it will...
>> 
>> Thank you,
>> Konstantin.  
>> 
>> On Jul 2, 2013, at 6:42 PM, Christopher Meiklejohn wrote:
>> 
>>> Hi Guy,  
>>> 
>>> It appears that when you ran 'riak console', you already had an instance of Riak running. That 'duplicate_name' message means that there is another node registered with the same name.
>>> 
>>> Let's try this:
>>> 
>>> 1. Shutdown all copies of Riak.
>>> 2. Configure the Riak app.config file with the desired IP configuration (not the loopback)
>>> 3. Try starting riak using the 'riak console' command.
>>> 
>>> - Chris  
>>> 
>>> --  
>>> Christopher Meiklejohn
>>> Software Engineer
>>> Basho Technologies, Inc.
>>> 
>>> 
>>> 
>>> On Tuesday, July 2, 2013 at 9:38 PM, Guy Morton wrote:
>>> 
>>>> root at usidentity02:~# sudo riak console
>>>> Attempting to restart script through sudo -H -u riak
>>>> Exec: /usr/lib/riak/erts-5.9.1/bin/erlexec -boot /usr/lib/riak/releases/1.3.2/riak -embedded -config /etc/riak/app.config -pa /usr/lib/riak/lib/basho-patches -args_file /etc/riak/vm.args -- console
>>>> Root: /usr/lib/riak
>>>> {error_logger,{{2013,7,2},{18,36,48}},"Protocol: ~p: register error: ~p~n",["inet_tcp",{{badmatch,{error,duplicate_name}},[{inet_tcp_dist,listen,1,[{file,"inet_tcp_dist.erl"},{line,70}]},{net_kernel,start_protos,4,[{file,"net_kernel.erl"},{line,1314}]},{net_kernel,start_protos,3,[{file,"net_kernel.erl"},{line,1307}]},{net_kernel,init_node,2,[{file,"net_kernel.erl"},{line,1197}]},{net_kernel,init,1,[{file,"net_kernel.erl"},{line,357}]},{gen_server,init_it,6,[{file,"gen_server.erl"},{line,304}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,227}]}]}]}
>>>> {error_logger,{{2013,7,2},{18,36,48}},crash_report,[[{initial_call,{net_kernel,init,['Argument__1']}},{pid,<0.21.0>},{registered_name,[]},{error_info,{exit,{error,badarg},[{gen_server,init_it,6,[{file,"gen_server.erl"},{line,320}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,227}]}]}},{ancestors,[net_sup,kernel_sup,<0.10.0>]},{messages,[]},{links,[#Port<0.202>,<0.18.0>]},{dictionary,[{longnames,true}]},{trap_exit,true},{status,running},{heap_size,610},{stack_size,24},{reductions,512}],[]]}
>>>> {error_logger,{{2013,7,2},{18,36,48}},supervisor_report,[{supervisor,{local,net_sup}},{errorContext,start_error},{reason,{'EXIT',nodistribution}},{offender,[{pid,undefined},{name,net_kernel},{mfargs,{net_kernel,start_link,[['riak at 10.219.30.12 (mailto:riak at 10.219.30.12)',longnames]]}},{restart_type,permanent},{shutdown,2000},{child_type,worker}]}]}
>>>> {error_logger,{{2013,7,2},{18,36,48}},supervisor_report,[{supervisor,{local,kernel_sup}},{errorContext,start_error},{reason,shutdown},{offender,[{pid,undefined},{name,net_sup},{mfargs,{erl_distribution,start_link,[]}},{restart_type,permanent},{shutdown,infinity},{child_type,supervisor}]}]}
>>>> {error_logger,{{2013,7,2},{18,36,48}},std_info,[{application,kernel},{exited,{shutdown,{kernel,start,[normal,[]]}}},{type,permanent}]}
>>>> {"Kernel pid terminated",application_controller,"{application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}}"}
>>>> 
>>>> 
>>>> 
>>>> 
>>>> Crash dump was written to: /var/log/riak/erl_crash.dump
>>>> Kernel pid terminated (application_controller) ({application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}})
>>>> --
>>>> Guy Morton
>>>> Web Development Manager
>>>> Brüel & Kjær EMS
>>>> 
>>>> ________________________________________
>>>> From: Christopher Meiklejohn [cmeiklejohn at basho.com (mailto:cmeiklejohn at basho.com)]
>>>> Sent: Wednesday, 3 July 2013 11:35 AM
>>>> To: Guy Morton
>>>> Cc: Toby Corkindale; Sean Cribbs; riak-users
>>>> Subject: Re: Riak-CS-Control
>>>> 
>>>> Hi Guy,
>>>> 
>>>> When you say nothing starts, can you provide the output of running something like 'riak console' so we can try to figure out what is happening?
>>>> 
>>>> - Chris
>>>> 
>>>> --
>>>> Christopher Meiklejohn
>>>> Software Engineer
>>>> Basho Technologies, Inc.
>>>> 
>>>> 
>>>> 
>>>> On Tuesday, July 2, 2013 at 9:32 PM, Guy Morton wrote:
>>>> 
>>>>> The issue I have is, I think, network/IP config related.
>>>>> 
>>>>> I am totally confused as to HOW each app should be configured. Documentation (eg http://docs.basho.com/riak/latest/cookbooks/Basic-Cluster-Setup/) says configure everything with the IP of the machine the app is running on, but when I do that nothing starts. The only way I can configure it to make it start is using 127.0.0.1.
>>>>> 
>>>>> I'm just trying to set up a single node that runs all the apps and is accessible by another machine. It seems a simple use-case but the only documentation I can find doesn't give me any way to make that happen.
>>>>> 
>>>>> And it's frustrating, because when it fails it gives no useful pointers as to why, and when it looks like it's sorta working, it still fails to work properly and, again, gives no useful clues as to what's wrong or how to fix it.
>>>>> 
>>>>> Tearing my hair out here.
>>>>> 
>>>>> --
>>>>> Guy Morton
>>>>> Web Development Manager
>>>>> Brüel & Kjær EMS
>>>>> 
>>>>> 
>>>>> ________________________________________
>>>>> From: riak-users [riak-users-bounces at lists.basho.com (mailto:riak-users-bounces at lists.basho.com)] on behalf of Toby Corkindale [toby.corkindale at strategicdata.com.au (mailto:toby.corkindale at strategicdata.com.au)]
>>>>> Sent: Wednesday, 3 July 2013 10:51 AM
>>>>> To: Sean Cribbs
>>>>> Cc: riak-users
>>>>> Subject: Re: Riak-CS-Control
>>>>> 
>>>>> On 02/07/13 22:51, Sean Cribbs wrote:
>>>>>> On Tue, Jul 2, 2013 at 5:34 AM, Toby Corkindale
>>>>>> <toby.corkindale at strategicdata.com.au (mailto:toby.corkindale at strategicdata.com.au)
>>>>>> <mailto:toby.corkindale at strategicdata.com.au>> wrote:
>>>>>> 
>>>>>> Riak (and Riak CS and Stanchion) all assume some level of competence
>>>>>> at Erlang. I found Riak was tricky to get running, but had picked up
>>>>>> enough knowledge of Erlang's strange syntax and foibles from working
>>>>>> with RabbitMQ.
>>>>>> 
>>>>>> 
>>>>>> This assumption is EXACTLY why we publish our own binary packages. You
>>>>>> don't need to know Erlang to run Riak, and haven't for years. When you
>>>>>> become an advanced user, yes, it is helpful, but it is not strictly
>>>>>> necessary. This is especially true of CS, and I'd much rather get the
>>>>>> bottom of Guy's problem than quibble about how hard Riak is to use
>>>>>> "because Erlang".
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> Oh, no, I feel you've misunderstood me slightly. I'm not blaming all
>>>>> difficulties upon Erlang - however the way Erlang is used does bring
>>>>> some added complexities to the party that can and will confuse people.
>>>>> In particular, using Erlang syntax for the configuration file, and
>>>>> outputting errors in the same way.
>>>>> 
>>>>> The configuration format *is* hard to understand, and it's easy to break
>>>>> it while making what should be simple changes.
>>>>> 
>>>>> Have a look at a typical error thrown by Riak or Riak CS -- it's an
>>>>> extremely dense Erlang stack trace.
>>>>> 
>>>>> Erlang's clustering requires open networking, or more advanced
>>>>> configuration if using host firewall.
>>>>> 
>>>>> 
>>>>> Don't misunderstand me -- I kinda like Erlang and have seen some great
>>>>> open source products built upon it.
>>>>> 
>>>>>> We are working on exactly these problems, but they are difficult to get
>>>>>> right. Any suggestions on config syntaxes that work well for other
>>>>>> products are appreciated. For now we're looking at a format that
>>>>>> resembles sysctl.
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> Another common one is the Apache-style, eg.
>>>>> <Section>
>>>>> <Subsection>
>>>>> Key Value
>>>>> </Subsection>
>>>>> </Section>
>>>>> 
>>>>> 
>>>>> -Toby
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> riak-users mailing list
>>>>> riak-users at lists.basho.com (mailto:riak-users at lists.basho.com)
>>>>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>>>>> 
>>>>> This e-mail is confidential and may be read, copied and used only by the intended recipient. If you have received it in error, please contact the sender immediately by return e-mail. Please then delete the e-mail and do not disclose its contents to any other person.
>>>>> 
>>>>> _______________________________________________
>>>>> riak-users mailing list
>>>>> riak-users at lists.basho.com (mailto:riak-users at lists.basho.com)
>>>>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> This e-mail is confidential and may be read, copied and used only by the intended recipient. If you have received it in error, please contact the sender immediately by return e-mail. Please then delete the e-mail and do not disclose its contents to any other person.  
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> riak-users mailing list
>>> riak-users at lists.basho.com (mailto:riak-users at lists.basho.com)
>>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>> 
> 
> 
> 





More information about the riak-users mailing list