实践内容Java Web 应用的结构比较简单,是一个运行在 Tomcat 的 Web App,如果所示:JSP 页面通过 JDBC 直接访问 MySQL 数据库并展示数据。出于演示和简化的目的,只要程序正确连接到了数据库,就会自动完成对应的 Table 的创建与初始化数据的准备工作。所以,当我们通过浏览器访问此应用时,就会显示一个表格的页面,数据则来自于数据库。实践解析此应用需要启动两个容器:Web App 容器 和 MySQL 容器,并且 Web App 容器需要访问 MySQL 容器。Docker 时代实现的方式假设在一个宿主机上启动了这两个容器,需要吧 MySQL 容器的 IP 地址通过环境变量注入 Web App 容器里;同时,需要将 Web App 容器的 8080 端口映射到宿主机的 8080 端口,以便在外部访问环境准备当前已经有一个 kubernetes 集群,部署机和工作节点均是由 pve 创建的虚拟机,部署机 IP:192168.25.64;kubernetes 集群工作节点:192.168.25.72启动 MySQL 服务在 Kubernetes 节点上操作更新系
Kubernetes 发展历史及好处2015 年,谷歌联合 20 多家公司一起建立了 CNCF(Cloud Native Computing Fouondation,云原生计算基金会)开源组织来推广 Kubernetes。并由此开创了 云原生应用(Cloud Native Application)的新时代。Kubernetes 作为 CNCF 钦定的官方 云原生平台,正在碘伏应用程序的开发方式。Kubernetes 好处1、可以“轻装上阵”地开发复杂系统。采用 Kubernetes 解决方案后,这个团队里,只需要一名架构师负责系统中服务组件的架构设计,几名开发工程师负责业务代码的开发,一名系统兼运维工程师负责 Kubernetes 的部署和运维。2、可以全面拥抱微服务架构。微服务架构的核心是将一个巨大的单体应用 分解为 很多小的互相连接的微服务,一个微服务可能由多个实例副本支撑,副本的数量可以随着系统的负荷变化进行调整。微服务架构使得每个服务都可以独立开发、升级、扩展,因此系统具备很高的 稳定性 和 快速迭代能力,开发者可以自由选择开发技术。3、Kubernetes 内在的服务弹性扩容
Kubernetes 基本概念使用 Kubernetes 提供的解决方案,可以节省不少于 30% 的开发成本,可以讲精力更集中于业务本身。Kubernetes 提供强大的自动化机制,所以后期的运维难度 和 运维成本 会大幅度降低Kubernetes 不局限于恩和一种语言,没有限定任何编程接口,所以不论是使用 Java、Go、C++ 还是 Python 都可以被映射为 Kubernetes 的 Service,并通过标准的 TCP 通信协议进行交互Kubernetes 平台对现有的编程语言、编程框架、中间件没有任何的侵入性,所以现有的系统也很容易改造升级并迁移到 Kubernetes 平台上。Kubernetes 是一个完备的分布式系统支撑平台。Kubernetes 具有完备的集群管理能力,包括多层次的安全防护和准入机制、多租户应用支撑能力、透明的服务注册和服务发现机制、内建的智能负载均衡器、强大的故障发现和自我修复能力、服务滚动升级和在线扩容能力、可扩展的资源自动调度机制、多里力度的资源配额管理能力。Kubernetes 提供完善的管理工具,涵盖 开发、部署测试、运维监控在内的各个环节
虚拟机启动,安装 Ubuntu 20.04 系统安装 docker采用的是内网镜像源的安装方式:curl -fsSL http://192.168.ip.ip/raw/general/docker/install-docker.sh | DOWNLOAD_URL=http://192.168.ip.ip/docker bash -s安装后,启动 docker 服务sudo systemctl daemon-reload sudo systemctl restart docker安装 Kuboard-Spray:图形化界面的离线安装工具Kuboard-Spray 是一款可以在图形界面引导下完成 Kubernetes 高可用集群离线安装的工具,安装后的集群版本为:Kubernetes v1.23.1执行以下命令:docker run -d \ # 在后台运行容器 --privileged \ # 给予容器特权模式运行 --restart=unless-stopped \ # 容器退出时自动重启,除非手动停止 --name=kuboard-spray \ # 设置容器
问题将本地的文件【linuxtest.tar.gz】上传至服务器中指定的目录 /home/xyz/linux/ 下创建目录登录服务器后,执行以下命令查看当前所在目录,并创建 ~/linux/ 目录pwd # 查看当前目录 mkdir linux # 在当前目录位置创建新的子目录 linux找到本地文件地址找到本地文件,右键 复制文件地址打开命令行界面本地电脑使用 Win + r 然后输入 cmd 进入命令行界面执行以下命令:scp /path/filename username@serverIp:/path/命令解析:/path/filename 替换成刚刚复制的文件地址,但是可以去掉复制过来的 "" 。要上传到服务器的文件在本地电脑的地址username@serverIp 替换成 服务器的用户名和 IP 地址/path/替换成希望在服务器上存放文件的目标路径示例将本地的文件【linuxtest.tar.gz】上传至服务器中指定的目录 /home/xyz/linux/ 下scp C:\Users\sharo\Desktop\linuxest.tar.gz root@
糖呀糖 xyz
我们谈论生活,讨论技术,借由文字,抵达心灵。