如何使用 KubeBuilder 开发一个 Operator📅 2019年09月25日 · ☕ 5 分钟通过 Operator 的方案,可以对 Kubernetes 的功能进行友好地扩展。Operatpr = CRD + Controller。首先通过 yaml 定义,生成 CRD ,然后 Controller 不断地监听 etcd 中的数据,执行相应动作。开发 Operator 时,有很多繁琐且重复的事情。KubeBuilder 可以帮助我们快速生成骨架代码,
Kubernetes 1.6.0 安装问题汇总📅 2019年09月20日 · ☕ 1 分钟1. CNI 问题 错误日志 1 2 journalctl -u kubelet ...Unable to update cni config: No networks found in /etc/cni/net.d 由于没有安装 CNI ,需要移除 /var/lib/kubelet/kubeadm-flags.env 参数中的--network-plugin=cni 1 2 cat /var/lib/kubelet/kubeadm-flags.env KUBELET_KUBEADM_ARGS="--cgroup-driver=systemd --pod-infra-container-image=k8s.gcr.io/pause:3.1" 2. 节点 NotReady 节点 NotReady 可能的原因有很多。通常会是网络、容器配置错误导致,需要逐一排查。 这里使用的是 使用 Kubeadm 安装 Kubernetes 集群 文
开发 Tips(15)📅 2019年09月11日 · ☕ 1 分钟主要记录最近遇到的一些开发问题,解决方法。 1. Ingress 开启 HTTPS 准备好证书,domain.com.crt、domain.com.key 创建 Secret 1 kubectl create secret tls {SECRET_NAME} --key domain.com.key --cert domain.com.crt -n {NAMESPACE} 更新 Ingress 配置 1 2 3 4 5 spec: tls: - hosts: - domain.com secretName: {SECRET_NAME} 2. SSH 登陆失败,提示 ssh-dss SSH 登陆提示: 1 Unable to negotiate with 10.10.10.10 port 22: no matching
Docker 如何拉取镜像📅 2019年09月06日 · ☕ 1 分钟1. docker pull 拉取镜像 使用 docker pull {IMAGE_NAME} 拉取镜像时,有两种情况: IMAGE_NAME 前缀指向 registry Docker 会将 IMAGE_NAME 识别为指定仓库提供的镜像。例如,myregistry.io/space1/image1:latest ,Docker 会去 myregistry.io 指向的服务器请求镜像数据。一个 Docker 镜像分为很多层,如果
开发 Tips(14)📅 2019年09月06日 · ☕ 1 分钟主要记录最近遇到的一些开发问题,解决方法。 1. Kubernetes 集群添加新的 Node 节点 在执行 kubeadm init 时,Console 会打印添加 Node 的命令。Token 默认的有效期为 24h 。当超过有效期时,需要重新创建 Token ,执行命令: 1 2 kubeadm token create --print-join-command kubeadm join 192.168.10.2:6443 --token ocyzce.3hv8y7w60lrvulir --discovery-token-ca-cert-hash sha256:7a86632f54de1004bb3f38124b663f837399d6ba9aa803d58c6707a76c02a6cb 使用 Console 输出的命令,即可将 Node 节点添