I’ve been experimenting with Minio, which is a rather nifty S3 storage server; specifically I wanted to user a few minio servers in HA/cluster and erasure across them all. To do this requires 4-16 servers all running minio, as this is a test I decided to use Scaleway who provide hardware cloud computing for a very reasonable price. Unfortunately, the issue I faced is I wanted to have 2 servers located in France and 2 servers in Amsterdam; albeit they didn’t have 2 x64 servers available in Amsterdam, only ARM and minio doesn’t have a pre-compiled binary for ARM…..
So begins a source compile….
Install the build environment
apt install build-essential
Down the pre-compiled go build environment
axel -a -n12 https://redirector.gvt1.com/edgedl/go/go1.9.2.linux-arm64.tar.gz
Extract
tar zxvf go1.9.2.linux-armv6l.tar.gz
Setup the environment
export GOROOT=${HOME}/go
export GOPATH=${HOME}/work
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
source ~/.bashrc
Run a couple of checks to make sure the go environment is loaded
go env
go version
“go get” minio
go get -u github.com/minio/minio
Minio binary is then built into /root/work/bin
root@minio2-amsterdam:~/work/bin# pwd
/root/work/bin
root@minio2-amsterdam:~/work/bin# ls
minio
Symbolicly link for ease
root@minio2-amsterdam:~# cd ~; ln -s /root/work/bin/minio
Leave a Reply