第9期:K8s

资源对象

  • 无状态 Deployment

    1
    2
    3
    动态伸缩pod,实现高可用;
    健康检查;
    优雅停止
  • 有状态 StatefulSet

    1
    pod名称、ip固定
  • 守护进程集 DaemonSet

    1
    2
    3
    ```

    - 服务 Service
    1
    2

    - 路由 Ingress
    1
    2

    - 配置项 ConfigMap
    1
    2

    - 保密字典 Secert
    1
    2

    - 存储声明 PersistentVolumeClaim
    1
    2

    - 存储卷 PersistentVolume
    1
    2

    - 存储类 StorageClass
    1
    ### 常用命令

复制pod文件到本地,范例:

kubectl cp -c supervisord namespace/pod-name-8bf7c9d8-dj2gg:/var/www/html/storage/logs/analysis.log ./analysis-medias.log

复制本地文件到pod,范例:

kubectl cp ./xxbbxg.csv -c php-fpm namespace/pod-name-55967f6dd6-jmrk4:/var/www/html/storage/import/xxbbxg.csv

kubectl exec -ti deployment/cron-release -n=$namespace –container=php-fpm bash # 进入容器
kubectl rollout restart deployment/$project –namespace=$namespace # 更新deployment

1
2

### 组件

kubelet: 运行在每个node上,负责pod的生命周期
```