openshift 使用S3作為registry 存儲(chǔ)

S3 是AWS提供的存儲(chǔ)服務(wù),可以通過RestAPI進(jìn)行訪問,CEPH提供了一個(gè)GateWay API 來支持通過S3API來訪問ceph
在OpenShift中支持S3,因此可以在openshift中通過S3接口訪問ceph,本文目標(biāo)是,通過S3 API 將openshift default registry數(shù)據(jù)保存在Ceph中

步驟

  1. 創(chuàng)建config.yaml 文件
version: 0.1
log:
  level: debug
http:
  addr: :5000
storage:
  cache:
    blobdescriptor: inmemory
  s3:
    accesskey: awsaccesskey 
    secretkey: awssecretkey 
    region: us-west-1
    regionendpoint: http://myobjects.local
    bucket: bucketname
    encrypt: true
    keyid: mykeyid
    secure: true
    v4auth: false
    chunksize: 5242880
    rootdirectory: /s3/object/name/prefix
auth:
  openshift:
    realm: openshift
middleware:
  registry:
    - name: openshift
  repository:
    - name: openshift
  1. 創(chuàng)建一個(gè)名為registry-config 的secret
oc secrets new registry-config config.yml=./config.yaml
  1. registry-config 作為一個(gè)volume添加到registry 的DC中
    此時(shí)會(huì)將config.yaml 文件掛載在 /etc/docker/registry 目錄下
oc volume dc/docker-registry --add --type=secret \
    --secret-name=registry-config -m /etc/docker/registry/
  1. 在dc中添加參數(shù) REGISTRY_CONFIGURATION_PATH,使其使用新加的配置文件創(chuàng)建registry pod
oc set env dc/docker-registry \
    REGISTRY_CONFIGURATION_PATH=/etc/docker/registry/config.yml

等registry 重啟后即可正常使用

排查方案

  1. 要確保Ceph可以正常訪問,可以通過瀏覽器訪問Ceph bucket 驗(yàn)證

Reference:
https://docs.openshift.com/container-platform/3.3/install_config/registry/extended_registry_configuration.html#advanced-overriding-the-registry-configuration
https://docs.docker.com/registry/storage-drivers/s3/#parameters

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容