99 lines
2.3 KiB
Markdown
99 lines
2.3 KiB
Markdown
minio
|
|
=========
|
|
|
|
|
|
- Create minio user
|
|
- Create minio disque pool
|
|
- Install and configure Minio service
|
|
- If necessary, install ssl certificat
|
|
- Install client mc
|
|
|
|
Requirements
|
|
------------
|
|
|
|
Package minio.rpm and mc binary (client minio) must be located in role files directory
|
|
Certificats could be located in files/certs ( optionnal)
|
|
```
|
|
tree roles/minio/files/
|
|
roles/minio/files/
|
|
├── certs
|
|
│ ├── Minio.crt
|
|
│ ├── Minio.key
|
|
│ └── zen6ca.crt
|
|
├── mc
|
|
└── minio.rpm
|
|
```
|
|
Role Variables
|
|
--------------
|
|
## System information defined in vars/main.yml
|
|
```
|
|
minio_user: minio-user
|
|
minio_group: minio-user
|
|
minio_rootdir: /opt/minio
|
|
```
|
|
|
|
## LVM Vars
|
|
Must de defined un hosts_vars or group_vars
|
|
```
|
|
lvm:
|
|
pvname: /dev/nvme0n1 # PV to create ( unique)
|
|
vgname: vg_minio # VG to create ( unique)
|
|
lvs:
|
|
- lvname: lv_minio01 # Fist lv to create
|
|
size: 10g
|
|
fstype: xfs
|
|
mountpoint: "{{minio_rootdir}}/disk01"
|
|
owner: "{{minio_user}}" # not change
|
|
group: "{{minio_group}}" # not change
|
|
...
|
|
...
|
|
...
|
|
- lvname: lv_minio04 # Last LV to create
|
|
size: 10g
|
|
fstype: xfs
|
|
mountpoint: /opt/minio/disk04
|
|
owner: "{{minio_user}}"
|
|
group: "{{minio_group}}"
|
|
```
|
|
## Minio vars
|
|
Must de defined un hosts_vars or group_vars
|
|
```
|
|
minio:
|
|
admin_user: adminminio # Minio Root user
|
|
admin_passwd: adminminio # Minio Root user password
|
|
root_dir: "{{minio_rootdir}}"
|
|
disks_pool: "{{minio_rootdir}}/opt/minio/disk0{1...4}" # Disk pool : must be coherant with lvm data
|
|
url: "https://myminio.my.lan:9000" # APi S3 url
|
|
console_port: 9001
|
|
key: certs/Minio.key # minio ssl key local path in ansible file dir (optionnal)
|
|
cert: certs/Minio.crt # minio ssl cert local path in ansible file dir (optionnal)
|
|
cacert: certs/zen6ca.crt # minio ssl CA local path in ansible file dir (optionnal)
|
|
```
|
|
Dependencies
|
|
------------
|
|
|
|
none
|
|
|
|
Example Playbook
|
|
----------------
|
|
|
|
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
|
```
|
|
---
|
|
- name: Install minio
|
|
hosts:
|
|
- minio
|
|
roles:
|
|
- minio
|
|
```
|
|
|
|
License
|
|
-------
|
|
|
|
BSD
|
|
|
|
Author Information
|
|
------------------
|
|
|
|
An optional section for the role authors to include contact information, or a website (HTML is not allowed).
|