- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。
我们不允许在 Stack Overflow 上提出有关专业服务器或网络相关基础设施管理的问题。您可以编辑问题,使其成为 on-topic对于堆栈溢出。
去年关闭。
Improve this question
我正在学习如何从 here 在 ubuntu 服务器上安装 kubernetes 多节点集群的教程。 .我正在安装法兰绒而不是印花布。我可以看到法兰绒安装正确,但我无法从工作节点加入集群。这是我的文件:
托管来自 /etc/ansible/hosts
的文件:
[workernodes]
X.X.X.X(PUBLIC IP) node_name=worker2 node_internal_ip=10.132.0.16
X.X.X.X(PUBLIC IP) node_name=worker3 node_internal_ip=10.132.0.19
[masternodes]
X.X.X.X(PUBLIC IP) node_name=master node_internal_ip=10.132.0.15
这是我的
master-playbook.yml
:
---
- hosts: masternodes
become: true
tasks:
- name: Remove swapfile from /etc/fstab
mount:
name: "{{ item }}"
fstype: swap
state: absent
with_items:
- swap
- none
- name: Disable swap
command: swapoff -a
when: ansible_swaptotal_mb > 0
- name: Letting iptables see bridged traffic
shell: |
sudo modprobe br_netfilter
lsmod | grep br_netfilter
- name: Install packages that allow apt to be used over HTTPS
apt:
name: "{{ packages }}"
state: present
update_cache: yes
vars:
packages:
- apt-transport-https
- ca-certificates
- curl
- gnupg-agent
- software-properties-common
- name: Add an apt signing key for Docker
apt_key:
url: https://download.docker.com/linux/ubuntu/gpg
state: present
- name: Add apt repository for stable version
apt_repository:
repo: deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial stable
state: present
- name: Install docker and its dependecies
apt:
name: "{{ packages }}"
state: present
update_cache: yes
vars:
packages:
- docker-ce
- docker-ce-cli
- containerd.io
notify:
- docker status
# Kubelet, kubeadm, kubec
- name: Add an apt signing key for Kubernetes
apt_key:
url: https://packages.cloud.google.com/apt/doc/apt-key.gpg
state: present
- name: Adding apt repository for Kubernetes
apt_repository:
repo: deb https://apt.kubernetes.io/ kubernetes-xenial main
state: present
filename: kubernetes.list
- name: Install Kubernetes binaries
apt:
name: "{{ packages }}"
state: present
update_cache: yes
vars:
packages:
- kubelet
- kubeadm
- kubectl
- name: Configure node ip
lineinfile:
path: /etc/default/kubelet
line: KUBELET_EXTRA_ARGS=--node-ip={{ node_internal_ip }}
create: yes
- name: Restart kubelet
service:
name: kubelet
daemon_reload: yes
state: restarted
- name: Initialize the Kubernetes cluster using kubeadm
command: kubeadm init --apiserver-advertise-address="{{ node_internal_ip }}" --node-name "{{ node_name }}" --pod-network-cidr="{{ pod_network_cidr }}"
- name: Setup kubeconfig for "{{ user_name }}" user
command: "{{ item }}"
with_items:
- mkdir -p /home/"{{ user_name }}"/.kube
- cp -i /etc/kubernetes/admin.conf /home/"{{ user_name }}"/.kube/config
- chown "{{ user_name }}":"{{ user_name }}" /home/"{{ user_name }}"/.kube/config
- name: Install Flannel pod network
become: false
shell: kubectl create -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
- name: Generate join command
command: kubeadm token create --print-join-command
register: join_command
- name: Copy join command to local file
local_action: copy content="{{ join_command.stdout_lines[0] }}" dest="./join-command"
handlers:
- name: docker status
service: name=docker state=started
这是我的
worker-playbook.yml
:
---
- hosts: workernodes
become: true
tasks:
- name: Remove swapfile from /etc/fstab
mount:
name: "{{ item }}"
fstype: swap
state: absent
with_items:
- swap
- none
- name: Disable swap
command: swapoff -a
when: ansible_swaptotal_mb > 0
- name: Letting iptables see bridged traffic
shell: |
sudo modprobe br_netfilter
lsmod | grep br_netfilter
- name: Install packages that allow apt to be used over HTTPS
apt:
name: "{{ packages }}"
state: present
update_cache: yes
vars:
packages:
- apt-transport-https
- ca-certificates
- curl
- gnupg-agent
- software-properties-common
- name: Add an apt signing key for Docker
apt_key:
url: https://download.docker.com/linux/ubuntu/gpg
state: present
- name: Add apt repository for stable version
apt_repository:
repo: deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial stable
state: present
- name: Install docker and its dependecies
apt:
name: "{{ packages }}"
state: present
update_cache: yes
vars:
packages:
- docker-ce
- docker-ce-cli
- containerd.io
notify:
- docker status
- name: Add an apt signing key for Kubernetes
apt_key:
url: https://packages.cloud.google.com/apt/doc/apt-key.gpg
state: present
- name: Adding apt repository for Kubernetes
apt_repository:
repo: deb https://apt.kubernetes.io/ kubernetes-xenial main
state: present
filename: kubernetes.list
- name: Install Kubernetes binaries
apt:
name: "{{ packages }}"
state: present
update_cache: yes
vars:
packages:
- kubelet
- kubeadm
- kubectl
- name: Configure node ip
lineinfile:
path: /etc/default/kubelet
line: KUBELET_EXTRA_ARGS=--node-ip={{ node_internal_ip }}
create: yes
- name: Restart kubelet
service:
name: kubelet
daemon_reload: yes
state: restarted
- name: Copy the join command to server location
copy: src=join-command dest=/tmp/join-command.sh mode=0777
- name: Join the node to cluster
shell: |
echo " --node-name {{ node_name }}" >> /tmp/join-command.sh
sh /tmp/join-command.sh
handlers:
- name: docker status
service: name=docker state=started
我正在使用
pod_network_cidr="10.132.0.0/20
还。当我第一次运行 master-playbook 和 worker-playbook 时,worker-nodes 卡在了 join 部分。
kubectl get pods --all-namespaces
日志:
kube-system coredns-558bd4d5db-mlw6r 1/1 Running 0 2m3s
kube-system coredns-558bd4d5db-r4ptb 1/1 Running 0 2m4s
kube-system etcd.master-0 1/1 Running 0 2m18s
kube-system kube-apiserver.master-0 1/1 Running 0 2m18s
kube-system kube-controller-manager.master-0 1/1 Running 0 2m21s
kube-system kube-flannel-ds-tvvdl 1/1 Running 0 2m4s
kube-system kube-proxy-pwb7h 1/1 Running 0 2m4s
kube-system kube-schedulerr-0 1/1 Running 0 2m18s
但是在尝试了 worker-node 中的 join 命令后,我收到了这个错误:
Failed to request cluster-info, will try again: Get "https://10.132.0.15:6443/api/v1/namespaces/kube-public/configmaps/cluster-info?timeout=10s": net/http: re
quest canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
防火墙已正确打开,但我无法从工作节点 ping 到主节点。
最佳答案
根据 documentation您应该记住,您的 Pod 网络不得与任何主机网络重叠:如果有任何重叠,您可能会看到问题。此外,考虑到您使用的是 Flannel 而不是 Calico,请记住它们似乎在 .yaml 文件中指定了不同的 CIDR 范围 - 10.244.0.0/16 for Flannel与 192.168.0.0/16 for Calico并且 .yaml 文件中的 CIDR 范围应与您在设置期间指定的范围相匹配。
关于ubuntu - 安装 Flannel 后 Kubeadm join 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67967781/
kubeadm工作原理-kubeadm init原理分析-kubeadm join原理分析。kubeadm是社区维护的Kubernetes集群一键部署利器,使用两条命令即可完成k8s集群中master
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许在 Stack Overflow 上提出有关专业服务器或网络相关基础设施管理的问题。您可以编辑问
我想在我现有的 kubernetes 集群(v1.10)上安装 kube-prometheus。在此之前,文档说我需要从 127.0.0.1 更改 Controller /调度程序的 IP 地址至 0
我关注了 Alex Ellis 的精彩 tutorial使用 kubeadm在 Raspberry Pi 上启动 K8s 集群。我不清楚当我希望对 Pis 进行电源循环时的最佳做法是什么。 我怀疑 s
我正在遵循a blog post使用kubeadm设置kubernetes集群。因此,我有一个使用网桥网络创建的Virtualbox,只需遵循说明即可。 我最初只是做了kubeadm init而没有用
Kubeadm 初始化问题。 配置数据版本: os -rhel7.5 env -onprem server docker - 19 kube - 18 控制台输出: [wait-control-pla
我试图 create a single master cluster with kubeadm在 CentOS 虚拟机中。 我想在主节点上安排 pod,所以我运行以下命令 kubectl taint
我有带有 3 个节点“VM”的 K8s 集群,在通过 kubespray“基于 kubeadm 的工具”安装的所有 3 个节点“未污染的主节点”上安装了 Etcd 进行主/工作 现在我想用另一个替换一
在kubeadm之前,我使用以下步骤将法兰绒ip&mtu值带给docker。 步骤1:停止Docker和Flannel 步骤2:启动Flannel并检查其状态; 步骤3:像这样更新Docker启动脚本
Kubeadm 初始化问题。 配置数据版本: os -rhel7.5 env -onprem server docker - 19 kube - 18 控制台输出: [wait-control-pla
kubeadm是Kubernetes官方提供的用于快速安装Kubernetes集群的工具,通过将集群的各个组件进行容器化安装管理,通过kubeadm的方式安装集群比二进制的方式安装要方便不少。 安装参
初始化时 kubeadm我收到以下错误。我也试过命令 kubeadm reset做之前kubadm init . Kubelet 也在运行,我使用的相同命令是 systemctl enable kub
目前正在玩 kubernetes,我需要自己在自己的硬件或云提供商上部署一个集群(我很想使用 GCE,但在不久的将来不可能)。 我看到 kubeadm 允许快速简单的集群引导,除了它只提供一个 kub
我正在 AKS 内的一个小型托管集群上摆弄 Kubernetes。 看起来我已经准备好进行部署,因为我的节点池已经在设置时配置并引导(或者看起来就是这样)。 我在这里遗漏了什么吗? 最佳答案 Do I
我能够使用 kubeadm 为 kubernetes 部署引导主节点,但我在 kubeadm join phase kubelet-start phase 中遇到错误: kubeadm --v=5 j
我在定义 https://github.com/pablotoledo/kubernetes-poc/blob/master/Vagrantfile 的 Vagrantfile 时遇到问题。 在这个
在将新节点添加到现有1.9.0群集时。 kubeadm给出此错误消息。 我的集群在Centos 7服务器上运行。 docker deamon正在运行,但未找到文件/var/run/dockershim
使用 kubeadm init使用默认配置选项初始化控制平面。 有没有办法查看它将用于控制平面的默认值/配置,如何查看该配置文件,以及它存储在哪里? 最佳答案 找到命令:(以防万一有人需要它) C02
我已经使用 kubeadm 设置了我的主节点. 现在我想运行 join在我的节点上执行命令,以便稍后加入集群。 我所要做的就是跑 kubeadm join --token --discovery-t
我正在尝试在 Debian 10 上运行的 3 个裸机节点(1 个主节点和 2 个工作节点)上使用 kubeadm 创建单个控制平面集群,并将 Docker 作为容器运行时。每个节点都有一个外部IP和
我是一名优秀的程序员,十分优秀!