`
lykops
  • 浏览: 86349 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

kubernetes将外部服务映射为内部服务

 
阅读更多

在实际应用中,一般不会把mysql这种重IO、有状态的应用直接放入k8s中,而是使用专用的服务器来独立部署。而像web这种无状态应用依然会运行在k8s当中,这时web服务器要连接k8s管理之外的数据库,有两种方式:一是直接连接数据库所在物理服务器IP,另一种方式就是借助k8s的Endpoints直接将外部服务器映射为k8s内部的一个服务。

下面这个例子就是展示Endpoints将外部服务映射为k8s内部服务的例子。
将外部服务器的172.17.241.47、59.107.26.221的80端口映射到内部服务

cat << EOF > lykops-service.yaml
apiVersion: v1
kind: Service
metadata:
  name: lykops
spec:
  ports:
  - port: 80
    targetPort: 81
    protocol: TCP
EOF

cat << EOF > lykops-endpoints.yaml
apiVersion: v1
kind: Endpoints
metadata:
  name: lykops
subsets:
  - addresses:
    - ip: 172.17.241.47
    - ip: 59.107.26.221
    ports:
    - port: 80
      protocol: TCP
EOF

kubectl create -f test-endpoints.yaml
kubectl create -f test-service.yaml

Endpoints的subsets中指定了需要连接的外部服务器的IP和端口。

<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>
分享到:
评论

相关推荐

    360私有云平台基于Kubernetes的容器服务实践.rar

    3. **服务发现与负载均衡**:创建Kubernetes服务,提供内部DNS解析和负载均衡,确保应用的高可用性和可访问性。 4. **自动扩展**:通过设置Horizontal Pod Autoscaler(HPA),可以根据CPU或内存使用情况自动调整...

    Kubernetes相关软件.zip

    其次,`dashboard-service.yaml`文件则定义了一个Kubernetes Service,它是集群内部的服务发现和负载均衡机制。Service定义了如何访问Pods,通常通过标签选择器来选取一组目标Pod。在这个文件中,你可能会看到...

    Go-Contour是LyftEnvoy代理的Kubernetes入口控制器

    2. **创建Ingress资源**:定义Ingress资源,指示Contour如何将外部请求映射到内部服务。 3. **配置Envoy**:Contour会自动检测Ingress资源的变化,并生成相应的Envoy配置。 4. **验证和监控**:使用Kubernetes的...

    【2021年12月升级版】Kubernetes全栈架构师:基于世界500强的k8s实战课程.rar

    4. **存储与网络**:理解Kubernetes中的持久化存储,如Persistent Volumes和Persistent Volume Claims,以及Ingress规则和网络策略,实现应用的外部访问和内部通信。 5. **自动化运维**:探索自动伸缩(Horizontal ...

    Kubernetes指南(Kubernetes Handbook)

    Kubernetes 可用于资源控制、高可用性、端口映射、用户管理、GPU 支持、安全审计、备份恢复、证书轮换、大规模集群管理、大数据与机器学习应用、Serverless 架构等场景。对于常见问题,提供了详细的排错指南,涵盖从...

    Kubernetes ingress yaml文件包

    在Kubernetes集群中,Ingress是一种管理外部访问到Pod服务的机制,主要负责提供网络路由规则,使得外部请求可以通过特定的URL和端口映射到内部的服务上。本压缩包文件“Kubernetes ingress yaml文件包”很可能是包含...

    Kubernetes1.16下部署Prometheus+node-exporter+Grafana监_Attachments.zip

    创建Grafana的Deployment和Service,确保Grafana服务可以从外部访问。然后,通过配置Grafana的仪表板和数据源设置,使其连接到Prometheus,展示收集到的监控数据。 在Grafana中,你可以导入预先准备好的仪表板模板...

    kubernetes 学子资料相关

    7. **Ingress**:为Pod提供外部网络访问的规则,可以实现负载均衡和路径路由。 8. **Helm**:Kubernetes的应用包管理工具,用于简化应用的部署和管理。 在KEUC2017的PPT中,可能会涵盖这些概念的实际应用,以及...

    七、kubernetes Service详解.pdf

    4. ExternalName:将Service映射到指定的外部DNS名称,它通过返回一个CNAME记录来提供服务,不使用任何代理。 在Service的流量转发策略上,kube-proxy支持三种模式: 1. userspace模式:kube-proxy在用户空间监听...

    Kubernetes知识点归纳1

    - **Service Discovery**: K8s使用DNS系统,将Service名映射为DNS域名,使得内部通信更加便捷。 3. **Pod**: - **Pod IP**: 每个Pod都有一个独立的IP地址,Pod IP用于Pod间的通信,它们在一个虚拟的二层网络上...

    k8s-ddns:为CoreDNS部署Kubernetes ExternalDNS

    通过ExternalDNS,我们可以将内部服务的DNS记录映射到外部可访问的域名,使得外部网络能够通过域名直接访问Kubernetes服务。 部署ExternalDNS的过程主要包括以下步骤: 1. **准备环境**:确保你已经安装了`kubectl...

    Kubernetes应用快速部署指南.pptx

    在 Kubernetes 中,我们使用 Deployment 对象来定义无状态应用的规格,包括副本数量、容器镜像、端口映射等。通过 Rancher UI,我们可以直观地创建和管理 Deployment。遵循 Kubernetes 官方文档,可以了解更详细的...

    k8s-kotlin-dsl,用于kubernetes配置的kotlin dsl.zip

    - **Ingress**:定义外部网络到Kubernetes内部服务的访问规则。 - **PersistentVolume**和**PersistentVolumeClaim**:管理持久化存储,确保数据在Pod重启或删除后仍能保留。 3. **Fabric8 Kubernetes Client** ...

    Kubernetes篇之平台存储系统介绍

    Rook通过Kubernetes的CRD(Custom Resource Definition)将存储资源抽象为Kubernetes对象,简化了存储的生命周期管理。 Rook的工作原理如下: - **Operator**:Rook作为一个Operator,是Kubernetes的一个概念,它是...

    Kubernetes容器云平台介绍.pptx

    - **Service**:定义了如何访问一组 Pod,可以是内部服务或外部服务,支持多种发布方式,如 ClusterIP、NodePort、LoadBalancer。 - **StatefulSet/PetSet**:用于管理有状态应用的副本集。 - **Volume/Persistent ...

    7-k8s部署之Ingress1

    在Kubernetes(k8s)集群中,Ingress是一个核心组件,它允许集群外部的请求按照预设的规则路由到内部的服务。Ingress资源定义了一组规则,将HTTP和HTTPS请求映射到服务上,提供了负载均衡、SSL终止以及基于路径的...

    kubernetes测试不同名称空间下pod访问情况资源清单文件

    5. **Service Discovery**:Kubernetes会自动为Service创建DNS条目,使得Pod可以通过服务名查找对应的IP。在跨命名空间场景下,正确配置DNS解析至关重要。 6. **RBAC(Role-Based Access Control)**:Kubernetes的...

    38 从外界连通Service与Service调试“三板斧”.pdf

    这就是为什么需要在Kubernetes外部访问Service时,要采用特殊的策略。常用的三种方法包括NodePort、LoadBalancer和Ingress。 NodePort方式是通过在集群的每一个节点上分配一个端口来实现外部访问的。当Service定义...

    ingress-nginx-4.0.17

    在Kubernetes中,ingress是一种定义外部网络访问到内部服务规则的资源。它允许通过HTTP/HTTPS路由到不同的服务,实现负载均衡、SSL终止、路径匹配等功能。ingress-nginx则是最广泛使用的ingress控制器之一,基于流行...

Global site tag (gtag.js) - Google Analytics