云计算k8s

申请阿里云服务器,按量付费,要带公网IP

1.专有网络VPC

每一台云服务器都有自己的公网ip和内网ip,集群直接访问使用内网

阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台通过这个创建

2.Docker

1.容器和虚拟机的区别

虚拟机太重,启动慢,开销大,拥有完整的操作系统,隔离性更强,扩展性差。

容器是请量级,启动快,开销小,共享操作系统,管理方便,扩展性强

2.Docker如何解决不同系统环境的问题?

将应用的Libs(函数库)、Deps(依赖)、配置与应用一起打包,借助于操作系统的Linux内核来运行

3.命令

1.安装yum

yum install -y yum-utils

2.设置docker数据源

yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3.安装docker免费版以及操作docker服务器命令行程序

yum install -y docker-ce docker-ce-cli containerd.i

4.设置开机启动,并关闭防火墙

systemctl enable docker

# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld

systemctl status firewalld

5.docker相关命令

镜像级别

 docker save -o nginx.tar nginx:latest

docker load -i nginx.tar

1.启动,停止,重启

systemctl start docker  # 启动docker服务

systemctl stop docker  # 停止docker服务

systemctl restart docker  # 重启docker服务

2.列出所有容器

docker ps

  • docker ps -a:列出所有容器,包括已停止的容器。
  • docker ps -q:只列出容器 ID。
  • docker ps --filter "status=exited":列出已退出的容器
    CONTAINER ID   IMAGE           COMMAND                  CREATED        STATUS        PORTS                    NAMES
    d1e1f4e8c6f6   nginx           "nginx -g 'daemon of…"   3 minutes ago   Up 3 minutes  0.0.0.0:80->80/tcp       webserver
    e92d9a645a97   mysql:5.7       "docker-entrypoint.s…"   5 minutes ago   Up 5 minutes  3306/tcp                 mysql-db
    
  • CONTAINER ID:容器的唯一标识符。
  • IMAGE:用于创建容器的 Docker 镜像。
  • COMMAND:容器启动时运行的命令。
  • CREATED:容器创建的时间。
  • STATUS:容器的当前状态(例如,Up X minutes)。
  • PORTS:主机和容器之间的端口映射。
  • NAMES:分配给容器的名称。
3.镜像容器之间的关系

镜像下载是docker pull

镜像:镜像是一个只读的模板,包含了创建容器所需的所有内容,包括代码、运行时、库、环境变量和配置文件。

容器:容器是镜像的一个运行实例。它是一个可执行的单元,包含了应用程序及其所有依赖项,运行在一个隔离的环境中。

 

 4.创建并运行一个容器

创建并运行nginx容器的命令:

 docker run --name containerName --restart=always -p 80:80 -d nginx

docker logs mn

命令解读:

  • docker run :创建并运行一个容器

  • --name : 给容器起一个名字,比如叫做mn

  • -p :将宿主机端口与容器端口映射,冒号侧是宿主机端口,侧是容器端口

  • -d:后台运行容器

  • nginx:镜像名称,例如nginx

5.进入容器,修改文件

1)进入容器。进入我们刚刚创建的nginx容器的命令为:

 docker exec -it mn bash

命令解读:

  • docker exec :进入容器内部,执行一个命令

  • -it : 给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互

  • mn :要进入的容器的名称

  • bash:进入容器后执行的命令,bash是一个linux终端交互命令

4.数据卷

1.什么是数据卷

数据卷(volume)是一个虚拟目录,指向宿主机文件系统中的某个目录。

一旦完成数据卷挂载,对容器的一切操作都会作用在数据卷对应的宿主机目录了。

这样,我们操作宿主机的/var/lib/docker/volumes/html目录,就等于操作容器内的/usr/share/nginx/html目录了

 

2.命令

数据卷操作的基本语法如下:

 docker volume [COMMAND]

docker volume命令是数据卷操作,根据命令后跟随的command来确定下一步的操作:

  • create 创建一个volume

  • inspect 显示一个或多个volume的信息

  • ls 列出所有的volume

  • prune 删除未使用的volume

  • rm 删除一个或多个指定的volume

3.挂载数据卷

① 创建数据卷

 docker volume create html

② 查看所有数据

 docker volume ls

③ 创建容器并挂载数据卷到容器内的HTML目录

 docker run --name mn -v html:/usr/share/nginx/html -p 80:80 -d nginx

④进入html数据卷所在位置,并修改HTML内容

 # 查看html数据卷的位置
 docker volume inspect html
 # 进入该目录
 cd /var/lib/docker/volumes/html/_data
 # 修改文件
 vi index.html

4.直接挂载本地目录

 docker run \
--name mysql \

--restart=always\
-e MYSQL_ROOT_PASSWORD=123456 \
-p 3306:3306 \
-v /tmp/mysql/conf/hmy.cnf:/etc/mysql/conf.d/hmy.cnf \
-v /tmp/mysql/data:/var/lib/mysql \
-d \
 mysql:5.7.25

5.镜像结构 

6.DockerFile

FROM java:8-alpine
COPY ./app.jar /tmp/app.jar
EXPOSE 8090
ENTRYPOINT java -jar /tmp/app.jar

docker build -t javaweb:1.0 .

云计算K8s运维作为毕业设计项目,可以设计和实现一套完整的Kubernetes集群的运维解决方案。具体的内容可以包括以下几个方面: 1. 集群架构设计:设计一个高可用、可扩展的K8s集群架构,包括Master节点和Worker节点的数量和配置、网络拓扑、负载均衡等,并考虑安全性、可靠性和性能方面的要求。 2. 部署和管理工具:选用适合的部署和管理工具,如Kubernetes自带的工具(kubeadm、kubelet、kubectl)、Helm、Kops等,设计并实现集群的快速部署、节点管理、服务编排等功能,简化运维流程。 3. 高可用和故障处理:设计并实现K8s集群的高可用解决方案,包括Master节点的冗余备份、节点故障自动恢复、服务自动重启等机制,确保集群具备高可用性;同时,也需设计并实现故障自愈的监控和告警系统,能够及时发现和处理集群中的异常情况。 4. 系统监控和日志管理:实现集群的实时监控和日志管理功能,包括节点资源的监控、应用服务的运行状态监控、日志的收集与分析等,便于运维人员对集群进行性能评估、故障排查和优化。 5. 安全策略与权限管理:设计并实现K8s集群的安全策略和权限管理,包括集群的网络隔离、安全升级、访问控制等,保障集群和应用的安全性。 6. 弹性和自动化扩展:实现集群的弹性扩展功能,根据负载情况自动进行节点的动态扩缩容,并实现自动集群的水平扩展,提高集群的资源利用率和整体性能。 7. 持续集成和部署:设计并实现集群的持续集成和持续部署解决方案,结合Jenkins等工具,实现代码构建、打包、镜像构建和部署的自动化流程,提高开发和部署效率。 总之,云计算K8s运维的毕业设计可以从架构设计、部署管理、高可用故障处理、监控日志、安全策略、弹性扩展以及持续集成等方面来展开,通过设计和实现一套完整的Kubernetes集群运维解决方案,提高云原生应用的可靠性、安全性和可扩展性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java狂魔哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值