cs:navody:object_storage:cesnet_s3:start

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
Následující verze Obě strany příští revize
cs:navody:object_storage:cesnet_s3:start [27.05.2020 15:19]
Lukáš Strnad [Linux klient AWS CLI]
cs:navody:object_storage:cesnet_s3:start [30.11.2020 16:51]
Lukáš Strnad [Ovládání AWS CLI - api-level (s3api)]
Řádek 1: Řádek 1:
-===== Připojení a konfigurace CESNET s3 =====+====== Připojení a konfigurace CESNET s3 ======
  
- +{{anchor:​aws_cli}} 
-==== Linux klient AWS CLI ====+===== Linux klient AWS CLI =====
  
 Klient AWS CLI je standardní nástroj podporující práci přes s3 rozhraní. Klient je napsaný v pythonu, je tedy nezbytné mít nainstalovaný **python alespoň ve verzi 3.3+**. Dle oficiální dokumentace je sice podporován i python 2.6.5+, nicméně můžete narazit na problémy s kompatibilitou s ohledem na námi provozovanou verzi Cephu. Klient AWS CLI je standardní nástroj podporující práci přes s3 rozhraní. Klient je napsaný v pythonu, je tedy nezbytné mít nainstalovaný **python alespoň ve verzi 3.3+**. Dle oficiální dokumentace je sice podporován i python 2.6.5+, nicméně můžete narazit na problémy s kompatibilitou s ohledem na námi provozovanou verzi Cephu.
Řádek 8: Řádek 8:
 <note important>​Pokud provozujete CENTOS 7, pravděpodobně budete řešit problém s verzí pythonu, která je ve výchozím stavu 2.7.5. V takovém případě doporučujeme buď upgrade na CENTOS 8, kde je již implementovan python 3+, případně použít SCL (Software Collection environment).</​note>​ <note important>​Pokud provozujete CENTOS 7, pravděpodobně budete řešit problém s verzí pythonu, která je ve výchozím stavu 2.7.5. V takovém případě doporučujeme buď upgrade na CENTOS 8, kde je již implementovan python 3+, případně použít SCL (Software Collection environment).</​note>​
  
-===Instalace AWS CLI a jeho konfigurace===+====Instalace AWS CLI a jeho konfigurace====
 Nejprve nainstalujeme AWS CLI klienta pomoci pip, kde **<​nowiki>​--upgrade</​nowiki>​** provede upgrade všech již nainstalovaných součástí;​ **<​nowiki>​--user</​nowiki>​** použije podadresář aktuálního uživatele, pod kterým spouštíte pip, aby nedošlo k modifikaci systémových knihoven. Nejprve nainstalujeme AWS CLI klienta pomoci pip, kde **<​nowiki>​--upgrade</​nowiki>​** provede upgrade všech již nainstalovaných součástí;​ **<​nowiki>​--user</​nowiki>​** použije podadresář aktuálního uživatele, pod kterým spouštíte pip, aby nedošlo k modifikaci systémových knihoven.
  
Řádek 34: Řádek 34:
 //AWS Access Key ID// - access key, který jste si vygenerovali \\ //AWS Access Key ID// - access key, který jste si vygenerovali \\
 //Secret Access Key// - secret key, který jste si vygenerovali \\ //Secret Access Key// - secret key, který jste si vygenerovali \\
-//Default region name// - prefix pro servery, na které budete zasílat vaše požadavky, **Zde ponecháme nevyplněné!** \\+//Default region name// - prefix pro servery, na které budete zasílat vaše požadavky, **Zde ponecháme nevyplněné!** V případě požadavku některých SW, kupř. Veeam, zde vyplňte jako region **storage** \\
 //Default output format// - výstupní formát dat (json, text, table) \\ //Default output format// - výstupní formát dat (json, text, table) \\
  
 <note important>​Pro správnou funkčnost je nezbytné překonfigurovat **endpoint-url** na servery CESNETu. K tomu budeme potřebovat nainstalovat nástroj [[https://​github.com/​wbingli/​awscli-plugin-endpoint|awscli-plugin-endpoint]],​ viz návod níže.</​note>​ <note important>​Pro správnou funkčnost je nezbytné překonfigurovat **endpoint-url** na servery CESNETu. K tomu budeme potřebovat nainstalovat nástroj [[https://​github.com/​wbingli/​awscli-plugin-endpoint|awscli-plugin-endpoint]],​ viz návod níže.</​note>​
  
-== Instalace awscli-plugin-endpointu ==+==== Instalace awscli-plugin-endpointu ​====
 Nejdříve provedeme instalaci pomocí pip. Nejdříve provedeme instalaci pomocí pip.
 <​code>​pip3.6 install awscli-plugin-endpoint --user</​code>​ <​code>​pip3.6 install awscli-plugin-endpoint --user</​code>​
Řádek 49: Řádek 49:
 <​code>​aws configure set plugins.endpoint awscli_plugin_endpoint</​code>​ <​code>​aws configure set plugins.endpoint awscli_plugin_endpoint</​code>​
  
-Následně pomocí pluginu přidáme adresu CESNET s3 endpointu. +Následně pomocí pluginu přidáme adresu CESNET s3 endpointu ​pro plzeňské úložistě s kódovým označením CL2: 
-<​code>​aws configure --profile pepa_servis set s3.endpoint_url https://s3.cl1.du.cesnet.cz</​code>​+<​code>​aws configure --profile pepa_servis set s3.endpoint_url https://s3.cl2.du.cesnet.cz</​code>​
  
 Výše uvedené příkazy by měly provést změny ve vašem configu, viz níže. Výše uvedené příkazy by měly provést změny ve vašem configu, viz níže.
Řádek 59: Řádek 59:
 output = text output = text
 s3 = s3 =
-    endpoint_url = https://s3.cl1.du.cesnet.cz+    endpoint_url = https://s3.cl2.du.cesnet.cz
 [plugins] [plugins]
 endpoint = awscli_plugin_endpoint endpoint = awscli_plugin_endpoint
Řádek 72: Řádek 72:
 </​code>​ </​code>​
  
-==Ovládání AWS CLI - high-level (s3)== ​+====Ovládání AWS CLI - high-level (s3)==== 
 **Pro zobrazení plné nápovědy (dostupných příkazů) můžeme využít help** **Pro zobrazení plné nápovědy (dostupných příkazů) můžeme využít help**
  
Řádek 132: Řádek 132:
  
  
-==Ovládání AWS CLI - api-level (s3api)== ​+=====Ovládání AWS CLI - api-level (s3api)===== 
 <​code>​$ aws s3api help</​code>​ <​code>​$ aws s3api help</​code>​
  
Řádek 147: Řádek 147:
 [[https://​s3tools.org/​download|S3cmd]] je bezplatný nástroj příkazového řádku a klient pro nahrávání,​ načítání a správu dat v s3 cloudových úložišťích. S3cmd je psán v Pythonu. Je to open source projekt dostupný pod GNU Public License v2 (GPLv2) a je zdarma pro komerční i soukromé použití. [[https://​s3tools.org/​download|S3cmd]] je bezplatný nástroj příkazového řádku a klient pro nahrávání,​ načítání a správu dat v s3 cloudových úložišťích. S3cmd je psán v Pythonu. Je to open source projekt dostupný pod GNU Public License v2 (GPLv2) a je zdarma pro komerční i soukromé použití.
  
-=== Instalace s3cmd ===+<note important>​Jako preferovaný nástroj doporučujeme spíše [[cs:​navody:​object_storage:​cesnet_s3:​start#​aws_cli|AWS CLI]]. \\ 
 +U s3cmd jsme v některých případech zaznamenali problémy. Kupříkladu jména backetů nesmí začínat číslem a velká písmena. 
 +</​note>​ 
 + 
 +===== Instalace s3cmd =====
  
 s3cmd je k dispozici ve výchozích repozitářích rpm pro systémy CentOS, RHEL a Ubuntu. Nainstalujte jej pomocí jednoduchého spuštění následujících příkazů ve vašem systému. s3cmd je k dispozici ve výchozích repozitářích rpm pro systémy CentOS, RHEL a Ubuntu. Nainstalujte jej pomocí jednoduchého spuštění následujících příkazů ve vašem systému.
Řádek 161: Řádek 165:
  
  
-=== Konfigurace s3cmd  ===+==== Konfigurace s3cmd  ​====
  
 Pro konfiguraci s3cmd potřebujete **Access Key** a **Secret Key**, který jste si vygenerovali. Po získání klíčů je vložte do konfiguračního souboru **/​home/​user/​.s3cfg**. Pro konfiguraci s3cmd potřebujete **Access Key** a **Secret Key**, který jste si vygenerovali. Po získání klíčů je vložte do konfiguračního souboru **/​home/​user/​.s3cfg**.
  
   [default]   [default]
-  host_base = https://s3.cl1.du.cesnet.cz+  host_base = https://s3.cl2.du.cesnet.cz
   use_https = True   use_https = True
-  bucket_location = cze 
   access_key = xxxxxxxxxxxxxxxxxxxxxx   access_key = xxxxxxxxxxxxxxxxxxxxxx
   secret_key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx   secret_key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 +  host_bucket = s3.cl2.du.cesnet.cz
   gpg_command = /​​usr/​​bin/​​gpg   gpg_command = /​​usr/​​bin/​​gpg
   gpg_decrypt = %(gpg_command)s -d --verbose --no-use-agent --batch --yes --passphrase-fd %(passphrase_fd)s -o %(output_file)s %(input_file)s   gpg_decrypt = %(gpg_command)s -d --verbose --no-use-agent --batch --yes --passphrase-fd %(passphrase_fd)s -o %(output_file)s %(input_file)s
   gpg_encrypt = %(gpg_command)s -c --verbose --no-use-agent --batch --yes --passphrase-fd %(passphrase_fd)s -o %(output_file)s %(input_file)s   gpg_encrypt = %(gpg_command)s -c --verbose --no-use-agent --batch --yes --passphrase-fd %(passphrase_fd)s -o %(output_file)s %(input_file)s
   gpg_passphrase = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx   gpg_passphrase = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
-   
-**Alternativně lze konfigurační soubor získat použitím interaktivního průvodce:​** 
- 
- 
- 
-<hidden **s3cmd --configure**>​  
-  ​ 
-  \\ 
-  ​ 
-  $ s3cmd --configure 
-   
-  Enter new values or accept defaults in brackets with Enter. 
-  Refer to user manual for detailed description of all options. 
-  
-  Access key and Secret key are your identifiers for Amazon S3. Leave them empty for using the env variables. 
-  Access Key: xxxxxxxxxxxxxxxxxxxxxx 
-  Secret Key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
-  Default Region [US]: cze 
-  S3 Endpoint [s3.amazonaws.com]:​​ s3.cl1.du.cesnet.cz 
-  DNS-style bucket+hostname:​​port template for accessing a bucket [%(bucket)s.s3.amazonaws.com]:​ ​ 
-  Encryption password: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
-  Path to GPG program [/​​usr/​​bin/​​gpg]:​​ 
-  Use HTTPS protocol [Yes]: 
-  Test access with supplied credentials?​​ [Y/n] y 
-  Save settings? [y/N] y 
-  Configuration saved to '​​~/​​.s3cfg'​​ 
- 
-</​hidden>​ 
- 
- 
-\\ 
  
  
-=== Použití s3cmd příkazů ===+==== Použití s3cmd příkazů ​====
  
 s3 příkazy podporují běžné operace s buckety, například vytváření,​ listování a mazání. s3 příkazy podporují běžné operace s buckety, například vytváření,​ listování a mazání.
Poslední úprava:: 12.04.2024 18:11