kubernetes不同pod之间调用(四)
kubernetes不同pod之间调用(四)
k8s系列 源自我工作上的实际场景,记录于此。
kubernetes不同服务间的调用、kubernetes不同容器间的调用、kubernetes不同…
今天在群里看到有人问A容器怎么调用B容器的数据库,其实也是很简单的。
方式一:基于域名
假设你的Apod是一个springboot应用,Bpod是一个mysql,内部端口3306。k8s帮我们搞好域名了,直接使用Bpod就会解析到对应ip。
所以Apod中的数据连接应该写成这样
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://Bpod:3306/db?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
注意,上面的情况需要在同一命名空间下namespace
方式二:基于网卡ip
假设你在master上部署,master的网卡分配ip是192.168.1.1
那么你先部署Bpod,使用kubectl get svc 获取Bpod的对外端口30001(假设)
那么此时你Apod的数据库连接可以写成这样:
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://192.168.1.1:30001/db?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
获取不同命名空间时使用 kubectl get svc -n namespaceName,不用-n时默认的命名空间是default
然后部署Apod
这种情况可以覆盖不同命名空间下的pod,测试环境下很好用。生产上的用法是方法一,基于域名来的。
kubernetes不同pod之间调用(四)的更多相关文章
- Kubernetes之Pod使用
一.什么是Podkubernetes中的一切都可以理解为是一种资源对象,pod,rc,service,都可以理解是 一种资源对象.pod的组成示意图如下,由一个叫”pause“的根容器,加上一个或多个 ...
- Kubernetes之POD
什么是Pod Pod是可以创建和管理Kubernetes计算的最小可部署单元.一个Pod代表着集群中运行的一个进程. Pod就像是豌豆荚一样,它由一个或者多个容器组成(例如Docker容器),它们共享 ...
- Kubernetes核心技术Pod
Kubernetes核心技术Pod Pod概述 Pod是K8S系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在K8S上运行容器化应用的资源对象,其它的资源对象 ...
- 服务注册中心之ZooKeeper系列(二) 实现一个简单微服务之间调用的例子
上一篇文章简单介绍了ZooKeeper,讲了分布式中,每个微服务都会部署到多台服务器上,那服务之间的调用是怎么样的呢?如图: 1.集群A中的服务调用者如何发现集群B中的服务提供者呢? 2.集群A中的服 ...
- kubernetes之pod健康检查
目录 kubernetes之pod健康检查 1.概述和分类 2.LivenessProbe探针(存活性探测) 3.ReadinessProbe探针(就绪型探测) 4.探针的实现方式 4.1.ExecA ...
- Kubernetes基石-pod容器
引用三个问题来叙述Kubernetes的pod容器 1.为什么不直接在一个Docker容器中运行所有的应用进程. 2.为什么pod这种容器中要同时运行多个Docker容器(可以只有一个) 3.为什么k ...
- kubernetes之pod拓扑分布约束
在日常使用 kubernetes 的过程中中,很多时候我们并没有过多的关心 pod 的到底调度在哪里,只是通过多副本的测试,来提高的我们的业务的可用性,但是当多个相同业务 pod 在分布在相同节点时, ...
- Kubernetes服务pod的健康检测liveness和readiness详解
Kubernetes服务pod的健康检测liveness和readiness详解 接下来给大家讲解下在K8S上,我们如果对我们的业务服务进行健康检测. Health Check.restartPoli ...
- Kubernetes隔离pod的网络
本章介绍如何通过限制pod可以与其他哪些pod通信,来确保pod之间的网络安全. 是否可以进行这些配置取决于集群中使用的容器网络插件.如果网络插件支持,可以通过NetworkPolicy资源配置网络隔 ...
- iOS应用之间调用
//// iOS应用之间调用.h// IOS笔记 1.判断系统里是否安装了某个app.比如新浪微博应用注册了URL scheme为@"weibo",我们可以通过[[UIAppl ...
随机推荐
- 2023版:深度比较几种.NET Excel导出库的性能差异
引言 背景和目的 本文介绍了几个常用的电子表格处理库,包括EPPlus.NPOI.Aspose.Cells和DocumentFormat.OpenXml,我们将对这些库进行性能测评,以便为开发人员提供 ...
- Go 复合类型之切片类型介绍
Go 复合类型之切片类型 目录 Go 复合类型之切片类型 一.引入 二.切片(Slice)概述 2.1 基本介绍 2.2 特点 2.3 切片与数组的区别 三. 切片声明与初始化 3.1 方式一:使用切 ...
- 每天5分钟复习OpenStack(三)
每天5分钟复习OpenStack(三) 为什么要拉起kvm 虚拟机要熟悉这些操作? 作为一个运维工程师,将来有大量的时间是在制作镜像,镜像的制作就是在kvm虚拟化环境拉起kvm 管理的虚拟机的过程,安 ...
- ubuntu 20.1 (linux) 下软件安装教程(基本上都是使用命令行安装)
一.node 1. 安装教程 # 第二步,添加源后安装 需要什么版本直接替换后面的数字即可,如果需要21,直接将20替换为21就可以了 curl -sL https://deb.nodesource. ...
- 使用Blazor构建投资回报计算器
本文由葡萄城技术团队原创并首发.转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 前言 本博客中创建的投资计算器根据存入金额和回报率计算每个投资周期的特定回报 ...
- 数据结构-线性表-双向链表(c++)
与单循环链表类似,但析构函数需要注意 析构函数: 因为while循环的条件是p->next!=front,所以不能直接delete front: template<class T> ...
- 服务器没有开放3306端口 远程访问MySQL数据库方法
一.前言 当装有MySQL的服务器为了防止数据库被黑,提高安全性,把3306端口禁止掉,禁止对外访问,我之前写过一篇是借助跳板机的SSH隧道来访问实现安全,这种情况依然需要开放3306端口和使用一 ...
- windows下使用Mingw执行make编译
目录 windows下使用Mingw执行make编译 下载安装 Mingw 设置环境变量 验证环境 gcc mingw32-make 编译 一.准备好相关代码 二.执行Makefile 运行 优化 整 ...
- Java Lambda 表达式常见面试问题与解答
公众号「架构成长指南」,专注于生产实践.云原生.分布式系统.大数据技术分享. 在本文中,我们将讨论一些重要且常见的 Java Lambda 表达式面试问题和解答 1.什么是 Lambda 表达式? l ...
- i-MES生产制造管理系统-总览
前言 说起 MES 就不得不说 ERP,但是 ERP 大家基本上都知道,MES 就不一定了,常见的 ERP 系统包括 SAP.金蝶.用友等,ERP的流程相对来说也比较统一:MES就不同了,基本上熟悉业 ...