VPC: Configurazione degli indirizzi IP autorizzati per IBM Cloud Object Storage
Cloud virtuale privato
È possibile autorizzare gli indirizzi IP di origine del VPC Cloud Service Endpoint ad accedere al bucket IBM Cloud Object Storage. Quando configuri gli indirizzi IP autorizzati, puoi accedere ai tuoi dati del bucket solo da questi indirizzi IP; ad esempio, in un pod dell'applicazione.
- Autorizzazioni minime richieste
- Ruolo di accesso al servizio Gestore per il servizio Red Hat OpenShift on IBM Cloud.
- Il ruolo di accesso del servizio Writer per il servizio IBM Cloud Object Storage.
-
Segui le istruzioni per installare il plug-in
ibmcHelm. Assicurarsi di installareibm-object-storage-plugine impostare l'opzionebucketAccessPolicysutrue. -
Crea una credenziale del servizio
ManagerHMAC e una credenziale del servizioWriterHMAC per la tua istanza IBM Cloud Object Storage. -
Codifica le
apikeydalle tue credenziali del gestore IBM Cloud Object Storage a base64.echo -n "<cos_manager_apikey>" | base64 -
Codifica le credenziali del writer
access-keyesecret-keyda IBM Cloud Object Storage a base64.echo -n "<cos_writer_access-key>" | base64 echo -n "<cos_writer_secret-key>" | base64 -
Crea un file di configurazione segreto con i valori che hai codificato. Per
access-keyesecret-key, immetti la codifica base64access-keyesecret-keydalle credenziali HMAC del programma di scrittura che hai creato. Perres-conf-apikey, immetti la codifica base64apikeydalle credenziali HMAC del gestore.apiVersion: v1 kind: Secret metadata: name: <secret_name> type: ibm/ibmc-s3fs data: access-key: # Enter your base64 encoded COS Writer access-key secret-key: # Enter your base64 encoded COS Writer secret-key res-conf-apikey: # Enter your base64 encoded COS Manager api-key -
Crea il segreto nel tuo cluster.
oc create -f secret.yaml -
Verificare che il segreto sia stato creato.
oc get secrets -
Crea una PVC che utilizza il segreto che hai creato. Imposta le annotazioni
ibm.io/auto-create-bucket: "true"eibm.io/auto_cache: "true"per creare automaticamente un bucket che memorizza nella cache i tuoi dati.kind: PersistentVolumeClaim apiVersion: v1 metadata: name: <pvc_name> annotations: ibm.io/auto-create-bucket: "true" ibm.io/auto-delete-bucket: "false" ibm.io/auto_cache: "true" ibm.io/bucket: "<bucket_name>" ibm.io/secret-name: "<secret_name>" ibm.io/secret-namespace: "<secret-namespace>" # By default, the COS plug-in searches for your secret in the same namespace where you create the PVC. If you created your secret in a namespace other than the namespace where you want to create your PVC, enter the namespace where you created your secret. spec: accessModes: - ReadWriteMany resources: requests: storage: 8Gi storageClassName: ibmc-s3fs-standard-regional volumeMode: Filesystem -
Ottieni un elenco degli indirizzi IP di origine dell'endpoint del servizio cloud del tuo VPC.
-
Ottieni un elenco dei tuoi VPC.
ibmcloud is vpcs -
Ottieni i dettagli del tuo VPC e prendi nota dei tuoi indirizzi IP di origine dell'endpoint del servizio cloud.
ibmcloud is vpc <vpc_ID>Output di esempio
... Cloud Service Endpoint source IP addresses: Zone Address us-south-1 10.249.XXX.XX us-south-2 10.249.XXX.XX us-south-3 10.249.XXX.XX
-
-
Verifica che gli indirizzi IP di origine dell'endpoint del tuo VPC siano autorizzati nel tuo bucket IBM Cloud Object Storage.
-
Dal tuo IBM Cloud Object Storage, seleziona la tua istanza IBM Cloud Object Storage e seleziona il bucket che hai specificato nella tua PVC.
-
Seleziona Politiche di accesso > IP autorizzati e verifica che siano visualizzati gli indirizzi IP di origine dell'endpoint del servizio cloud del tuo VPC.
Non puoi leggere o scrivere nel tuo bucket dalla console. Puoi accedere al tuo bucket solo dall'interno di un pod dell'applicazione sul cluster.
-
Crea un YAML di distribuzione che fa riferimento alla PVC che hai creato.
-
Creare l'applicazione nel cluster.
oc create -f app.yaml
- Verifica che il tuo pod dell'applicazione sia
Running.
oc get pods | grep <app_name>
-
Verifica che il tuo volume sia montato e che tu possa leggere e scrivere nel tuo bucket COS.
-
Accedi al tuo pod dell'applicazione.
oc exec -it <pod_name> bash -
Verifica che il tuo bucket COS sia montato dal tuo pod dell'applicazione e che tu possa leggere e scrivere nel tuo bucket COS. Eseguire il comando
dfper visualizzare i dischi disponibili nel proprio sistema. Il tuo bucket COS visualizza il tipo di filesystems3fse il percorso di montaggio che hai specificato nella tua PVC.dfIn questo esempio, il bucket COS è montato in
/cos-vpc.Filesystem 1K-blocks Used Available Use% Mounted on overlay 102048096 9071556 87786140 10% / tmpfs 65536 0 65536 0% /dev tmpfs 7565792 0 7565792 0% /sys/fs/cgroup shm 65536 0 65536 0% /dev/shm /dev/vda2 102048096 9071556 87786140 10% /etc/hosts s3fs 274877906944 0 274877906944 0% /cos-vpc tmpfs 7565792 44 7565748 1% /run/secrets/kubernetes.io/serviceaccount tmpfs 7565792 0 7565792 0% /proc/acpi tmpfs 7565792 0 7565792 0% /proc/scsi tmpfs 7565792 0 7565792 0% /sys/firmware -
Passa alla directory in cui è montato il tuo bucket COS. In questo esempio il bucket è montato in
/cos-vpc.cd cos-vpc -
Scrivere un file
test.txtnel bucket COS ed elencare i file per verificare che il file sia stato scritto.touch test.txt && ls -
Rimuovere il file e scollegarsi dal pod dell'applicazione.
rm test.txt && exit