PostgresSQL--基于Kubernetes部署PostgresSQL

2024-08-26 13:20

本文主要是介绍PostgresSQL--基于Kubernetes部署PostgresSQL,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述
基于docker
拉取镜像,这个镜像是我自己的阿里云镜像,拉取的国外的镜像。

docker pull registry.cn-hangzhou.aliyuncs.com/qiluo-images/postgres:latest

创建 dolphinscheduler 命名空间,本文命名空间是使用的dolphinscheduler
使用 kubectl 命令创建命名空间:

kubectl create namespace dolphinscheduler
  1. 创建 PersistentVolume (PV)
    首先,定义一个 PersistentVolume,它将使用你的存储资源(如主机路径、NFS、云存储等)。
vi postgres-pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:name: postgres-pvnamespace: dolphinscheduler
spec:capacity:storage: 10Gi  # 存储大小accessModes:- ReadWriteOnce  # 允许单节点读写persistentVolumeReclaimPolicy: Retain  # 保留策略hostPath:path: /data/postgres  # 主机路径,存储数据的地方
  1. 创建 PersistentVolumeClaim (PVC)
    接着,定义一个 PersistentVolumeClaim,它会绑定到上面的 PersistentVolume 上。
vi postgres-pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: postgres-pvcnamespace: dolphinscheduler
spec:accessModes:- ReadWriteOnceresources:requests:storage: 10Gi  # 申请的存储大小
  1. 创建 Deployment 以使用 PVC
    PostgreSQL Deployment 配置,添加卷挂载,并将数据库的数据目录挂载到持久化存储中。
vi  postgres-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:name: postgresnamespace: dolphinscheduler
spec:replicas: 1selector:matchLabels:app: postgrestemplate:metadata:labels:app: postgresspec:containers:- name: postgresimage: registry.cn-hangzhou.aliyuncs.com/qiluo-images/postgres:latestports:- containerPort: 5432env:- name: POSTGRES_USERvalue: "postgres"- name: POSTGRES_PASSWORDvalue: "Yo5WYypu0mCCheUX"- name: POSTGRES_DBvalue: "postgres"volumeMounts:- name: postgres-storagemountPath: /var/lib/postgresql/data  # PostgreSQL 数据目录volumes:- name: postgres-storagepersistentVolumeClaim:claimName: postgres-pvc

Yo5WYypu0mCCheUX 是密码

创建 postgres-service.yaml 添加一个 Service 来暴露 PostgreSQL 的端口:

vi postgres-service.yaml
apiVersion: v1
kind: Service
metadata:name: postgres-servicenamespace: dolphinscheduler
spec:type: NodePortselector:app: postgresports:- protocol: TCPport: 5432        # Service 在集群内部暴露的端口targetPort: 5432  # 容器内部的端口nodePort: 30432   # 指定的 NodePort 端口号
  1. 应用所有配置
    将上述配置保存为 YAML 文件,然后使用 kubectl apply 命令逐个应用。
kubectl apply -f postgres-pv.yaml
kubectl apply -f postgres-pvc.yaml
kubectl apply -f postgres-deployment.yaml
kubectl apply -f postgres-service.yaml

在这里插入图片描述

在这里插入图片描述

这篇关于PostgresSQL--基于Kubernetes部署PostgresSQL的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1108676

相关文章

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

SpringBoot配置Ollama实现本地部署DeepSeek

《SpringBoot配置Ollama实现本地部署DeepSeek》本文主要介绍了在本地环境中使用Ollama配置DeepSeek模型,并在IntelliJIDEA中创建一个Sprin... 目录前言详细步骤一、本地配置DeepSeek二、SpringBoot项目调用本地DeepSeek前言随着人工智能技

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基

CentOS 7部署主域名服务器 DNS的方法

《CentOS7部署主域名服务器DNS的方法》文章详细介绍了在CentOS7上部署主域名服务器DNS的步骤,包括安装BIND服务、配置DNS服务、添加域名区域、创建区域文件、配置反向解析、检查配置... 目录1. 安装 BIND 服务和工具2.  配置 BIND 服务3 . 添加你的域名区域配置4.创建区域

OpenManus本地部署实战亲测有效完全免费(最新推荐)

《OpenManus本地部署实战亲测有效完全免费(最新推荐)》文章介绍了如何在本地部署OpenManus大语言模型,包括环境搭建、LLM编程接口配置和测试步骤,本文给大家讲解的非常详细,感兴趣的朋友一... 目录1.概况2.环境搭建2.1安装miniconda或者anaconda2.2 LLM编程接口配置2

大数据spark3.5安装部署之local模式详解

《大数据spark3.5安装部署之local模式详解》本文介绍了如何在本地模式下安装和配置Spark,并展示了如何使用SparkShell进行基本的数据处理操作,同时,还介绍了如何通过Spark-su... 目录下载上传解压配置jdk解压配置环境变量启动查看交互操作命令行提交应用spark,一个数据处理框架

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

Ubuntu 22.04 服务器安装部署(nginx+postgresql)

《Ubuntu22.04服务器安装部署(nginx+postgresql)》Ubuntu22.04LTS是迄今为止最好的Ubuntu版本之一,很多linux的应用服务器都是选择的这个版本... 目录是什么让 Ubuntu 22.04 LTS 变得安全?更新了安全包linux 内核改进一、部署环境二、安装系统

JAVA集成本地部署的DeepSeek的图文教程

《JAVA集成本地部署的DeepSeek的图文教程》本文主要介绍了JAVA集成本地部署的DeepSeek的图文教程,包含配置环境变量及下载DeepSeek-R1模型并启动,具有一定的参考价值,感兴趣的... 目录一、下载部署DeepSeek1.下载ollama2.下载DeepSeek-R1模型并启动 二、J