我一直试图让spark在我的本地机器上运行kubernetes。然而,我在试图理解服务网络是如何工作的方面遇到了一个问题。
我在笔记本电脑上用容器运行kubernetes:
kubectl create-f Kubernetes/examples/spark/spark-master-controller.yaml kubectl create-f Kubernetes/examples/spark/spark-master-service.yaml kubectl create-f Kubernetes/examples/spark/spark-webui.yaml
kubectl create-f Kubernetes/examples/spark/spark-worker-controller.yaml kubectl create-f Kubernetes/examples/spark/zeppelin-controller.yaml kubectl create-f Kubernetes/examples/spark/zeppelin-service.yaml
我的本地网络:10.7.64.0/24我的docker网络:172.17.0.1/16
起作用的是:
sudo docker run-d--net=host--特权GCR.io/google-containers/hyperkube:v1.2.0/hyperkube proxy--master=http://127.0.0.1:8080--v=2-cluster-dns=10.7.64.184-cluster-domain=kubernetes.local--cloud-provider=“”
sudo docker run-d--net=host--restart=always\gcr.io/google_containers/kube2sky:1.11\-v=10-logtostderr=true-domain=kubernetes.local\-etcd-server=“http://127.0.0.1:4001”
sudo docker运行-d--net=host--restart=always\-e etcd_machines=“http://127.0.0.1:4001”\-e skydns_domain=“kubernetes.local”\-e skydns_addr=“10.7.64.184:53”\-e skydns_nameservers=“8.8.8.8:53,8.8.4.4:53”\gcr.io/google_containers/skydns:2015-03-11-001
谢谢!
我找到了问题所在,代理没有运行,因为--cluster-dns和--cluster-domain不是代理的参数。现在创建了IPTable,并且spark工作者能够连接到Spark-master的服务ip。
我已经使用kubeadm在ubuntu服务器上设置了kubernetes集群。我已经创建了一个部署,并使用NodePort服务公开了该部署。如何访问运行pod的API(使用Ubuntu主机服务器的IP)? 在此处输入图像描述
Kubernetes服务 github.com/soluble-ai/kubetap项目提供了一个插件kubectl为轻松部署mitmproxy到代理Kubernetes服务。 有关用法和文档,请参考kubetap。
网络服务提供弹性公网IP、NAT网关、DNS解析等功能。 弹性公网IP 弹性公网IP(Elastic IP)是一种NAT IP,通过与虚拟机绑定,将弹性公网IP与虚拟机的私有地址进行NAT映射,实现虚拟机与公网之间的通信。 NAT网关 NAT网关能够为公有云VPC网络中虚拟机提供IP地址转换功能,使虚拟机可以访问外网或提供互联网服务。 DNS解析 DNS解析用于将简单好记的域名解析为计算机用于通信
此外,如果我删除尤里卡和Zuul,我如何使它在本地和非kubernetes环境中工作?
Twisted Twisted 是一个事件驱动的网络引擎。他可以被用来构建多种网络协议的应用程序,包括:HTTP 服务器和客户端;使用 SMTP、POP3、IMAP 或者 SSH 协议测应用程序和 IM (即时消息)等应用 更多。 PyZMQ PyZMQ 是 ZeroMQ 的 Python 绑定。ZeroMQ 是一个高性能的异步消息库,它的一个很大的优势在于其可以被用作一个消息队列而不需要消息代理
主要内容:一、网络的整体架构,二、服务端的流程,三、源码分析,四、总结一、网络的整体架构 在前面介绍Redis的整体流程时,初步介绍过服务端的网络代码,现在先看一下整体的架构: 1、服务处理(EPoll) 如果没有接触过网张编程的,特别是对LINUX上的编程模型一点都不清楚的。这块可能是个麻烦.Redis为了保证在不两同的平台的高效可行的运行,采用了在不同平台自适应使用不同的网络编程模型,这其中包括一些可能比较专用的平台,如Solaries10中的 evport,m