美文网首页
记录一次单节点部署k8s

记录一次单节点部署k8s

作者: ZplD | 来源:发表于2020-05-06 15:09 被阅读0次

    省略k8s与docker的安装过程
    主要碰到问题如下:
    使用k8拉去本地镜像的时候发现拉不下来报错

    ![image.png](https://img.haomeiwen.com/i13612885/1370e4a3314043ae.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    
    

    于是改变策略,先与本地建立一个私人仓库

    docker pull registry
    mkdir -p /opt/data/registry  //创建目录
    sudo docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry  --name private_registry registry  //启动容器
    
    sudo service docker restart   //重启容器
    sudo docker start private_registry   //重启registry服务
    sudo docker tag mytest:latest 192.168.147.129:5000/mytest(mytest为我打包的一个http服务)
    sudo docker push 192.168.147.129:5000/mytest(此处可能报错需要设置/etc/docker/daemon.json)
    设置如下:
    {
            "registry-mirrors": ["https://njrds9qc.mirror.aliyuncs.com"],
            "insecure-registries":["XX.XX.XX.XX:5000"]
    }
    设置完重新push即可
    
    

    k8s部署yaml文件:

    apiVersion: v1
    kind: ReplicationController
    metadata:
      name: mytest
    spec:
      replicas: 1
      selector:
        app: mytest
      template:
        metadata:
          labels:
            app: mytest
        spec:
          containers:
            - name: mytest
              image: xx,xx,xx,xx:5000/mytest
              imagePullPolicy: IfNotPresent
              ports:
                - containerPort: 8550
    

    然后创建此pod
    kubectl create -f demo-rc.yaml

    但这样外包还是无法访问该pod,需要在创建一个serivies
    yaml文件如下:

    apiVersion: v1
    kind: Service
    metadata:
      name: mytest
    spec:
      type: NodePort
      ports:
      - port: 8550
        targetPort: 8550
        nodePort: 30001
      selector:
        app: mytest
    

    kubectl create -f demo-svc.yaml

    相关文章

      网友评论

          本文标题:记录一次单节点部署k8s

          本文链接:https://www.haomeiwen.com/subject/qvlwghtx.html