k8sCICD

news/2024/9/25 4:29:18/

k8s&&CICD

  • 配置文件
  • 数据库
  • 网络

配置文件

服务的配置文件属于有状态信息,而服务本身属于无状态,因此我决定将服务源码与配置文件分开存放。
jenkins流水线步骤:

  • 开发人员与运维人员配合更新配置文件仓库(Dockerfile、yaml、服务的config.yaml)
  • 拉取配置文件仓库,更新configMap、Secret等
  • 拉取源码,借助Dockerfile生成镜像包

数据库

借助Flyway工具,将sql封装到服务源码中,随服务启动执行。
Flyway和Liquibase的工作原理类似,基本流程如下:

  • 开发人员在代码库中编写数据库变更脚本,例如创建表、修改表结构、插入数据等。
  • 运行CICD流程时,Flyway或Liquibase会扫描数据库变更脚本,并根据其版本号和顺序执行这些脚本。
  • 如果数据库中不存在相应的变更记录,工具将会自动执行脚本并将变更记录插入到数据库的元数据表中。
  • 如果数据库中已存在相应的变更记录,工具会检查脚本的校验和,以确保脚本内容未被篡改。
  • 如果有新的变更脚本添加到代码库中,工具会自动执行这些脚本并更新数据库的元数据表。

Flyway和Liquibase都支持多种数据库,并提供了命令行工具和插件,以便与CICD流程集成。它们可以帮助开发团队更简便地管理数据库变更,并确保不同环境中数据库的结构和数据的一致性。

**dbdeploy:**dbdeploy是另一个开源的数据库迁移工具,它允许开发人员使用简单的文本脚本来管理数据库结构和数据变更。它使用基于文本的格式来记录和管理数据库迁移,可与CICD工具集成。
**MyBatis Migrations:**MyBatis Migrations是一个数据库迁移框架,由MyBatis团队提供。它使用Java编写,并允许开发人员使用Java或XML来编写和管理数据库变更。它与MyBatis数据库访问框架无缝集成,并提供了丰富的命令行工具和API。

网络

约定俗称
针对k8s node 节点

端口
50000-60000: 0.0.0.0/0
40000-50000: 公司开放
优点: 不再需要开放端口的操作
ELB:
内部访问,天然支持ELB
外部访问,将node纳入ELB池子,前端挂域名

不具备可行性,有安全隐患


http://www.ppmy.cn/news/1451296.html

相关文章

android init进程启动流程

Android系统完整的启动流程 android 系统架构图 init进程的启动流程 init进程启动服务的顺序 bool Service::Start() {// Starting a service removes it from the disabled or reset state and// immediately takes it out of the restarting state if it was in there.flags_…

前端初学者的 CSS 入门

文章导读:AI 辅助学习前端,包含入门、进阶、高级部分前端系列内容,当前是 CSS 的部分,瑶琴会持续更新,适合零基础的朋友,已有前端工作经验的可以不看,也可以当作基础知识回顾。 从这篇文章开始…

Linux 第十三章

🐶博主主页:ᰔᩚ. 一怀明月ꦿ ❤️‍🔥专栏系列:线性代数,C初学者入门训练,题解C,C的使用文章,「初学」C,linux 🔥座右铭:“不要等到什么都没有了…

opencv t函数

在OpenCV中&#xff0c;t函数通常用于转置矩阵&#xff08;Transpose&#xff09;。这意味着矩阵的行和列互换位置。 在C中&#xff0c;使用OpenCV库进行矩阵转置的代码如下所示&#xff1a; #include <opencv2/opencv.hpp> #include <iostream>int main() {// 创…

算法学习Day1——【数据结构】单调栈

1.什么是单调栈以及单调栈的作用 &#xff08;1&#xff09;定义 顾名思义&#xff0c;单调栈是一个有序的栈&#xff0c;可能从栈顶到栈底单调递增&#xff08;单调递增栈&#xff09;&#xff0c;也有可能从栈顶到栈底单调递减&#xff08;单调递减栈&#xff09;。 &…

一些不错的技术网站(持续更新)

嵌入式&#xff1a; GitHub - nhivp/Awesome-Embedded: A curated list of awesome embedded programming. 求职&#xff1a; https://www.toutiao.com/w/1782514534500489/?appnews_article&timestamp1699951341&use_new_style1&share_tokenA6AADF47-C6E0-4EF3…

java的嵌套循环

在java中&#xff0c;也有嵌套循环。 下面是一个示例代码 public class Example17qiantaoxunhuan {public static void main(String[] args) {int i,j;for(i1;i<9;i){for(j1;j<i;j){System.out.println("*");}System.out.println("\n");}}}这段代码…

在Mac上使用国内源安装 homebrew

打开终端&#xff0c;执行如下指令 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"还原官网地址 git -C "/opt/homebrew" remote set-url origin https://github.com/Homebrew/brew查看版本 brew -v查找软件…