Ansible role to install the minio S3 compatible object storage server (https://minio.io)
Go to file
atosatto 15ad3a3604 [ci skip] Automatic changelog update 2019-12-17 05:43:36 +00:00
.travis Pin the version of the travis releaser script to prevent the CI from hanging (#26) 2018-08-20 22:21:51 +02:00
defaults Add 'minio_server_release' and 'minio_client_release' variable. 2019-07-18 11:20:41 +02:00
handlers Restart minio service on binary or service config update 2019-07-19 11:20:05 +02:00
meta Fix lint error. 2019-07-01 14:39:41 +02:00
molecule Fix ansible-lint error on double quote (#37) 2019-07-23 17:00:01 +02:00
tasks Update system user (#41) 2019-12-17 06:25:27 +01:00
templates Systemd service: Restart=always (#36) 2019-07-23 17:09:34 +02:00
vars Simplify go_arch setup 2019-07-04 10:51:52 +02:00
.gitignore test on 3 different ansible versions 2018-06-25 12:15:49 +02:00
.travis.yml Fix Travis errors. 2019-07-01 14:37:26 +02:00
.yamllint Improved tasks and tests layout (#25) 2018-08-20 20:25:15 +02:00
CHANGELOG.md [ci skip] Automatic changelog update 2019-12-17 05:43:36 +00:00
LICENSE.md First commit 2017-01-02 17:52:58 +01:00
MAINTAINERS.md Add a simple MAINTAINERS file (#6) 2018-06-25 11:24:59 +02:00
README.md Add 'minio_server_release' and 'minio_client_release' variable. 2019-07-18 11:20:41 +02:00
test-requirements.txt test on 3 different ansible versions 2018-06-25 12:15:49 +02:00
tox.ini Update tox.ini 2019-07-01 14:53:17 +02:00

README.md

minio logo

Ansible Role: Minio

Build Status License Ansible Role GitHub tag

Install and configure the Minio S3 compatible object storage server on RHEL/CentOS and Debian/Ubuntu.

Requirements

None.

Role Variables

Available variables are listed below, along with default values (see defaults/main.yml):

minio_server_bin: /usr/local/bin/minio
minio_client_bin: /usr/local/bin/mc

Installation path of the Minio server and client binaries.

minio_server_release: ""
minio_client_release: ""

Release to install for both server and client; lastest if the default. Can be 'RELEASE.2019-06-27T21-13-50Z' for instance.

minio_user: minio
minio_group: minio

Name and group of the user running the minio server. NB: This role automatically creates the minio user and/or group if these does not exist in the system.

minio_server_envfile: /etc/default/minio

Path to the file containing the minio server configuration ENV variables.

minio_server_addr: ":9091"

The Minio server listen address.

minio_server_datadirs:
  - /var/lib/minio

Directories of the folder containing the minio server data

minio_server_make_datadirs: true

Create directories from minio_server_datadirs

minio_server_cluster_nodes: [ ]

Set a list of nodes to create a distributed cluster.

In this mode, ansible will create your server datadirs, but use this list for the server startup. Note you will need a number of disks to satisfy Minio's distributed storage requirements.

Example:

minio_server_datadirs:
  - '/minio-data'
  - ...
minio_server_cluster_nodes:
  - 'https://server1/minio-data'
  - 'https://server2/minio-data'
  - 'https://server3/minio-data'
  - ...
minio_server_env_extra: ""

Additional environment variables to be set in Minio server environment

minio_server_opts: ""

Additional CLI options that must be appended to the minio server start command.

minio_access_key: ""
minio_secret_key: ""

Minio access and secret keys.

minio_install_server: true
minio_install_client: true

Switches to disable minio server and/or minio client installation.

Dependencies

None.

Example Playbook

- name: "Install Minio"
  hosts: all
  become: yes
  roles:
    - { role: atosatto.minio }
  vars:
    minio_server_datadirs: [ "/minio-test" ]

Changelog

See changelog.

License

MIT