Difference between revisions of "MinIO"
Line 1: | Line 1: | ||
− | Installing MinIO on SME | + | == Installing MinIO on SME == |
Just some notes on the basics of installing MinIO | Just some notes on the basics of installing MinIO | ||
Line 15: | Line 15: | ||
− | Install Minio on | + | === Install Minio on SME v9 === |
− | + | "In this example, we’ll install Minio to /opt/minio, and [won't] configure it to run as a (systemd) service." | |
− | In this example, we’ll install Minio to /opt/minio, and [won't] configure it to run as a (systemd) service. | ||
Add a minio user [This is not the standard SME way but just for testing] | Add a minio user [This is not the standard SME way but just for testing] | ||
Line 34: | Line 33: | ||
chown -R minio:minio /opt/minio | chown -R minio:minio /opt/minio | ||
+ | ===Start MinIO=== | ||
+ | |||
+ | Start it manually so you can get the Keys that you will require. | ||
This will start on all interfaces: | This will start on all interfaces: | ||
Line 43: | Line 45: | ||
/opt/minio/bin/minio server --address 1.2.3.4:9000 /opt/minio/data | /opt/minio/bin/minio server --address 1.2.3.4:9000 /opt/minio/data | ||
+ | Once you have the keys you can then follow the instructions below to start it as a service (there is probably a way to automate all this) | ||
− | Note this only runs on http. It could run | + | Note this only runs on http. It could run https but for EXTERNAL access but you need to set it up with certs (see docs) |
+ | It is recommended to run a reverse proxy and use the general server SSL certs | ||
− | Make sure you keep a note of the AccessKey and SecretKey | + | Make sure you keep a note of the AccessKey and SecretKey when you start the first time |
You can access the server via http://1.2.3.4:9000 | You can access the server via http://1.2.3.4:9000 | ||
Line 54: | Line 58: | ||
/opt/minio/bin/minio --help | /opt/minio/bin/minio --help | ||
− | MinIO configuration client and commands | + | ===MinIO configuration client and commands=== |
+ | |||
+ | Be CAREFUL as you have mc - midnight commander installed !!!!! | ||
+ | |||
+ | https://github.com/minio/mc/blob/master/docs/minio-admin-complete-guide.md | ||
+ | https://docs.min.io/docs/minio-client-quickstart-guide | ||
− | https:// | + | wget https://dl.min.io/client/mc/release/linux-amd64/mc -) /opt/minio/bin |
+ | chmod +x /opt/minio/bin/mc | ||
+ | /opt/minio/bin/mc --help | ||
− | + | Add a location for your server: | |
+ | /opt/minio/bin/mc config host add minio http://192.168.1.1:9000 <ACCESS KEY> <SECRET KEY> | ||
− | Some other notes | + | Run a command: |
+ | |||
+ | /opt/minio/bin/mc admin info server minio | ||
+ | |||
+ | /opt/minio/bin/mc ls minio | ||
+ | [2019-10-16 16:54:53 CEST] 0B bucket1/ | ||
+ | |||
+ | Help: | ||
+ | /opt/minio/bin/mc -h | ||
+ | |||
+ | This can enable tracing for issues, modify configuration etc | ||
+ | |||
+ | |||
+ | ==== Some other notes ==== | ||
Init scripts that don't work on SME - note there is a Unit file for systemd | Init scripts that don't work on SME - note there is a Unit file for systemd | ||
Line 83: | Line 108: | ||
### END INIT INFO | ### END INIT INFO | ||
+ | # dir not used here | ||
# dir="/opt/minio" | # dir="/opt/minio" | ||
− | cmd="/opt/minio/bin/minio server --address 192.168. | + | # cmd is the whole command - it could be templated break it down in to bits |
+ | # add your own details etc etc | ||
+ | # Change the IP address to your local one | ||
+ | cmd="/opt/minio/bin/minio server --address 192.168.1.1:9000 /opt/minio/data" | ||
# user="" | # user="" | ||
Line 170: | Line 199: | ||
It would need: | It would need: | ||
+ | |||
ckkconfig minio on | ckkconfig minio on | ||
Revision as of 13:56, 17 October 2019
Installing MinIO on SME
Just some notes on the basics of installing MinIO
It works, but needs a startup script to automate start/stop
This could be used with your own instance of say [RClone](https://wiki.contribs.org/Rclone)
https://min.io/download#/linux https://docs.min.io/docs/minio-quickstart-guide.html https://docs.min.io/docs/minio-server-configuration-guide.html
Followed notes form here https://www.centosblog.com/install-configure-minio-object-storage-server-centos-linux/
Install Minio on SME v9
"In this example, we’ll install Minio to /opt/minio, and [won't] configure it to run as a (systemd) service."
Add a minio user [This is not the standard SME way but just for testing]
useradd -s /sbin/nologin -d /opt/minio minio
Set up directories
mkdir -p /opt/minio/bin mkdir /opt/minio/data # this will be your data partition
Install minio server binary and set it to executable. In this example we use the Linux x64 binary.
wget https://dl.minio.io/server/minio/release/linux-amd64/minio -O /opt/minio/bin/minio chmod +x /opt/minio/bin/minio
Ensure all files are owned by minio in /opt/minio:
chown -R minio:minio /opt/minio
Start MinIO
Start it manually so you can get the Keys that you will require.
This will start on all interfaces:
/opt/minio/bin/minio server /opt/minio/data
This will limit it to one interface:
/opt/minio/bin/minio server --address 1.2.3.4:9000 /opt/minio/data
Once you have the keys you can then follow the instructions below to start it as a service (there is probably a way to automate all this)
Note this only runs on http. It could run https but for EXTERNAL access but you need to set it up with certs (see docs) It is recommended to run a reverse proxy and use the general server SSL certs
Make sure you keep a note of the AccessKey and SecretKey when you start the first time
You can access the server via http://1.2.3.4:9000
Other options
/opt/minio/bin/minio --help
MinIO configuration client and commands
Be CAREFUL as you have mc - midnight commander installed !!!!!
https://github.com/minio/mc/blob/master/docs/minio-admin-complete-guide.md https://docs.min.io/docs/minio-client-quickstart-guide
wget https://dl.min.io/client/mc/release/linux-amd64/mc -) /opt/minio/bin chmod +x /opt/minio/bin/mc /opt/minio/bin/mc --help
Add a location for your server:
/opt/minio/bin/mc config host add minio http://192.168.1.1:9000 <ACCESS KEY> <SECRET KEY>
Run a command:
/opt/minio/bin/mc admin info server minio
/opt/minio/bin/mc ls minio [2019-10-16 16:54:53 CEST] 0B bucket1/
Help:
/opt/minio/bin/mc -h
This can enable tracing for issues, modify configuration etc
Some other notes
Init scripts that don't work on SME - note there is a Unit file for systemd
git clone https://github.com/minio/minio-service.git
Initscript borrowed from here:
https://github.com/fhd/init-script-template/blob/master/template
#!/bin/sh ### BEGIN INIT INFO # Provides: # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start daemon at boot time # Description: Enable service provided by daemon. ### END INIT INFO # dir not used here # dir="/opt/minio" # cmd is the whole command - it could be templated break it down in to bits # add your own details etc etc # Change the IP address to your local one cmd="/opt/minio/bin/minio server --address 192.168.1.1:9000 /opt/minio/data" # user="" name=`basename $0` pid_file="/var/run/$name.pid" stdout_log="/var/log/$name.log" stderr_log="/var/log/$name.err" get_pid() { cat "$pid_file" } is_running() { [ -f "$pid_file" ] && ps -p `get_pid` > /dev/null 2>&1 } case "$1" in start) if is_running; then echo "Already started" else echo "Starting $name" cd "$dir" $cmd >> "$stdout_log" 2>> "$stderr_log" & echo $! > "$pid_file" if ! is_running; then echo "Unable to start, see $stdout_log and $stderr_log" exit 1 fi fi ;; stop) if is_running; then echo -n "Stopping $name.." kill `get_pid` for i in 1 2 3 4 5 6 7 8 9 10 # for i in `seq 10` do if ! is_running; then break fi echo -n "." sleep 1 done echo if is_running; then echo "Not stopped; may still be shutting down or shutdown may have failed" exit 1 else echo "Stopped" if [ -f "$pid_file" ]; then rm "$pid_file" fi fi else echo "Not running" fi ;; restart) $0 stop if is_running; then echo "Unable to stop, will not attempt to start" exit 1 fi $0 start ;; status) if is_running; then echo "Running" else echo "Stopped" exit 1 fi ;; *) echo "Usage: $0 {start|stop|restart|status}" exit 1 ;; esac exit 0
It would need:
ckkconfig minio on
You can probably link to daemon tool:
ln -s /etc/rc.d/init.d/e-smith-service S85minio
config set minio service status enabled
service minio start|stop|restart|status