1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/gin9-Memo

Клонировать/Скачать
Kubernetes.md 5.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
kcp Отправлено 26.05.2025 15:49 20045f5
title: Kubernetes
date: 2018-12-15 11:28:19
tags:
  - 基础
categories:
  - Kubernetes

💠

💠 2025-05-26 20:49:09


Kubernetes

Official site | Github | 中文文档

kwok 模拟 K8s 集群的工具。它可以在几秒钟内搭建一个由数千个节点组成的 Kubernetes 集群

相关博客

浅谈 k8s+docker 资源监控 | 基于 Kubernetes 构建 Docker 集群管理详解
Kubernetes 学习笔记
Kubernetes 中文社区
Kubernetes 使用教程

参考: Kubernetes 会不会被自身的复杂性压垮?
参考: 一文带你看透 kubernetes 容器编排系统

安装

official doc

参考: kubeadm 搭建 kubernetes 集群
参考: Kubernetes 国内镜像、下载安装包和拉取 gcr.io 镜像
参考: 国内服务器安装 kubernetes 一路坑,求大神指点

  • 注意 Deepin 上不要安装 kubernetes-client 这个是 1.7 版本, 类似于 docker.io 这样的老旧版本

使用阿里云的镜像进行安装

    # 均以 root 运行
    apt update && apt install -y apt-transport-https
    curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
    echo "deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main" > /etc/apt/sources.list.d/kubernetes.list
    apt install kubelet kubeadm kubectl

deb http://apt.kubernetes.io/ kubernetes-xenial main 虽然这才是官方源,奈何是 Google 服务器


minikube

minikube


网络

Kubernetes 疑难杂症排查分享:神秘的溢出与丢包

Pod

Pod调度

结论:pod尽量按过往监控的情况设置合理的 requests 和 limits, 如果仍有明显的倾斜,可以配置节点亲和 nodeAffinity

例如如下配置只会将pod调度到03和04两个Node上, 对应于Kuboard的操作路径为 高级设置 -> 节点调度策略 -> 根据【节点亲和性】选择节点 -> 选择标签和值

spec:
  affinity:
    nodeAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
        nodeSelectorTerms:
          - matchExpressions:
              - key: kubernetes.io/hostname
                operator: In
                values:
                  - node03
                  - node04

Pod资源控制

为容器和 Pods 分配 CPU 资源
为容器和 Pod 分配内存资源

通过合理地设置 pod 的 QoS 可以进一步提高集群稳定性:不同 QoS 的 Pod 具有不同的 OOM 分数,当出现资源不足时,集群会优先 Kill 掉 Best-Effort 类型的 Pod ,其次是 Burstable 类型的 Pod ,最后是Guaranteed 类型的 Pod

CPU资源

CPU 属于可压缩资源,其中 CPU 资源的分配和管理是 Linux 内核借助于完全公平调度算法( CFS )和 Cgroup 机制共同完成的。

内存资源

Pod内应用使用的 buff/cache 也算到了容器使用量,而不是常见的RSS用量,导致应用超申请被kill buffer/cach内存占用过高及k8s java后端pod容器超出内存限制被kill重启_pod内存占用过高-CSDN博客


使用

大多数命令和 Docker 是类似的,只不过加上了 namespace 的概念

  • 查看日志: kubectl logs --namespace namespace pod

Java client for Kubernetes


安全

从零开始的Kubernetes攻防

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/gin9-Memo.git
git@api.gitlife.ru:oschina-mirror/gin9-Memo.git
oschina-mirror
gin9-Memo
gin9-Memo
master