This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Tinker Elasticsearch cluster
#1
Hi! I'm new here and thought it could be fun showing a little odd build based on the Tinker Board  Smile
 
I wanted a fast search solution for my web shop and I'm a fan of the Elasticsearch search engine so ...... Tinker Board is fast and cheap so I've put together a 6-node Elasticsearch cluster with everything needed in a 1HE 19" rack box.
 
The hardware used is:
Tinker Board
32 GB SD cards UHS1 (100MB/sec version)
5V/20Amp power supply
Zyxel GS1900-8 managed switch (clothes taken off)
12V power supply (came with switch, I removed the plastic cover)
Noctua 40mm 5V fans
Power inlet, CAT6 network connectors and a bunch of wiring
 
 
The OS and software used,
 
root@tb6:~# uname -a
Linux tb6 4.4.16-00006-g4431f98-dirty #1 SMP Mon Apr 17 17:27:25 CST 2017 armv7l GNU/Linux

 
root@tb6:~# curl -XGET '192.168.12.70:9200'
{
  "name" : "tb1",
  "cluster_name" : "tb",
  "cluster_uuid" : "APQp5w0UT46mIHvvia54bg",
  "version" : {
    "number" : "5.6.2",
    "build_hash" : "57e20f3",
    "build_date" : "2017-09-23T13:16:45.703Z",
    "build_snapshot" : false,
    "lucene_version" : "6.6.1"
  },
  "tagline" : "You Know, for Search"
}

Oracle Java JDK 8

 
I've turned off Wi-Fi, Bluetooth and sound to save memory and I really have no use of it. I choose to use the GPIO header to power the boards because the Micro-USB is only specified to 1.8Amp. In this setup there is no space to use the Micro-USB anyway. Each board has their own power wires going to the power supply - 20Amp for 6 Tinker Boards should be enough.
 
The Zyxel switch is an 8-port Gbit switch with 6 ports taken by the Tinker Boards. The two remaining ports go to the CAT6 connectors in the rear. The switch is set to link aggregation for these ports so in theory I have 2Gbit bandwidth if I ever would need that ...  Rolleyes
 
The temps vary between 40 degree C at idle and 48 degree C at peak hours so that is no issue for me. I think the Noctua fans do a good job moving air through the box. Two are blowing air into the box and two are sucking air out of the box. I did a minor design flaw with the cooling. I was not aware that the power supply had a vertical mounted circuit board when I did the mechanical part of the build. Now it's blocking one fan so I think I will rotate the power supplies 90 degree to get better airflow.
 
I'm a bit worried about ASUS support for this board looking at their website there is nothing new since June. Compared to Raspberry it's like night and day .... but the Raspberry is just to slow for me. Maybe change to the UP2 board when it gets released and run Ubuntu Server but the cost is 4-5 times higher Sad
 
 
I’m hoping to find a lot good info here about new OS releases and fixes and will try to contribute with what I know. I’m sure I run in to trouble sooner or later J The system has been online for one week now without issues ……


Fired up for the first time:
 
[Image: full] 
Reply
#2
Wow this looks really cool!

How stable is the setup? Are you building this for fun or some research project?
Reply
#3
(10-15-2017, 05:54 PM)qaplus Wrote: Wow this looks really cool!

How stable is the setup? Are you building this for fun or some research project?

It have been up for one week now, no issues. For my use it have been stable. I think many Tinker Board users are fighting instability issues because of the use of the Micro-USB for the power supply. You get a lot ripple on the power because of the losses in that connector. Also running CPU intensive applications without proper cooling gives a lot of problems.

I use this as search node for my web shop. It's a little bit overkill so I would say its both for fun and work. I would have been happy with 2-3 nodes but it was a lot space in the box and the Tinker Boards are cheap Smile The web shop have only around 5000 items with a lot text but are growing.

Thanks for your interest!
Reply
#4
Nice work! I wouldn't call it odd at all. Very professional.

It looks like getting to the SD slots would be a little bit fiddly, but that's minor once the box is in production. Have you explored network boot?

As for support from Asus, I wouldn't worry. The hardware is pretty similar to other Rochchip boards, and there are enough community projects out there like Armbian and more are coming soon. If Asus quits, we'll still have good tools to work with.
Reply
#5
Very nice work and mount, happy to see projects like this!
Reply
#6
Exciting and enlightening project!

Could you please provide some more details about how you distribute the power supply to each unit? Like, do you use any TVS diode for protection, or just plug them onto the output?
Reply
#7
If I would need to change out an SD card it's only 4 screws holding the front panel and I have access to the SD card on all boards. I took a look at network boot but I can't see any gains in my use. It would be interesting to learn your experience with network boot and what kind of gains you have using it.

I'm using a TracoPower TOP100-105 power supply, it have built in overvoltage protection for the output. The output voltage can be adjusted a little and I've set it to 5.05V. Each Tinker Board have its own + and - wires going to the power supply so they don't interfere with each other. The switch have an separate power supply

Uptime is now 2 weeks+ for all nodes and they are in use 24/7. So far the average number of searches each day is 1062 and the average time to reply to a search request is 120ms.
Reply
#8
This is awesome!  I am trying to get an Elasticsearch cluster going myself on my tinkerboards, but I've been having a lot of obstacles..  I was just wondering, did you have previous experience with a lot of the issues related to getting it started that helped you navigate through troubleshooting?  Such as the fact that tinkerboards use an ARM processor and as far as I know, new versions of Elasticsearch are unable to work on an ARM processor.  Additionally, is there any resources you came across that helped you a great deal with setting up the server?  I have deployed Elasticsearch on a regular PC, but it seems to be quite difficult to try the same on a tinker board, especially with the RAM constraints.  Thank you!
Reply
#9
Hi,

Nice work!
Just a question, why are you using Tinker Board with an SD and not Tinker Board S with integrated emmc? 16GB is not enough for you?
The performance of read/write between SD card (even UHS1) and EEPROM is as you said for tinker board and raspberry, it's like night and day...
Smile Tinker a day, tinker everyday! Smile
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)