k8s

  1. k8s的集群组件有哪些?功能是什么?

  2. kubectl命令相关:如何修改副本数,如何滚动更新和回滚,如何查看pod的详细信息,如何进入pod交互?
    修改副本数 kubectl scale deployment redis —replicas=3
    活动更新kubectl set image deployments myapp-deploy myapp=myapp:v2
    回滚kubectl rollout undo deployments myapp-deploy
    查看pod详细信息kubectl describe pods/
    进入pod交互kubectl exec -it -c bash

  3. etcd数据如何备份?
    etcdctl —endpoints=”https://192.168.32.129:2379,https://192.168.32.130:2379,192.168.32.128:2379“ —cacert=/etc/kubernetes/cert/ca.pem —key=/etc/etcd/cert/etcd-key.pem —cert=/etc/etcd/cert/etcd.pem snapshot save snashot1.db
    Snapshot saved at snashot1.db

  4. k8s控制器有哪些?
    副本集(ReplicaSet)
    部署(Deployment)
    状态集(StatefulSet)
    Daemon集(DaemonSet)
    一次任务(Job)
    计划任务(CronJob)
    有状态集(StatefulSet)

  5. 哪些是集群级别的资源?
    Namespace
    Node
    Role
    ClusterRole
    RoleBinding
    ClusterRoleBinding

  6. pod状态有哪些?
    Pending 等待中
    Running 运行中
    Succeeded 正常终止
    Failed 异常停止
    Unkonwn 未知状态

  7. pod创建过程是什么?
    SAVE_20201126_181652.jpg

  8. pod重启策略有哪些?
    Pod的重启策略有3种,默认值为Always。

Always : 容器失效时,kubelet 自动重启该容器;
OnFailure : 容器终止运行且退出码不为0时重启;
Never : 不论状态为何, kubelet 都不重启该容器
9. 资源探针有哪些?
ExecAction:在容器中执行一个命令,并根据其返回的状态码进行诊断的操作称为Exec探测,状态码为0表示成功,否则即为不健康状态。
TCPSocketAction:通过与容器的某TCP端口尝试建立连接进行诊断,端口能够成功打开即为正常,否则为不健康状态。
HTTPGetAction:通过向容器IP地址的某指定端口的指定path发起HTTP GET请求进行诊断,响应码为2xx或3xx时即为成功,否则为失败。
10. requests和limits用途是什么?
“requests”属性定义其请求的确保可用值,即容器运行可能用不到这些额度的资源,但用到时必须要确保有如此多的资源可用
”limits”属性则用于限制资源可用的最大值,即硬限制
11. kubeconfig文件包含什么内容,用途是什么?
包含集群参数(CA证书、API Server地址),客户端参数(上面生成的证书和私钥),集群context 信息(集群名称、用户名)。

  1. RBAC中role和clusterrole区别,rolebinding和 clusterrolebinding区别?
    Role 可以定义在一个 namespace 中,如果想要跨 namespace则可以创建ClusterRole,ClusterRole 具有与 Role相同的权限角色控制能力,不同的是 ClusterRole 是集群级别的
    RoleBinding 适用于某个命名空间内授权,而 ClusterRoleBinding 适用于集群范围内的授权

  2. ipvs为啥比iptables效率高?
    IPVS模式与iptables同样基于Netfilter,但是ipvs采用的hash表,iptables采用一条条的规则列表。iptables又是为了防火墙设计的,集群数量越多iptables规则就越多,而iptables规则是从上到下匹配,所以效率就越是低下。因此当service数量达到一定规模时,hash查表的速度优势就会显现出来,从而提高service的服务性能

  3. sc pv pvc用途,容器挂载存储整个流程是什么?
    PVC:Pod 想要使用的持久化存储的属性,比如存储的大小、读写权限等。
    PV :具体的 Volume 的属性,比如 Volume 的类型、挂载目录、远程存储服务器地址等。
    StorageClass:充当 PV 的模板。并且,只有同属于一个 StorageClass 的 PV 和 PVC,才可以绑定在一起。当然,StorageClass 的另一个重要作用,是指定 PV 的 Provisioner(存储插件)。这时候,如果你的存储插件支持 Dynamic Provisioning 的话,Kubernetes 就可以自动为你创建 PV 了。

  4. nginx ingress的原理本质是什么?
    ngress controller通过和kubernetes api交互,动态的去感知集群中ingress规则变化,
    然后读取它,按照自定义的规则,规则就是写明了哪个域名对应哪个service,生成一段nginx配置,
    再写到nginx-ingress-controller的pod里,这个Ingress
    controller的pod里运行着一个Nginx服务,控制器会把生成的nginx配置写入/etc/nginx.conf文件中,
    然后reload一下使配置生效。以此达到域名分配置和动态更新的问题。

  5. 描述不同node上的Pod之间的通信流程

  6. k8s集群节点需要关机维护,需要怎么操作
    进行pod驱逐:kubelet drain
    检查node上是否无pod运行,切被驱逐的pod已经在其他节点运行正常
    关机维护
    开机启动相关服务(注意启动顺序)
    解除node节点不可调度:kubectl uncordon node
    创建测试pod,并使用节点标签测试节点可以被正常调度

  7. canal和flannel区别
    Flannel(简单、使用居多):基于Vxlan技术(叠加网络+二层隧道),不支持网络策略
    Calico(较复杂,使用率少于Flannel):也可以支持隧道网络,但是是三层隧道(IPIP),支持网络策略
    Calico项目既能够独立地为Kubernetes集群提供网络解决方案和网络策略,也能与flannel结合在一起,由flannel提供网络解决方案,而Calico此时仅用于提供网络策略。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值