美文网首页
k8s运行服务示例

k8s运行服务示例

作者: Walker_7797 | 来源:发表于2022-01-28 15:36 被阅读0次

[toc]

一、自定义镜像运行web服务

1.1 构建nginx镜像

nginx+tomcat+nfs

  • 基于centos构建nginx镜像

基于官方centos包,添加nginx镜像,在创建镜像时编译nginx,并加入想要添加的命令,添加好配置文件,加入静态资源包,暴露端口,启动命令等

1.2 构建jdk镜像

  • 构建jdk镜像

基于打好的centos镜像,添加jdk,构建jdk镜像

1.3 构建tomcat镜像

  • 构建tomcat镜像

基于打好的jdk镜像,添加tomcat,包括配置文件,启动命令,守护进程等,构建tomcat镜像

  • 创建nfs挂载目录

在nfs服务器上创建挂载目录,并编辑/etc/exports文件,挂载出去,重启nfs

1.4 运行nginx

  • 运行nginx

编写nginx的deployment和service的yaml文件,指定nfs挂载目录,暴露nodeport端口,运行nginx的pod

1.5 运行tomcat

  • 运行tomcat

编写tomcat的deployment和service的yaml文件,指定nfs挂载目录,不暴露端口,通过nginx配置转发规则到服务名的方式到tomcat的pod,运行tomcat的pod

  • 访问nginx首页


    image.png
  • 通过nginx访问tomcat静态图片


    image.png

二、运行zookeeper集群

2.1 构建zookeeper镜像

  • 基于jdk构建zookeeper镜像

基于jdk镜像,添加需要安装的命令,创建zookeeper需要的目录,删除多余的文件,添加配置文件,添加环境变量,运行启动脚本

2.2 创建pv和pvc

  • 创建nfs挂载目录,并创建pv和pvc

在nfs服务端,创建zookeeper的挂载配置文件目录,创建pv和pvc,指定访问模式为ReadWriteOnce

2.3 运行zookeeper

  • 运行zookeeper,用客户端连接zookeeper

编写zookeeper的yaml,绑定pvc,运行zookeeper的pod


image.png
image.png

三、运行redis集群

3.1 构建redis镜像

  • 基于centos构建redis镜像

添加redis压缩包,编译redis,并创建数据目录,添加配置文件,启动脚本,暴露端口6379

3.2 创建pv

  • 创建nfs挂载目录,并创建pv

在nfs服务端创建redis挂载目录,创建pv,指定访问模式为ReadWriteOnce

3.3 运行redis

  • 运行redis,初始化redis集群

编写redis的yaml文件,指定pvc模板,自动绑定pv,使用StatefulSet和headless模式,运行redis,使用命令初始化集群

  • redis从5版本开始使用redis-cli命令初始化集群,ip为redis的pod的ip,port为指定暴露的端口,默认是6379
redis-cli --cluster create ip:port ip:port ip:port ip:port ip:port ip:port --cluster-replicas 1
image.png

四、运行mysql主从

4.1 拉取镜像

  • 拉取mysql和xtrabackup镜像

拉取mysql:5.7版本的镜像和xtrabackup:1.0镜像

4.2 创建pv

  • 创建nfs挂载目录,并创建pv

在nfs服务端创建mysql挂载目录,创建pv,指定访问模式为ReadWriteOnce

4.3 运行mysql

  • 运行mysql,查看主从

编写mysql的yaml文件,指定pvc模板,自动绑定pv,使用StatefulSet和headless模式,运行mysql

image.png

五、运行单体服务Jenkins

5.1 构建jenkins镜像

  • 基于jdk构建jenkins镜像

添加jenkins的war包,启动脚本,指定暴露的端口8080

5.2 创建pv

  • 创建nfs挂载目录,并创建pv

在nfs服务端创建jenkins挂载目录,创建pv,指定访问模式为ReadWriteOnce

5.3 运行jenkins

  • 运行jenkins,构建job

编写jenkins的yaml文件,绑定pvc,运行jenkins

image.png

六、微服务注册和发现

6.1 构建镜像

  • 构建生产者和消费者镜像

基于jdk构建dubbo生产者和消费者镜像

6.2 运行dubbo

  • 运行生产者和消费者

编写provider和consumer的yaml文件,运行provider和consumer,增加消费者,服务自动发现

image.png

6.3 运行dubboadmin

  • 运行dubbo-admin管理端

基于war包,构建镜像,编写yaml文件,运行dubbo-admin

image.png

七、运行WordPress博客

7.1 构建nginx镜像

  • 构建nginx和php镜像

构建nginx镜像,添加配置文件,启动脚本,创建共享的wordpress目录,暴露端口80和443;构建php镜像,添加配置文件,启动脚本,暴露端口9000

7.2 创建pv

  • 创建nfs挂载目录

在nfs服务端创建wordpress挂载目录,解压下载好的wordpress压缩包到挂载目录

7.3 运行wordpress

编写wordpress的yaml文件,挂载nfs目录,运行wordpress

image.png
image.png

相关文章

  • k8s运行服务示例

    [toc] 一、自定义镜像运行web服务 1.1 构建nginx镜像 nginx+tomcat+nfs 基于cen...

  • k8s架构分析(二)

    master节点 k8s的集群由master和node组成,节点上运行着若干k8s服务。 master节点之上运行...

  • 基础知识之 PV PVC 理解

    基础重要的服务介绍 Master 上运行的服务 etcd 服务: k8s 内部关系图: ==Kubernetes ...

  • day20-多线程

    1.多线程 代码示例 运行结果 2.创建线程 代码示例 运行结果 4.应用 server(服务端) 代码示例 cl...

  • 10.25 多线程

    1.多线程 代码示例 运行结果 2.创建线程 代码示例 运行结果 4.应用 server(服务端) 代码示例 cl...

  • 管理systemd centos7

    systemd Unit类型 特性 管理服务 服务查看 服务状态 systemctl 命令示例 运行级别 Cent...

  • GO语言gin框架实战-01-基本使用

    1. 定义路由服务 我们写一个简单的K8S示例来做完整示例: 2. 定义headers函数 2.1 Get方法 Q...

  • Kubernetes

    什么是K8s K8s本质上就是一组服务器集群,k8s可以在集群的各个节点上运行特定的dockert容器。 一、发展...

  • Pod内进程访问k8s服务

    Pod内进程访问k8s服务 外部服务可以通过kubeconfig访问k8s服务,那k8s集群内部服务(Pos内服务...

  • 运行Abp Vnext 微服务示例

    abp vnext的微服务https://docs.abp.io/en/abp/latest/Samples/Mi...

网友评论

      本文标题:k8s运行服务示例

      本文链接:https://www.haomeiwen.com/subject/gtuwhrtx.html