K8S 基础使用学习记录

常用操作

  1. 编写 yaml
    ################################################################################
    # 配置
    ################################################################################
    
    apiVersion: apps/v1                                 # 版本号
    kind: Deployment                                    # 无状态应用
    metadata:                                           # 元数据信息
     name: testva-pod                                   # 资源的名称
    spec:                                               # 资源需要的参数属性
      replicas: 3                                       # 定义副本数量
      selector:                                         # 定义标签选择器
        matchLabels:                                    # 定义匹配标签
          app: testv1                                   # 匹配上面的标签,需与上面的标签定义的app保持一致
      template:                                         # 定义业务模板
        metadata:                                       # 模板元数据信息
          labels:                                       # 定义资源标签
            app: testv1                                 # app标签名
        spec:                                           # 资源需要的参数属性
          tolerations:                                  # 定义容忍声明
          - operator: "Exists"                          # 容忍
          containers:                                   # Pod中容器列表
          - name: testv1                                # 名称
            image: 10.1.10.118:8088/devtest/test:v1     # 镜像名称
            ports:                                      # 设置端口
            - containerPort: 8011                       # 对service暴露端口
    
    -------------------------------------------------
    
    apiVersion: v1                                      # 版本号
    kind: Service                                       # 定义服务
    metadata:                                           # 元数据信息
      name: testv1-app-svc                              # 名称
    spec:                                               # 资源需要的参数属性
      type: NodePort                                    # 外部访问类型
      ports:                                            # 定义端口类型
      - protocol: TCP                                   # 协议
        port: 8022                                      # 端口号
        targetPort: 8011                                # 目标端口号
      selector:                                         # 选择器
        app: testv1                                     # 指定应用
    
    ################################################################################
    # 完整示例
    ################################################################################
    
    apiVersion: apps/v1 
    kind: Deployment
    metadata:
     name: testva-pod
    spec:
      replicas: 3
      selector:
        matchLabels:
          app: testv1
      template:
        metadata:
          labels:
            app: testv1
        spec:
          tolerations:
          - operator: "Exists"
          containers:
          - name: testv1
            image: 10.1.10.118:8088/devtest/test:v1
            ports:
            - containerPort: 8011
    
    -----------------------------------------------
    
    apiVersion: v1
    kind: Service
    metadata:
      name: testv1-app-svc
    spec:
      type: NodePort
      ports:
      - protocol: TCP
        port: 8022
        targetPort: 8011
      selector:
        app: testv1
  2. 启动 POD
    kubectl create -f testv1.yaml
  3. 删除 POD
    kubectl delete -f testv1.yaml
  4. 查看所有 Service
    kubectl get svc --all-namespaces
  5. 查看所有 POD
    kubectl get pod
  6. 查看k8s版本
    kubectl version
     
  7. 查看所有命名空间
    kubectl get namespace
  8. 查看管理员
    kubectl -n kube-system get secret|grep admin-token
  9. 获取某个管理员的Token
    # kubectl -n kube-system describe secret [管理员名称]
    kubectl -n kube-system describe secret admin-token-tmvl6
  10. 。。。

K8s拉取Harbor私有仓库镜像 

  1. 首先在服务器上使用Docker命令登录到Harbor。
    # 执行登录命令,并输入账户密码。
    sudo docker login 地址:端口
  2. 创建授权文件.
    # 一般会在当前用户下生成
    sudo vim ~/.docker/config.json
    # 或者在root目录
    sudo vim /root/.docker/config.json
    
    ########################################################
    {
            "auths": {
                    "10.1.10.118:8088": {
                            "auth": "xxxxxxxxxxxxxxxxxxx"
                    }
            }
    }
    ########################################################
    
    # 使用命令将上面的内容进行base64转换
    cat /root/.docker/config.json |base64 -w 0
    
    # 创建 secret.yaml 并将上面得到的 base64 字符串复制其中
    vim secret.yaml
    
    ########################################################
    apiVersion: v1
    kind: Secret
    metadata:
      name: login
    type: kubernetes.io/dockerconfigjson
    data:
      .dockerconfigjson: 此处为上面得到的base64字符串
    ########################################################
  3. 创建对象,完成配置。
    # 创建对象
    kubectl create -f secret.yaml

K8s修改Service

  1. 查看所有svc
    # 查看所有svc,并找到想要修改的。
    kubectl get svc --all-namespaces

  2. 修改指定svc
    # 执行命令后会打开vim进行修改
    # kubectl edit svc/[服务名称] -n [命名空间] 
    kubectl edit svc/kubernetes-dashboard -n kubernetes-dashboard
    

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值