Utilizzo di IBM Cloud Direct Link per il collegamento a IBM Cloud Object Storage
Puoi configurare IBM Cloud® Direct Link in modo da avere accesso a IBM Cloud Object Storage (COS). Sebbene i metodi qui descritti siano stati ideati e testati con COS, possono funzionare anche per altri servizi di IBM Cloud.
Per policy, IBM Cloud Direct Link nega l'accesso a IBM Cloud endpoint di servizio privato, compresi quegli endpoint utilizzati da COS. La tecnica descritta in questo documento si basa sull'accesso indiretto al COS attraverso i server ospitati nell'account IBM Cloud del cliente. Dopo la configurazione, il server di ogni cliente può inoltrare il traffico in modo bidirezionale tra gli endpoint del servizio privato IBM Cloud e le loro reti remote collegate da Direct Link.
Che cos'è IBM Cloud Object Storage?
IBM Cloud Object Storage (COS) è una soluzione su scala web che archivia dati non strutturati. Fornisce affidabilità, sicurezza, disponibilità e ripristino di emergenza senza replica manuale.
Le informazioni memorizzate all'interno di IBM Cloud Object Storage sono criptate e disperse in molte località geografiche. È accessibile attraverso un'implementazione dell'API S3. Questo servizio utilizza le tecnologie di storage distribuito fornite dal servizio IBM Cloud Object Storage.
IBM COS è disponibile in tre configurazioni:
- Il servizio Cross Region offre una maggiore durabilità e disponibilità rispetto all'utilizzo di una singola regione, ma al costo di una latenza leggermente superiore. Questo servizio è disponibile oggi negli Stati Uniti e in Europa. Utilizzando un sito Virtual Router Appliance (VRA), si può anche utilizzare Direct Link per connettersi a COS nella regione Asia-Pacifico.
- Il servizio Regionale fornisce il reverse. Distribuisce gli oggetti in molte zone di disponibilità all'interno di una singola regione. Se una regione o una zona di disponibilità è inaccessibile, l'archivio oggetti continua a funzionare senza problemi. Le modifiche mancate vengono applicate quando il data center inaccessibile torna online.
- Il servizio Single Site offre un accesso accessibile a COS in un data center selezionato.
Endpoint pubblico e privato COS
Gli endpoint sono URL che le applicazioni utilizzano per immettere i comandi COS e scambiare i dati con COS. Ogni endpoint utilizza la stessa API (Application Programming Interface) per interagire con COS.
I server forniti all'interno di IBM Cloud utilizzano endpoint API privati per i servizi, compreso COS. Gli endpoint privati forniscono ai tuoi server IBM Cloud elevata velocità, connessioni dirette ai servizi senza ulteriori costi per la larghezza di banda.
Gli endpoint privati COS forniscono ai clienti di IBM Cloud l'accesso agli stessi dati COS accessibili dall'interno di IBM Cloud, mentre gli endpoint pubblici consentono l'accesso da qualsiasi postazione dotata di Internet.
Si applicano due avvertimenti agli endpoint pubblici COS:
- L'utilizzo degli endpoint pubblici può comportare dei costi misurati per larghezza di banda oltre agli addebiti di utilizzo imposti dal servizio COS.
- Anche se tutti i dati vengono crittografati in transito, i clienti possono avere problemi di privacy o restrizioni normative legate ai dati trasmessi via Internet.
Che cos'è IBM Cloud Direct Link?
IBM Cloud Direct Link on Classic è una suite di prodotti che offre ai clienti la possibilità di creare connessioni sicure e private tra i loro ambienti di rete remoti e le loro implementazioni IBM Cloud. I dati scambiati da Direct Link non sono mai esposti a Internet.
Utilizzo di Cloud Object Storage (COS) su IBM Cloud Direct Link
IBM gli ingegneri hanno sviluppato un metodo che consente a un cliente di IBM Cloud che acquista COS e Direct Link di effettuare connessioni remote agli endpoint privati di COS. Questo tipo di connessione estende i vantaggi degli endpoint del servizio privato, in questo modo possono essere utilizzati dai sistemi client al di fuori delle funzioni di IBM Cloud.
Questa soluzione viene schematizzata e descritta nelle seguenti sezioni.
Proxy inverso
Premessa di base: I client remoti passano le richieste, comprese le credenziali sicure, attraverso un server privato a COS.

Le richieste COS HTTPS (HTTP sicuro) sono avviate da un client in un sito remoto. Vengono trasmessi in modo sicuro attraverso IBM Cloud Direct Link, puntando su uno dei cluster di server reverse proxy distribuiti nell'account IBM Cloud del cliente. Da qui, le richieste vengono passate a un endpoint privato COS, elaborate e quindi i risultati vengono restituiti al client remoto chiamante.
Qualsiasi codice client di esempio che funziona con COS dovrebbe funzionare anche attraverso un server reverse proxy. L'unica modifica necessaria è che, invece di puntare a un endpoint privato COS URL pubblicato da IBM, il client punta all'indirizzo IP o URL del server reverse proxy.
Installazione del tuo proxy inverso Nginx
NginX è un server web open source maturo, compatto e veloce che eccelle in compiti specializzati, tra cui il ruolo di reverse proxy server.
Le istruzioni e le informazioni di configurazione che seguono (per impostare un server proxy inverso NginX ) possono funzionare dopo che le hai adattate al tuo ambiente. Se rimani bloccato o hai bisogno di ulteriori informazioni, consulta la sezione del proxy inverso della documentazione Nginx o cerca degli esempi su StackOverflow.
- Eseguire il provisioning dei server VSI o bare metal con una versione minima di RHEL o di CentOS Linux (consigliato).
- Per ogni VSI, abilita le seguenti regole del gruppo di sicurezza nell'interfaccia pubblica:
allow_http
,allow_https
,allow_outbound
,allow_ssh
- Per ogni VSI, abilitare le regole
allow_all
eallow_outbound
sull'interfaccia privata; selezionare Salva. - Utilizzando PuTTY in Windows o il programma di terminale del desktop,
ssh
nel nuovo server come root. - Aggiornare il sistema operativo OS (
yum update
). - Installare il repository EPEL (
yum install epel-release
). - Installare NginX (
yum install nginx
). - Avvia NginX (
nginx
) e apri l'indirizzo IP del tuo server in un browser. - L'ubicazione predefinita di
nginx.conf
è/etc/nginx
. Crea una copia sicura. - Spostate il file di configurazione di esempio
nginx.conf
in/etc/nginx
. - Acquistate i certificati SSL tramite la console IBM Cloud o eseguite il comando
yum install easy-rsa
e consultate la documentazione online preferita per i suggerimenti sulla creazione di certificati autofirmati. - Aggiungere le informazioni sul certificato al file di configurazione,
nginx.conf
. - Testate la configurazione modificata di NginX con il comando
nginx -t
. - Se il test viene superato, riavviare
nginx
con il comandonginx -s quit; sleep 3; nginx
. - Il client può ora inviare richieste COS agli IP o agli URL del server NginX (proxy).
Note:
- La soluzione presuppone che Direct Link sia stato ordinato e distribuito correttamente, ma può essere testata anche senza.
- Con
proxy_cache
è possibile utilizzare una memoria o una cache su disco opzionale. - Un valore più lungo di
proxy_read_timeout
potrebbe essere necessario per trasferimenti di file più grandi. - Utilizzare
keepalive
o Pacemaker per l'alta disponibilità (failover automatico).
File di configurazione: nginx.conf
Viene mostrato il file di configurazione di esempio nella seguente sezione. Puoi copiarlo e incollarlo.
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
events {
worker_connections 1024;
}
http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 5;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
proxy_http_version 1.1;
proxy_buffering off;
proxy_intercept_errors on;
# IBM COS Endpoints
# US
server {
listen 443 ssl http2;
server_name us-cos.myibmcloud.com;
ssl_certificate "/etc/pki/tls/certs/star.myibmcloud.com.pem";
ssl_certificate_key "/etc/pki/tls/private/star.myibmcloud.com.key";
location / {
proxy_set_header Host $server_name;
proxy_pass https://s3-api.us-geo.objectstorage.service.networklayer.com;
}
}
# Dallas
server {
listen 443 ssl http2;
server_name dal-cos.myibmcloud.com;
ssl_certificate "/etc/pki/tls/certs/star.myibmcloud.com.pem";
ssl_certificate_key "/etc/pki/tls/private/star.myibmcloud.com.key";
location / {
proxy_set_header Host $server_name;
proxy_pass https://s3-api.dal-us-geo.objectstorage.service.networklayer.com;
}
}
}
Vedi Endpoint e ubicazioni di memoria per un elenco di endpoint privati da utilizzare in queste voci proxy_pass
.
Suggerimenti:
- Per aumentare la scalabilità e la resilienza, distribuire più server proxy associati a diversi endpoint.
- Utilizzare il DNS round-robin sul lato client per funzionalità rudimentali di failover e bilanciamento del carico.
- I server proxy possono essere posizionati dietro il VRA (Virtual Router Appliance) per la protezione e la registrazione centralizzata.
Gestione e fornitura di IBM Cloud funzionalità
Questa sezione fornisce link rapidi alla documentazione per alcune offerte di IBM Cloud PaaS e SaaS a cui potresti collegarti utilizzando IBM Cloud Direct Link.
Provisioning di server metallici bare
Per istruzioni dettagliate su come fornire server bare metal, fare riferimento a Provisioning: Selfie dai server più diffusi.
Provisioning di Virtual Router Appliance (VRA)
Per istruzioni dettagliate su come prevedere una VRA, consultare la VRA Introduzione Guida.
Provisioning di IBM Cloud Object Storage (COS)
- Per istruzioni dettagliate su come eseguire il provisioning di COS, fai riferimento alla Guida Cloud Object Storage.
- Utilizza uno degli endpoint privati (elencati precedentemente) per creare un'interfaccia con il tuo bucket o con ogni oggetto nel tuo account COS fornito.