Testar e Validar
Esta página abrange alguns dos testes que podem ser executados diretamente das instâncias de VM que são membros dos grupos dinâmicos configurados. O RCLONE e o OCIFS devem ser testados da mesma forma, usando uma variedade de comandos que testam o acesso de leitura e gravação.
Teste RCLONE
Como parte desse esforço, a regra de retenção no bucket é removida por uma parte do tempo, para que possamos testar totalmente a capacidade do rclone de ler e gravar em um bucket.
Depois que o teste for concluído, a regra poderá ser restabelecida e bloqueada. O teste é feito começando com um grupo dinâmico que tem permissões de "leitura de bucket" e "leitura de objeto" em todos os buckets dentro do compartimento que contém o bucket de arquivamento.
OS prompt> rclone config show [OCI-IP]
type = oracleobjectstorage
provider = instance_principal_auth
namespace = <tenancy-namespace>
compartment = ocid1.compartment.oc1..xxx
region = us-ashburn-1
OCI-IP
para fazer referência ao nosso ambiente e credenciais de armazenamento de objetos configurados. Para sincronizar (copiar ou atualizar) um arquivo em um bucket, o bucket foi pré-criado usando a console do OCI, porque nosso conjunto restrito de permissões não inclui a criação ou exclusão do bucket. O bloco a seguir mostra a operação de sincronização, seguida de uma listagem de buckets.OS prompt> rclone sync rclone-test.txt OCI-IP:rclone-testing
OS prompt> rclone ls OCI-IP:rclone-testing
33 rclone-test.txt
A exclusão de arquivos também pode ser testada. Siga a documentação RCLONE para todas as opções disponíveis, como filtragem.
OS prompt> rclone delete OCI-IP:rclone-testing/rclone-test.txt
Alterações da Política
OS prompt> rclone purge OCI-IP:rclone-testing
2024/08/29 14:36:15 ERROR : : Failed to rmdir: Error returned by ObjectStorage Service. Http Status Code: 404. Error Code: BucketNotFound. Opc request id: iad-1:xxx. Message: Either the bucket named 'rclone-testing' does not exist in the namespace '<namespace>' or you are not authorized to access it
Operation Name: DeleteBucket
Como mencionado anteriormente, as declarações de política que foram definidas para o grupo dinâmico podem ser alteradas conforme necessário. Por exemplo, para permitir a criação ou exclusão de bucket, a seguinte instrução pode ser adicionada:allow dynamic-group oci-rclone-full-dg to manage buckets in compartment cis-landing-top:app-cmp where ANY {target.bucket.name =
'rclone-testing'}
Depois de adicionar essa instrução de política, a operação anterior poderá ser repetida e o bucket será excluído.É útil manter um browser aberto para a tela do OCI Object Storage e atualizar a página em um bucket para que cada operação possa ser verificada.
Teste do OCIFS
Usando os exemplos fornecidos na seção anterior, o utilitário OCIFS foi testado de várias maneiras. Uma vez que o grupo dinâmico e a política estejam funcionando conforme projetado, é possível alterar políticas e ver rapidamente os resultados mudando à medida que as permissões são editadas.
Recomenda-se desmontar os sistemas de arquivos OCIFS como parte do teste de alterações de permissão. A documentação fornece a sintaxe para desmontagem.
Observação:
O uso de automontagem pode afetar o cache do OCIFS, pois ele remove o cache, a menos que as opçõescache-reuse
e cache-keep
sejam usadas.
O exemplo a seguir mostra como criar um ponto de montagem e estabelecer conexão com um bucket usando o OCIFS:
root OS prompt# mkdir /mnt/read-bucket root OS prompt# ocifs --auth=instance_principal read-bucket /mnt/read-bucket/ root OS prompt# cd /mnt/read-bucket root OS prompt# ls -al total 0 drwxr-xr-x. 2 root root 6 Nov 6 14:56 . drwxr-xr-x. 5 root root 68 Nov 6 14:56 .. -rw-r--r--. 1 root root 4 Nov 6 14:57 file.txt
root OS prompt# rm file.txt rm: remove regular file 'file.txt'? y rm: cannot remove file.txt': Input/output error
Outros testes com buckets adicionais, definições de grupo dinâmico e instruções de política podem ser executados. Permitir um minuto ou dois entre alterações e testes, para que as permissões possam se propagar.