Minio¶
Minio is an object store very similar to AWS S3. It allows your data to be remotely accessible via the S3 protocol.
Python API¶
Steps to access data using Python Minio client API
1) Log into Minio.¶
If you get an error "Expecting a policy to be set for user X
or one of their groups", contact Pasha, Arfath or Kohli, Armaan with the 'X' String and the names of the buckets you need access to so we can give you access to these buckets.
2) Create a "Service Account" with a simple access key and the recommended secret key.¶
Copy the secret key to clipboard on creation.
3) Store your credentials in an env file.¶
Create .env¶
1 2 3 4 5 6 7 8 9 10 11 12 |
|
4) Change permissions to the dotenv file so only you can read and write to it.¶
Permissions¶
1 2 |
|
5) Install the msk_cdm
python package¶
1 2 3 4 |
|
6) Get the full SSL certifcate chain for the Minio instance¶
SSL Cert¶
1 2 3 4 |
|
URL | HOST | PORT |
---|---|---|
https://pllimsksparky3:9001/ | pllimsksparky3 | 9000 |
7) Demo¶
Try our Jupyter notebook demonstrating how download and upload data to MinIO
Access via R¶
Data stored in minio can be accessed in R in the following fashion:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
|
Troubleshooting¶
-
If while making a minio client call (mc) you get a certificate error, use '–insecure' in your call to disable certificate verification. The connection will still be encrypted, ony that the certificate verification process with a certificate authority will be skipped in the SSL protocol. This is sometimes necessary for self-signed certificates. Our certificate is a self-signed certificate issued by MSK Open Systems .
-
mc:
Unable to initialize new alias from the provided credentials. Get "https://pllimsksparky3:9006": dial tcp: lookup pllimsksparky3 on 140.163.135.19:53: server misbehaving. - Solution: Ping the server to get its IP address and add it to you '/etc/hosts' file as '10.254.130.16 pllimsksparky3'.