k8s无脑系列(五)-创建私有仓库(一)

k8s无脑系列-创建私有仓库(一)

1. 意义

  • 与CI/CD联动

  • 私有库属于公司/组织最重要的线上财产必须得到保护

2. 需要解决的问题

先提出问题,为什么需要Secret?

密码、令牌不能被随意公布。存到集群里,让需要的Pod或者其它资源(rc,pod等)可以拿到必须的令牌内容等等。甚至MySQL之类的密码都可以存储到Secret中。这里不做更多的讨论。仅限于用在私有仓库中这种情景。

2.1 k8s的Pod使用私有仓库时需要认证过程

比如使用阿里云私有仓库(啰嗦一句,自己搭建的一样,阿里的现成可用),虽然Docker可以通过设置/etc/daemon.json实现Pull的过程,<font color=red>但k8s在不通的Node去创建Pod就不行了</font>。Emm,其实也不是不行,总不能给所有Node同步$HOME/.docker/config.json吧。另外不同的namespace为了安全不能用一个账户来操作私有仓库,<font color=red>所以分namespace的认证过程是必须的。</font>

我们先用阿里云这个现成的私有仓库举例子,来观察整个过程。

使用私有仓库镜像时必须先登录

$docker login --username=xxxx@aliyun.com registry.cn-hangzhou.aliyuncs.com

在$HOME/.docker/config.json可以看到

{
  "auths": {
    "registry.cn-beijing.aliyuncs.com": {
         "auth": "NzU0NDg5NTUxQHFxLmNvbTptb3dwaWgtd2lwbnlqLWt1bWtVNg=="
       }
     }
   }
$docker pull registry.cn-beijing.aliyuncs.com/smokelee/redis # 私有库

2.2 首先要创建k8s的Secret

<font color=red>假设现在已经有“私有仓库”比如:阿里云</font>

  1. 命令行创建

    $kubectl create secret docker-registry registry-secret-aliyun --docker-server=registry.cn-beijing.aliyuncs.com --docker-username=xxxxxxx@qq.com --docker-password=xxxxxxx
    

    参数说明:以下参数都可以通过执行下述命令得到说明

    $kubectl create secret docker-registry
    
    • docker-registry 该参数有三个值docker-registry、generic、tls
    • registry-secret-aliyun Secret的名称,什么名字都可以,随意
    • --docker-server 仓库地址
    • --docker-username 仓库账户名称
    • --docker-password 仓库密码

    验证

    $kubectl describe secret registry-secret-aliyun
    Name:         registry-secret-aliyun
    Namespace:    default
    Labels:       <none>
    Annotations:  <none>
    
    Type:  kubernetes.io/dockerconfigjson
    
    Data
    ====
    .dockerconfigjson:  113 bytes
    
  2. yaml文件创建

    事实上,docker-registry类型的不能通过这种方式创建,这个yaml是用命令反向推出来的。就是演示。

    $kubectl get secret registry-secret-aliyun -o yaml
    apiVersion: v1
    type: kubernetes.io/dockerconfigjson
    kind: Secret
    metadata:
      name: registry-secret-aliyun
      namespace: default
    data:
      .dockerconfigjson: eyJhxxxxxx.......x19
    

2.3 资源文件使用Secret

apiVersion: v1
kind: ReplicationController
metadata:
  name: redis-ali
spec:
  replicas: 1
  selector:
    app: redis-pod-ali
  template:
    metadata:
      labels:
        app: redis-pod-ali
    spec:
      containers:
      - name: redis-ali
        image: registry.cn-beijing.aliyuncs.com/smokelee/redis # 私有镜像
        ports:
        - containerPort: 6379
      imagePullSecrets:
      - name: registry-secret-aliyun # 名字要与创建命令参数保持一致

查看是否已经被其它节点部署,注意node2是节点,此前并未下载过"registry.cn-beijing.aliyuncs.com/smokelee/redis" 这个私有镜像

$kubecel get pod redis-ali -o wide
NAME              READY   STATUS    RESTARTS   AGE   IP            NODE                 NOMINATED NODE   READINESS GATES
mysql-rc-q5pps    1/1     Running   2          2d    10.244.1.7    node1.smokelee.com   <none>           <none>
redis-ali-6s52k   1/1     Running   0          3s    10.244.2.11   node2.smokelee.com   <none>           <none>
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,843评论 6 502
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,538评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,187评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,264评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,289评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,231评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,116评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,945评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,367评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,581评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,754评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,458评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,068评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,692评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,842评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,797评论 2 369
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,654评论 2 354

推荐阅读更多精彩内容