Navegue o Civo Object Storage via S3 no macOS.
O endpoint regional, configuração pronta para s3cmd, rclone e a AWS CLI, e o que um cliente nativo faz de diferente.
O Civo Object Storage fala S3, por isso quase qualquer cliente S3 se liga a ele assim que duas coisas estiverem certas: o endpoint da região onde o store vive e uma credencial criada nessa mesma região. A documentação da Civo percorre o s3cmd e deixa o resto do ferramental consigo. Esta página dá a configuração em bruto para s3cmd, rclone e AWS CLI, e depois mostra o caminho do CivoCloudManager, que é ler o endpoint e as chaves de acesso diretamente da API da Civo, sem nada para configurar à mão.
Configurar um cliente S3 para a Civo
-
01
Descubra o endpoint da sua região.
A Civo constrói os endpoints dos object stores como
https://objectstore.<region>.civo.comcom o código da região em minúsculas, por isso um store em Londres responde emhttps://objectstore.lon1.civo.come um em Frankfurt emhttps://objectstore.fra1.civo.com. Cada store mostra também o seu endpoint no painel da Civo e devolve-o no campoobjectstore_endpointda REST API. Segundo a página de funcionalidades por região da Civo, há object stores em LON1, FRA1, NYC1 e MUM1, e não em PHX1. -
02
Crie uma credencial nessa mesma região.
Todos os object stores da Civo são privados e precisam de um access key ID e de uma secret key. Crie a credencial no painel da Civo, em Object Stores, com o seletor de região na região do store, ou pela Civo CLI. O comando civo objectstore credential export
-a<access_key>imprime o par comoAWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY,AWS_DEFAULT_REGIONeAWS_HOST, pronto a colar numa shell. -
03
s3cmd: host_base e host_bucket.
Em
~/.s3cfg, dentro de [default], definahost_base=objectstore.fra1.civo.com,host_bucket=objectstore.fra1.civo.com,bucket_location= fra1,use_https= True,signature_v2= False, maisaccess_keyesecret_key. Dar aohost_bucketo mesmo nome de host que aohost_basemantém o s3cmd em endereçamento por caminho, que é ao que a Civo responde. Depois s3cmd ls lista os seus stores, s3cmd ls s3://STORENAME lista um, s3cmd put file.tar s3://STORENAME/backups/ envia, e s3cmd get-rs3://STORENAME/backups/ traz um prefixo inteiro para baixo. Sem ficheiro de configuração, os mesmos dois valores vão na linha de comandos como--host=e--host-bucket=. -
04
rclone: um remote do tipo s3, provider Other.
Corra rclone config e escolha s3, ou escreva o bloco diretamente em
~/.config/rclone/rclone.conf: em [civo] defina type = s3, provider = Other,env_auth= false,access_key_idesecret_access_keyda credencial, region = fra1, endpoint =https://objectstore.fra1.civo.come acl = private. Depois disso, rclone lsd civo: lista os stores, rclone ls civo:STORENAME lista objetos, rclone copy ./dir civo:STORENAME/dir -P sincroniza uma pasta para cima com progresso, e rclone ncdu civo:STORENAME dá um navegador em modo texto. As mesmas definições funcionam como flags avulsas:--s3-providerOther--s3-endpointhttps://objectstore.fra1.civo.com--s3-regionfra1. -
05
AWS CLI: --endpoint-url em cada chamada.
A AWS CLI não precisa de plugin nenhum específico da Civo, só do endpoint em cada comando: aws s3 ls
--endpoint-urlhttps://objectstore.fra1.civo.com, depois aws s3 ls s3://STORENAME--endpoint-url... e aws s3 cp file.tar s3://STORENAME/--endpoint-url... . As credenciais vêm deAWS_ACCESS_KEY_IDeAWS_SECRET_ACCESS_KEYou de um perfil com nome, comAWS_DEFAULT_REGIONdefinido para o código da região Civo, para o âmbito da Signature V4 bater certo. Uma nota para versões recentes: a AWS CLI 2.23 e posteriores acrescenta por defeito um checksum CRC64NVME aos uploads, que nem todos os endpoints compatíveis com S3 aceitam, por isso se um put falhar com erro de checksum defina AWS_REQUEST_CHECKSUM_CALCULATION=when_required e AWS_RESPONSE_CHECKSUM_VALIDATION=when_required.
A armadilha que custa uma hora: as chaves estão presas a uma região
A documentação da Civo é explícita em duas frases fáceis de saltar: os object stores são específicos da região, e as credenciais para gerir e aceder a object stores estão ligadas à região onde foram criadas. Uma chave feita com o painel em FRA1 não autentica contra o endpoint de LON1, mesmo sendo a mesma conta e a mesma faturação. O sintoma é um erro de autenticação ou de assinatura que parece um erro de escrita no secret, por isso a reação natural é regenerar a chave, o que produz outra chave na mesma região errada. Confirme primeiro o seletor de região, crie a credencial ao lado do store, e só depois desconfie da configuração.
O que a linha de comandos não cobre
Para scripts, backups e CI, o s3cmd, o rclone e a AWS CLI são a resposta certa e nada aqui os substitui. O que não lhe dão é uma vista do store: uma árvore de pastas, tamanhos num relance, uma seleção que pode arrastar para fora. Clientes S3 genéricos para Mac como o Cyberduck ou o Transmit tapam esse buraco, mas não sabem nada sobre a Civo, por isso escreve o endpoint, cola as duas chaves por store e mantém tudo sincronizado à mão sempre que uma credencial roda.
O caminho da app: nenhum endpoint para escrever
O CivoCloudManager autentica-se uma vez com a sua chave de API Civo e lê a lista de object stores da Civo REST API v2, que já traz o endpoint e a credencial associada a cada store. Constrói o cliente S3 a partir daí, por isso não há campo de endpoint, nem chaves para colar, nem ficheiro de configuração. A camada S3 é Swift puro: AWS Signature V4 calculada com o HMAC-SHA256 do CryptoKit, sem SDK da AWS e sem Electron. Faz ListObjects v2 com continuation tokens, navegação por breadcrumbs sobre prefixos comuns, multi-seleção e descarga recursiva de pastas com uma linha de progresso. Sendo honesto quanto ao formato: o navegador lê e descarrega. Enviar e apagar continua a ser trabalho do s3cmd ou do rclone. A app exige macOS 15 ou posterior.
Chaves de acesso atrás do Touch ID em vez de um dotfile
Esta é a parte que justifica uma instalação mesmo que fique com a CLI. Um s3cmd a funcionar significa a secret key em texto simples no ~/.s3cfg, e o mesmo vale para o rclone.conf e o ~/.aws/credentials. Qualquer processo a correr com o seu utilizador consegue ler os três, e qualquer coisa que percorra a sua pasta pessoal também. O CivoCloudManager guarda a chave de API Civo no macOS Keychain, e revelar a secret access key de um object store na interface exige primeiro Touch ID ou a palavra-passe do sistema. O limite é óbvio e vale a pena dizê-lo: no momento em que copia uma chave para um terminal, volta a ser um ficheiro em texto simples.
Pause e Resume para stores que não está a usar
Um store parado continua a faturar o tamanho que tem atribuído. O Pause copia cada objeto para um object store central chamado civo-cloud-manager, aumentando esse vault primeiro se os dados não couberem, compara as chaves e os tamanhos copiados com os da origem, e só apaga o store original quando batem certo. A linha desaparece da fatura Civo. O Resume recria o store com o mesmo nome e a mesma credencial, copia os objetos de volta, verifica outra vez chaves e tamanhos e depois limpa o vault. Movem-se até quatro objetos ao mesmo tempo. Os limites honestos: a verificação compara nomes e tamanhos em vez de calcular hashes do conteúdo, as transferências guardam objetos inteiros em memória, e o manifesto remoto é escrito depois de a origem ser apagada, com um manifesto local como alternativa.
Que cliente para que trabalho
Os quatro falam com a mesma API S3 no mesmo endpoint. A diferença está em onde vive a configuração, onde acaba o secret e o que consegue ver.
| Tarefa | s3cmd | rclone | AWS CLI | CivoCloudManager |
|---|---|---|---|---|
| Configuração do endpoint | host_base e host_bucket em ~/.s3cfg | endpoint no remote | --endpoint-url em cada chamada | lido da API da Civo |
| Onde acaba a secret key | ~/.s3cfg, texto simples | rclone.conf, texto simples | ~/.aws/credentials, texto simples | macOS Keychain, Touch ID para revelar |
| Navegar um store visualmente | não | rclone ncdu, modo texto | não | sim, navegador com breadcrumbs |
| Enviar e apagar objetos | sim | sim | sim | não no navegador |
| Descarga recursiva de pastas | s3cmd get -r | rclone copy | aws s3 cp --recursive | sim, com progresso |
| Pôr um store parado em pausa para deixar de pagar | não | não | não | sim, vault com verificação antes de apagar |
| Corre em CI | sim | sim | sim | não, é uma app Mac |
Civo Object Storage via S3, respondido
- Qual é o URL do endpoint do Civo object storage?
- Os endpoints dos object stores da Civo seguem o padrão
https://objectstore.<region>.civo.comcom o código da região em minúsculas, por exemplohttps://objectstore.lon1.civo.comem Londres ouhttps://objectstore.fra1.civo.comem Frankfurt. O endpoint depende da região em que o store foi criado. Cada store mostra também o seu endpoint no painel da Civo e devolve-o no campoobjectstore_endpointda Civo REST API. - Posso usar o s3cmd ou o rclone com o Civo Object Storage?
- Sim, os dois funcionam, e a AWS CLI e qualquer outro cliente compatível com S3 também. Para o s3cmd, defina
host_baseehost_bucketem~/.s3cfgpara o nome de host regional, comoobjectstore.fra1.civo.com, e preenchaaccess_keyesecret_key. Para o rclone, crie um remote com type = s3, provider = Other, endpoint =https://objectstore.fra1.civo.come o mesmo par de chaves. Para a AWS CLI, passe--endpoint-urlhttps://objectstore.fra1.civo.comem cada comando. - Porque é que a minha chave de acesso ao Civo object storage não funciona?
- A causa habitual é a região. A Civo afirma que os object stores são específicos da região e que as credenciais estão ligadas à região onde foram criadas, por isso uma chave criada em FRA1 não autentica contra o endpoint de LON1, mesmo pertencendo à mesma conta. Crie a credencial com o painel na região do store. A segunda causa comum é um cliente que nunca recebeu o endpoint, ou um
host_bucketdo s3cmd deixado no valor por defeito, com o pedido a ir parar à Amazon em vez da Civo. - Existe uma GUI para o Civo object storage no Mac?
- O CivoCloudManager é uma app macOS nativa, macOS 15 ou posterior, na Mac App Store, e conhece a Civo: lê o endpoint e as chaves de acesso de cada store a partir da API da Civo, por isso não há nada para configurar. Navega com breadcrumbs e descarrega ficheiros únicos, uma multi-seleção ou uma pasta inteira recursivamente, enquanto enviar e apagar continua com a CLI. Clientes S3 genéricos como o Cyberduck ou o Transmit também se ligam à Civo depois de escrever o endpoint e colar as duas chaves por store.
- O que é que o Pause faz aos meus dados num Civo object store?
- O Pause copia cada objeto para um object store central chamado civo-cloud-manager dentro da sua própria conta Civo, compara as chaves e os tamanhos copiados com os da origem e só então apaga o store original para deixar de custar. O Resume recria o store com o mesmo nome e a mesma credencial, copia os objetos de volta e verifica outra vez chaves e tamanhos antes de limpar o vault. Os dados nunca saem da sua conta Civo, e a verificação é por nome e tamanho, não por hash do conteúdo.
Guias
Passo a passo, e comparações honestas.
- 01 Ligar a sua chave API Civo Gere a chave no painel da Civo, cole-a uma vez e deixe o macOS Keychain guardá-la a partir daí.
- 02 Abrir um firewall para o seu IP O procedimento manual, a armadilha de IP dinâmico que ele deixa para trás e um caminho gratuito na barra de menus que fecha a regra ao fim do prazo.
- 03 vs Lens, OpenLens e k9s Três ferramentas agnósticas ao cluster, uma específica da Civo. A diferença decide qual quer ter aberta.
- 04 DNS Civo no Mac Aponte um domínio aos nameservers da Civo e depois mantenha a zona numa app nativa em vez de um separador do browser.
- 05 Changelog Todas as versões lançadas, da mais recente para trás, com o detalhe que uma nota de release da loja é curta demais para levar.
Em detalhe
Leituras dedicadas para cada produto Civo.
Cada área da Civo em que o CivoCloudManager toca tem a sua própria página, com as especificidades, os compromissos e os detalhes de arquitetura. Escolha a mais próxima do que faz hoje.
- 01 Alternativa à Civo CLI para Mac Onde a GUI ganha à CLI, onde não ganha e como as duas convivem.
- 02 GUI de Civo Kubernetes para Mac Painel de cluster ao vivo, registos de pods em tempo real, sem kubectl.
- 03 Navegador de Civo Object Storage para Mac Navegador S3 nativo. Ponha buckets inativos em pausa num vault central.
- 04 Firewall Civo a partir da barra de menus do Mac Abrir e fechar cada firewall num clique, deteção automática de IP, temporizador de fecho.
- 05 Painel de custos Civo para Mac Encargos reais da Civo charges API. Seletor de período e projeção de fim do mês.
Salte a configuração do endpoint.
O CivoCloudManager lê o endpoint e as chaves de acesso da sua própria conta Civo, por isso o store abre em vez de exigir um ficheiro de configuração. Plano gratuito na barra de menus, compra única para o painel completo na Mac App Store.