从集群中每个节点获取 pod CIDR 地址。
kubectl get nodes -o jsonpath='{.items[*].spec.podCIDR}'
kube-proxy所使用的 pod网络CIDR。
kubectl cluster-info dump | grep -m 1 cluster-cidr
--cluster-cidr
/ --pod-network-cidr
反馈给kube-controller-manager的配置。
ps -ef | grep "cluster-cidr"
在文件 /etc/kubernetes/manifests/kube-controller-manager.yaml
中的
# sudo grep cidr /etc/kubernetes/manifests/kube-*
/etc/kubernetes/manifests/kube-controller-manager.yaml: - --allocate-node-cidrs=true
/etc/kubernetes/manifests/kube-controller-manager.yaml: - --cluster-cidr=192.168.0.0/16
/etc/kubernetes/manifests/kube-controller-manager.yaml: - --node-cidr-mask-size=24
用kubeadm方式获取
kubeadm config view | grep Subnet
你好,你是怎么解决的呢。我也遇到这个问题。
上面的代码是针对jenkins插件的:https://github.com/jenkinsci/kubernetes-plugin。
因此,运行上述jenkins将在master或node服务器上运行job。镜像将下载到master/node上。上面的插件用于设置jenkins代理,因此,如果没有代理,就会在master上运行。
Combine过滤器的第一个参数必须是字典:
- set_fact:
node_data: "{{ node_data | combine ( item.split(' ').0 : { 'name': item.split(' ').0 , 'ip' : item.split(' ').1 }, recursive=True) }}"
with_items: "{{ nodes.stdout_lines }}"
需要这样做:
- set_fact:
node_data: "{{ node_data | combine ({item.split(' ').0 : { 'name': item.split(' ').0 , 'ip' : item.split(' ').1 }}, recursive=True) }}"
with_items: "{{ nodes.stdout_lines }}"
请注意要合并的第一个参数新{{...}
。为了干净,你可能需要考虑重新格式化此task:
- set_fact:
node_data: >-
{{ node_data | combine ({
item.split(' ').0: {
'name': item.split(' ').0,
'ip': item.split(' ').1
},
}, recursive=True) }}
with_items: "{{ nodes.stdout_lines }}"
甚至可以通过将对item.split
的调用移到vars中来使其更加干净,如下所示:
- set_fact:
node_data: >-
{{ node_data | combine ({
name: {
'name': name,
'ip': ip
},
}, recursive=True) }}
vars:
name: "{{ item.split(' ').0 }}"
ip: "{{ item.split(' ').1 }}"
with_items: "{{ nodes.stdout_lines }}"
Minikube不再作为cask
.
命令变了,从
brew cask install minikube
变为
brew install minikube
或使用
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-amd64 \
&& sudo install minikube-darwin-amd64 /usr/local/bin/minikube