项目六 OpenStack虚拟机实例管理

任务一 理解OpenStack计算服务

1.1 •什么是Nova

Nova是OpenStack中的计算服务项目 ,计算虚拟机实例生命周期的所有活动都由 Nova 管理
Nova 提供统一的计算资源 服务。
Nova 需要下列 OpenStack 服务的 支持。
Ø Keystone :为所有的 OpenStack 服务提供身份管理和认证。
Ø Glance :提供计算用的镜像库
Ø Neutron :负责配置管理计算实例启动时的虚拟或物理网络连接。
Ø Placement :负责跟踪云中可用的资源 库存。

1.2 •Nova所用的虚拟化技术

KVM——通用的开放虚拟化技术。
Xen —— 部署 最快速、最安全、开源的虚拟化软件 技术。
Linux 容器 —— 单一 Linux 主机上提供多个隔离的 Linux 环境的操作系统级虚拟化技术
Hyper- vare ——Microsoft 公司推出的企业级虚拟化解决方案
VMware ESXi ——VMware 用于 创建和运行虚拟机和虚拟 设备的产品。
Baremetal Ironic—— 传统 的物理机服务

1.3 •Nova的系统架构

1.4 •虚拟机实例化流程

1用户执行Nova客户端提供的用于创建虚拟机实例的命令。

2API组件将请求转换为AMQP消息之后加入消息队列,通过消息队列调用Conductor组件。

3Conductor组件从消息队列中接收到虚拟机实例化请求消息后,进行一些准备工作。

4Conductor组件通过消息队列通知Scheduler组件选择一个合适的计算节点来创建虚拟机实例。

5Conductor组件从Scheduler组件处得到合适的计算节点信息后,通过消息队列通知Compute组件实现虚拟机实例的创建

1.5 •验证Nova服务

查看 当前运行的 Nova 服务。

[root@node-a ~]#  systemctl status *nova*.service

Ø openstack -nova- scheduler.service —— 计算 调度子 服务
Ø openstack -nova- compute.service —— 计算 服务
Ø openstack -nova- conductor.service —— 处理 需要调度的请求的子 服务
Ø openstack -nova- novncproxy.service —— 通过 VNC 连接访问正在运行的虚拟机实例提供一个 代理

1.6 •试用计算服务的API

Nova 支持 3 API 端点
Ø / :列出可用的版本。
Ø / v2 :计算 API 的第 1 个版本,可进行扩展。
Ø / v2.1 :除了使用 Microversion (小版本)之外,与 v2 版本相同。
列出 所有可用的主版本列表。

curl -s -H "X-Auth-Token: $OS_TOKEN"   http://localhost:8774/

试用 API

1)请求一个demo项目作用域的令牌。

2)导出环境变量OS_TOKEN,将其值设置为上述操作获取的令牌ID

3)尝试通过Nova API v2.1获取当前实例列表。

curl -s -H "X-Auth-Token: $OS_TOKEN"   http://localhost:8774/v2.1/servers

任务二 创建和管理虚拟机实例

2.1 •nova-api服务

nova-api服务接收和响应来自最终用户的计算API请求。
最终 用户不会直接发送 RESTful API 请求,而是通过 OpenStack 命令行、仪表板和其他需要跟 Nova 交换的组件 使用 API
•nova-api是外部访问并使用Nova提供的各种服务的唯一途径 ,也是客户端和 Nova 之间的中间层

2.2 •nova-scheduler服务

nova-scheduler 服务解决 选择启动虚拟机实例的计算节点的问题
nova-scheduler 服务按照 实例类型去选择合适的计算节点

2 )过滤器调度器调度过程。过滤器调度器的调度过程分为两个阶段。第 1 个阶段通过指定的过滤器选择满足条件的计算节点(运行 nova-compute 服务的主机),例如内存使用率低于 50% ,可以使用多个过滤器依次进行过滤。第 2 个阶段对过滤之后的主机列表进行权重计算并排序,选择最优(权重值最大)的计算节点来创建虚拟机实例。
这里展示调度过程的一个实例,如图 6-2 所示。刚开始有 6 个可用的计算节点主机,通过多个过滤器层层过滤,将主机 2 和主机 4 排除了。剩下的 4 个主机再通过计算权重与排序,按优先级从高到低依次为主机 5 、主机 3 、主机 6 和主机 1 ,主机 5 权重值最高,最终入选。
6-2  过滤调度器调度过程
3 )过滤器。当过滤器调度器需要执行调度操作时,会让过滤器对计算节点进行判断,返回 True (真)或 False (假)。 / etc /nova/ nova.conf 配置文件中的 scheduler_available_filters 选项用于配置可用的过滤器,默认所有 Nova 内置的过滤器都可以用于执行过滤操作。
scheduler_available_filters = nova.scheduler.filters.all_filters
另外还有一个 scheduler_default_filters 选项用于指定 nova-scheduler 服务要使用的过滤器,其默认值如下。
scheduler_default_filters = RetryFilter , AvailabilityZoneFilter , RamFilter , DiskFilter , ComputeFilter , ComputeCapabilitiesFilter , ImagePropertiesFilter , ServerGroupAntiAffinityFilter , ServerGroupAffinityFilter
过滤器调度器将按照选项值列表中的顺序依次过滤。各过滤器的简介如表 6-1 所示。
6-1  Nova 内置的过滤器
过滤器  说明
RetryFilter (再审过滤器)  用于过滤掉之前已经调度过的节点
AvailabilityZoneFilter (可用区域过滤器)  用于将不属于指定可用区域的计算节点过滤掉。为提高容灾性和提供隔离服务,可以将计算节点划分到不同的可用区域中
RamFilter (内存过滤器)  根据可用内存来调度,将不能满足实例类型内存需求的计算节点过滤掉
DiskFilter (磁盘过滤器)  根据可用磁盘空间来调度,将不能满足实例类型磁盘需求的计算节点过滤掉
CoreFilter (核心过滤器)  根据可用 CPU 核心来调度,将不能满足实例类型 vCPU 需求的计算节点过滤掉
ComputeFilter (计算过滤器)  只有 nova-compute 服务正常工作的计算节点才能够被 nova-scheduler 服务调度,这是必选的过滤器
ComputeCapabilitiesFilter (计算能力过滤器)  根据计算节点的特性来过滤
ImagePropertiesFilter (镜像属性过滤器)  根据所选镜像的属性来过滤
ServerGroupAntiAffinityFilter (服务器组反亲和性过滤器)  要求尽量将虚拟机实例分散部署到不同的计算节点上
ServerGroupAffinityFilter (服务器组亲和性过滤器)  要求尽量将虚拟机实例部署到同一个计算节点上
4 )权重计算。 nova-scheduler 服务可以使用多个过滤器依次进行过滤,过滤之后的节点再通过计算权重选出最合适的能够部署虚拟机实例的节点。如果有多个计算节点通过了过滤,那么最终选择哪个节点还需要进一步确定。可以为这些主机计算权重值并进行排序,得到一个最佳的计算节点。这个过程需要调用指定的各种 Weighter 模块,得出主机的权重值。
所有的权重实现模块位于 nova/scheduler/weights 目录下。目前 nova-scheduler 的默认权重实现模块是 RAMWeighter ,根据计算节点空闲的内存量来计算权重值,空闲内存越多,权重越大,虚拟机实例将被部署到当前空闲内存最多的计算节点上。
过滤器 调度器调度 过程

1阶段:通过指定的过滤器选择满足条件的计算节点。

2阶段:对过滤之后的主机列表进行权重计算并排序,选择最优的计算节点来创建虚拟机实例。

过滤器
Ø RetryFilter (再审过滤器
Ø AvailabilityZoneFilter (可用区域过滤器
Ø RamFilter (内存过滤器
Ø DiskFilter (磁盘过滤器
Ø CoreFilter (核心过滤器
Ø ComputeFilter (计算过滤器
Ø ComputeCapabilitiesFilter (计算能力过滤器
Ø ImagePropertiesFilter (镜像属性过滤器
Ø ServerGroupAntiAffinityFilter (服务器组反亲和性过滤器
Ø ServerGroupAffinityFilter (服务器组亲和性过滤器

权重计算
Ø nova-scheduler 服务可以使用多个过滤器依次进行过滤,过滤之后的节点再通过计算权重选出最合适的能够部署虚拟机实例的节点
Ø 所有的权重实现模块位于 nova/scheduler/weights 目录下
Ø 目前 nova-scheduler 的默认权重实现模块是 RAMWeighter ,根据计算节点空闲的内存量来计算权重 值。

2.3 •nova-compute服务

nova-compute 在计算节点上运行,负责管理节点上的虚拟机实例
创建 虚拟机实例最终需要与 Hypervisor 打交道。 Hypervisor 以驱动形式 OpenStack 系统中实现即插即 用。

                       nova-computeHypervisor一起实现OpenStack对虚拟机实例生命周期的管理。

2.4 •nova-conductor服务

nova-conductor 服务对数据库进行操作。
nova-conductor 作为 nova-compute 服务与数据库之间交互的中介,避免了直接访问由 nova-compute 服务创建的云数据库
nova-conductor nova-compute 与数据库分离之后提高了 Nova 的可伸缩性
nova-conductor 方便升级。

2.5 •Nova计算服务与Placement放置服务

OpenStack Stein 版本开始 Placement API 作为 一个独立的项目,提供的是放置服务,用于满足计算服务和其他任何服务的资源选择和使用的管理需求。
nova-compute 中的 Nova 资源跟踪器负责创建对应于运行资源跟踪器的计算主机资源提供者 记录。
nova-scheduler 负责为工作负载选择合适的目标主机。

2.6 •镜像和实例的关系

实例是在云中的计算节点上运行的虚拟机个体
虚拟机镜像为 虚拟机文件系统提供模板
实例所做的任何改变都不会影响基础镜像
计算 服务控制实例、镜像的存储和管理。
未运行虚拟机实例的基础镜像状态

2.7 •命令行的实例创建用法

查看 所需的前提 条件
Ø openstack flavor list           # 列出可用的实例类型
Ø openstack image list          # 列出可用的镜像
Ø openstack network list        # 列出可用的网络
Ø openstack security group list  # 列出可用的安全组

                                        openstack keypair list         #列出可用的密钥

创建实例命令

openstack server create

    (--image <镜像> | --volume <>)

    --flavor <实例类型>

    [--security-group <安全组>]

    [--key-name <密钥对>]

    [--property <服务器属性>]

    [--file <目的文件名=源文件名>]

    [--user-data <实例注入文件信息>]

    [--availability-zone <域名>]

    [--block-device-mapping <块设备映射>]

    [--nic <net-id=网络ID,v4-fixed-ip=IP地址,v6-fixed-ip=IPv6地址,port-id=端口UUID,auto,none>]

    [--network <网络>]

    [--port <端口>]

    [--hint <=>]

    [--config-drive <配置驱动器卷>|True]

    [--min <创建实例最小数量>]

    [--max <创建实例最大数量>]

    [--wait]

    <实例名>

2.8 •命令行的实例管理用法

1)获取列表

openstack server list

2)查看实例详情

openstack server show [--diagnostics] <实例名或ID >

3)启动实例

openstack server start <实例名或ID> [<实例名或ID > ...]

4)暂停实例及恢复

openstack server [pause  | unpause] <实例名或ID> [<实例名或ID > ...]

5)挂起实例及恢复

openstack server [suspend | resume] <实例名或ID> [<实例名或ID > ...]

6)废弃实例及恢复

openstack server [shelve  | unshelve]<实例名或ID> [<实例名或ID > ...]

7)关闭实例

openstack server stop  <实例名或ID> [<实例名或ID > ...]

8)重启实例

openstack server reboot [--hard | --soft] [--wait] <实例名或ID>

9)调整实例大小

openstack server resize   [--flavor <flavor> | --confirm | --revert]  [--wait]  <实例名或ID>

10)删除实例

openstack server delete <实例名或ID> [<实例名或ID > ...]

11)修改实例

openstack server set  [--name <新名称>]  [--root-password]  [--property <=>]

    [--state <状态>]  <实例名或ID>

2.9 •生成密钥对

创建 一个名为“ demo-pub” 的公钥。

openstack keypair create --public-key ~/.ssh/id_rsa.pub demo-pub

查看 当前的密钥对列表,列表中显示每个密钥对的名称和对应的指纹。

openstack keypair list

查看 指定密钥对的详细信息。

openstack keypair show demo-key

加上 --public-key 选项则仅显示指定密钥对的公钥。

openstack keypair show --public-key demo-key

使用 openstack keypair delete 命令可删除指定密钥对。

任务三  注入元数据实现虚拟机实例个性化配置

3.1 •元数据注入

通过 向虚拟机实例注入元数据 信息完成 个性化配置工作
元数据 信息分成两大
Ø 元数据 —— 结构化数据,以键值对形式注入虚拟机 实例。
Ø 用户数据 —— 结构化数据,通过文件或脚本的方式进行注入,支持多种文件 格式。
注入 机制分为 两种
Ø 元数据 服务 机制。
Ø 配置 驱动器机制
SSH 密钥 注入 实现过程

                   (1OpenStack创建一个SSH密钥对。

                   (2)创建虚拟机实例时选择该SSH密钥对。

                   (3)用户可以用该SSH密钥对的私钥直接登录实例。

3.2 •元数据服务机制

元数据 服务的 架构

虚拟机 实例通过元数据服务获取元数据的大致 流程

1)虚拟机实例通过项目网络将元数据请求发送到neutron-ns-metadata-proxy

2neutron-ns-metadata-proxy通过unix domain socket将请求发送给neutron- metadata-agent

3neutron-metadata-agent通过内部管理网络将请求转发给nova-api-metadata

4)获取的元数据被原路返回给发出请求的虚拟机实例。

3.3 •配置驱动器机制

配置 驱动器主要用于配置虚拟机实例的网络 信息。
配置 驱动器是一个特殊的文件系统。
配置驱动器的具体实现会根据 Hypervisor 和具体配置 有所不同。
使用配置驱动器对计算主机和镜像都有一定的要求
启用 配置驱动器, 可在 执行 openstack server create 命令创建虚拟机实例时使用 --config-drive true 选项,也在 / etc /nova/ nova.conf 配置文件中 设置 force_config_drive =true

3.4 •向虚拟机实例注入用户数据

在脚本中使用 cloud- config 指令,利用 cloud- init cc_set_passwords.py 模块为用户设置密码并启用密码登录方式。
需要传入的脚本示例

#cloud-config        #cloud-init会读取它开头的数据,这一行一定要写上

chpasswd:

   list: |

       root:abc123     #设置root密码

       fedora:abc123  #设置默认用户fedora的密码

   expire: false         #密码不过期

ssh_pwauth: true       #启用SSH密码登录(默认只能通过SSH密钥登录

3.5 •验证元数据服务机制

实例 可通过 http://169.254.169.254 访问元数据服务
元数据 服务支持两套 API
Ø OpenStack 元数据 API
Ø EC2 兼容的 API
获取 元数据 API 所支持的版本列表。

curl http://169.254.169.254/openstack

进一步 获取其中最新版本( latest )的元数据文件目录。

curl http://169.254.169.254/openstack/latest

查看 meta_data.json 文件的内容并以 JSON 格式 显示。

curl http://169.254.169.254/openstack/latest/meta_data.json | python -m json.tool

访问用户数据。

curl http://169.254.169.254/openstack/latest/user_data

3.6 •验证配置驱动器机制

通过 SSH 登录该实例 ,将 配置 驱动器挂载 / mnt /config 目录。

[fedora@fedora-newvm ~]$ su root                                       #切换到root身份操作

Password:

[root@fedora-newvm fedora]# mkdir -p /mnt/config                          #创建挂载目录

[root@fedora-newvm fedora]# mount /dev/disk/by-label/config-2 /mnt/config   #挂载配置驱动器

mount: /mnt/config: WARNING: device write-protected, mounted read-only.

[root@fedora-newvm fedora]# exit                                         #退出root身份操作

exit

执行 mount 命令查看当前挂载的 文件系统。

/dev/sr0 on /mnt/config type iso9660 (ro,relatime,nojoliet,check=s,map=n,blocksize=2048)

查看 该挂载目录下的内容,可以发现其中有两个目录。

[root@fedora-newvm fedora]# ls /mnt/config

ec2  openstack

查看 最新版本( latest )的元数据文件目录。

[root@fedora-newvm fedora]# ls /mnt/config/openstack/latest

meta_data.json  network_data.json  user_data  vendor_data2.json  vendor_data.json

任务四  增加一个计算节点

4.1 •Nova的物理部署

Nova 个组件和 服务部署 在计算节点和控制 节点节点
计算 节点上安装 Hypervisor 以运行虚拟机实例,只需要运行 nova-compute 服务
其他 Nova 组件和服务则一起部署在控制节点 上。
通过增加控制节点和计算节点,可以实现简单、方便的系统扩容

4.2 •Nova的部署模式

4.3 •准备双节点OpenStack云平台安装环境

添加 一个计算节点 node-b 192.168.199.32/24 ),为 2 个节点准备环境
更改 其主机名为“ node-b” ,将新的主机名追加到 / etc /hosts 配置文件中,并将第 1 个节点的主机名的解析添加进来,本例配置如下。

192.168.199.31   node-a node-a.localdomain

192.168.199.32   node-b node-b.localdomain

2 个节点主机名的解析也添加到第 1 个节点主机的 / etc /hosts 配置文件中。
设置 时间同步。第 2 个节点也与第 1 个节点一样配置 Chrony
编辑应答文件
编辑 packstack-answers-addnode.txt

CONFIG_COMPUTE_HOSTS=192.168.199.31,192.168.199.32

CONFIG_PROVISION_DEMO_FLOATRANGE=192.168.199.0/24

CONFIG_KEYSTONE_ADMIN_PW=ABC123456

CONFIG_KEYSTONE_DEMO_PW=ABC123456

使用修改过的应答文件运行 Packstack 安装器

[root@node-a ~]# packstack --answer-file=packstack-answers-addnode.txt

Installing:

Clean Up                                             [ DONE ]

Discovering ip protocol version                      [ DONE ]

root@192.168.199.32's password:                     #提供第2个节点root账户密码

Setting up ssh keys                                  [ DONE ]

Preparing servers                                    [ DONE ]

Copying Puppet modules and manifests                 [ DONE ]

Applying 192.168.199.31_controller.pp

192.168.199.31_controller.pp:                        [ DONE ]          

Applying 192.168.199.31_network.pp

192.168.199.31_network.pp:                           [ DONE ]       

Applying 192.168.199.31_compute.pp

Applying 192.168.199.32_compute.pp                     #应用第2个计算节点

192.168.199.31_compute.pp:                           [ DONE ]       

192.168.199.32_compute.pp:                           [ DONE ]       

Applying Puppet manifests                            [ DONE ]

Finalizing                                           [ DONE ]

最后登入仪表盘进行验证

任务五  迁移虚拟机实例

5.1 什么是实例冷迁移

冷迁移是一种非在线的迁移 方式。
冷迁移 主要 用于重新分配节点的计算资源,或者主机节点停机维护等场合
实例 冷迁移的功能与调整实例大小类似 ,只是冷 迁移不改变实例的实例 类型。
冷迁移不要求源和目的主机必须共享存储,但要求两者必须满足在计算节点间配置 nova 用户的无密码 SSH 访问。
默认只有云管理员角色能够执行实例迁移 操作。

5.2 •什么是实例热迁移

热迁移是一种在线的迁移方式,又称实时 迁移。
迁移过程中实例不会关闭,始终保持运行 状态。

5.3 •热迁移命令行用法

openstack server migrate

    [--live <目的主机>]

    [--shared-migration | --block-migration]

    [--disk-overcommit | --no-disk-overcommit]

    [--wait]

    <实例名或ID>

在计算节点之间配置 SSH 无密码访问

1)在两个节点上准备SSH密钥对及其配置文件。

Ø 使 SSH 可以进行非交互式登录。

[root@node-a ~]# echo -e 'StrictHostKeyChecking no' > /var/lib/nova/.ssh/config

Ø /var/lib/nova/. ssh /config 文件复制到 node-b 节点对应的目录中。

[root@node-a ~]# scp -r /var/lib/nova/.ssh/config node-b:/var/lib/nova/.ssh

2在两个节点上分别执行命令使nova用户可以登录。

usermod -s /bin/bash nova

3在两个节点上检查确认nova用户可以不用密码登录到对方节点

4)以root用户身份在两个节点上重新启动libvirt和计算服务。

systemctl restart libvirtd.service openstack-nova-compute.service

执行实例的冷迁移 操作
查看实例 列表
执行命令 迁移虚拟机 实例

[root@node-a ~(keystone_admin)]# openstack server migrate c76418b1-24ca- 43b0-8d49-70114d8e41e6

执行实例的冷迁移 操作
执行命令 确认调整。

[root@node-a ~(keystone_admin)]# openstack server resize confirm c76418b1-24ca-43b0- 8d49-70114d8e41e6

查看 实例列表
实现热迁移的通用配置

1)在每个计算节点上的/etc/nova/nova.conf配置文件中设置server_listeninstances_path参数

2确认每个计算节点具有相同的名称解析配置,以便它们能通过主机名互相访问

3启用root用户免密码SSH功能。

① 在1个节点上将root用户的SSH公钥加入authorized_keys文件。

② 在1个节点上将authorized_keys文件复制到第2个节点上。

2个节点上将root用户的SSH公钥追加到authorized_keys文件中。

④ 在第2个节点上将authorized_keys文件复制回第一个节点上。

4)如果启用防火墙,则应允许计算节点之间的libvirt通信

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/31374.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单商户社区团购卖菜卖水果商城自提点商城系统小程序源码

打造便捷团购新体验 &#x1f34e; 引言&#xff1a;社区团购的崛起 近年来&#xff0c;社区团购以其独特的优势&#xff0c;迅速崛起并受到广大消费者的喜爱。它不仅能够提供物美价廉的商品&#xff0c;还能让居民们享受到更加便捷的购物体验。而单商户社区团购系统小程序&am…

详解 HBase 的架构和基本原理

一、基本架构 StoreFile&#xff1a;保存实际数据的物理文件&#xff0c;StoreFile 以 HFile 的格式 (KV) 存储在 HDFS 上。每个 Store 会有一个或多个 StoreFile&#xff08;HFile&#xff09;&#xff0c;数据在每个 StoreFile 中都是有序的MemStore&#xff1a;写缓存&#…

【YOLOv5/v7改进系列】引入特征融合网络——ASFYOLO

一、导言 ASF-YOLO结合空间和尺度特征以实现精确且快速的细胞实例分割。在YOLO分割框架的基础上&#xff0c;通过引入尺度序列特征融合(SSFF)模块来增强网络的多尺度信息提取能力&#xff0c;并利用三重特征编码器(TFE)模块融合不同尺度的特征图以增加细节信息。此外&#xff…

信息打点web篇----web后端源码专项收集

前言 欢迎来到我的博客 个人主页:北岭敲键盘的荒漠猫-CSDN博客 专栏描述&#xff1a;因为第一遍过信息收集的时候&#xff0c;没怎么把收集做回事 导致后来在实战中&#xff0c;遭遇资产获取少&#xff0c;可渗透点少的痛苦&#xff0c;如今决定 从头来过&#xff0c;全面全方位…

手把手教你实现条纹结构光三维重建(3)——相机投影仪标定

我们都知道&#xff0c;投影仪其实就是个反向相机&#xff0c;如果我们了解双目标定的原理&#xff0c;那么相机和投影仪的标定就不难&#xff0c;关键是我们怎么得到投影仪在图像特征点&#xff08;比如棋盘格角点&#xff09;上的像素位置。 投影仪也类似于一个cmos&#xf…

WebSocket实现消息实时通知

参考文档&#xff1a;万字长文&#xff0c;一篇吃透WebSocket&#xff1a;概念、原理、易错常识、动手实践、WebSocket 教程 1 背景 有一个需求&#xff0c;需要实现实时通信的功能&#xff0c;如果有新消息&#xff0c;后端会主动发送请求告知前端有新消息&#xff0c;需要前…

Matlab基础语法:变量和数据类型,基本运算,矩阵和向量,常用函数,脚本文件

目录 一、变量和数据类型 二、基本运算 三、矩阵和向量 四、常用函数 五、脚本文件 六、总结 一、变量和数据类型 Matlab 支持多种数据类型&#xff0c;包括数值类型、字符类型和逻辑类型。掌握这些基本的变量和数据类型&#xff0c;是我们进行数学建模和计算的基础。 数…

Linux工具(包含sudo提权与vim快捷配置)

目录 什么是软件包 查看软件包 如何安装软件 1.官方yum源下载 2.扩展yum源下载 如何卸载软件 补充知识如何将普通用户加入白名单 补充知识rzsz vim编辑器 1.命令模式&#xff08;进入默认为这个模式&#xff09;用户所有的输入都会被当成命令 2.插入模式 3.底行模…

SpringCloud Maven多模块项目导包

目录 一、父项目配置 二、配置子项目 三、Maven执行 四、运行Jar包 一、父项目配置 所有父项目均需确保配置了 <packaging>pom</packaging> 因为Maven某人的打包方式是 <packaging>jar</packaging> 二、配置子项目 仅在有SpringBoot启动类的…

【PHP项目实战训练】——使用thinkphp框架对数据进行增删改查功能

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;开发者-曼亿点 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 曼亿点 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a…

Python网页爬虫爬取豆瓣Top250电影数据——Xpath数据解析

Python网页爬虫爬取豆瓣Top250电影数据——Xpath数据解析 将使用Python网页爬虫爬取豆瓣电影Top250的电影数据&#xff0c;网页解析方法使用xpath。 获取数据后会将数据保存到CSV文件中。一、分析网页&#xff0c;初步获取信息 1.1 查看原页面信息 首先打开豆瓣Top250电影页…

Ant design Vue 表格中显示不同的状态(多条件显示)

比如&#xff1a;后端一个字段有多种状态&#xff1a; 那么后端接口会返回&#xff1a;0 或者 1 或者 2 其中一个&#xff0c;前端需要展示的是对应的文字&#xff0c;像简单的只有两个状态的可以直接在列里面操作&#xff1a; {title: 状态,dataIndex: usable,customRender: …

Windows10任务栏卡顿解决方案

一、重新启动任务资源管理器 右键底部任务栏选择“任务管理器”&#xff1b;按快捷键“CtrlShiftEsc”&#xff1b;搜索框搜索“任务管理器”并单击“打开”&#xff1b;“WinX”打开开始菜单附属菜单&#xff0c;在列表中选择“任务管理器” &#xff1b;按下“ctrlaltdelete”…

黄仁勋子女经历曝光:不卷名校,加入英伟达前开餐厅当厨子...

上周&#xff0c;黄仁勋脱下他那标志性的皮夹克&#xff0c;换上黑黄色的学位服&#xff0c;面对加州理工大学近600名毕业生发表演讲。 他提到&#xff0c;“忍受痛苦、应对挫折和看到机遇是我的超能力。” 面对美国媒体的采访&#xff0c;他多次回忆起自己充满逆境的童年&am…

CVPR 2024 以物体为中心的多感知具身大语言模型

CVPR 2024发表了关于多感知以对象为中心的具身大型语言模型&#xff08;MultiPLY&#xff09;的研究论文&#xff0c;该模型在3D环境中进行编码和交互。 提出MultiPLY是一个多感知的具身大型语言模型&#xff08;LLM&#xff09;&#xff0c;能够将视觉、听觉、触觉和温度等多…

本地快速部署大语言模型开发平台Dify并实现远程访问保姆级教程

文章目录 前言1. Docker部署Dify2. 本地访问Dify3. Ubuntu安装Cpolar4. 配置公网地址5. 远程访问6. 固定Cpolar公网地址7. 固定地址访问 前言 本文主要介绍如何在Linux Ubuntu系统使用Docker快速部署大语言模型应用开发平台Dify,并结合cpolar内网穿透工具实现公网环境远程访问…

深度学习500问——Chapter11:迁移学习(4)

文章目录 11.3.8 流形学习方法 11.3.9 什么是finetune 11.3.10 finetune为什么有效 11.3.11 什么是网络自适应 11.3.12 GAN在迁移学习中的应用 参考文献 11.3.8 流形学习方法 什么是流行学习&#xff1f; 流行学习自从2000年在Science上被提出来以后&#xff0c;就成为了机器…

数据链路层【Linux网络复习版】

目录 一、数据链路层主要解决的是什么问题&#xff1f; 二、什么是以太网&#xff1f; 三、什么是MAC地址&#xff1f; 四、以太网帧的格式是什么&#xff1f; 五、 什么是MTU&#xff1f; 六、MTU和分片 MTU对IP协议的影响&#xff1f; 如何分片&#xff1f; 如何组装&a…

服务器安装JDK,Maven等常用环境

生产环境部署服务器需要安装一些常用工具&#xff0c;下面我就把常用的jdk&#xff0c;maven&#xff0c;node&#xff0c;git的安装方法和步骤演示 一、安装JDK环境 执行如下命令&#xff0c;安装JDK,所有命令都是 复制&#xff0c;粘贴&#xff0c;回车 yum install -y jav…

感恩的力量!美洲杯魔幻提前预告 阿根廷 ——早读(逆天打工人爬取热门微信文章解读)

梅西还能不能提&#xff1f; 引言Python 代码第一篇 洞见 感恩的力量&#xff08;深度好文&#xff09;第二篇 视频新闻结尾 引言 早上早起 昨天晚上1点多才睡 这几天都是 明明很早就准备上床睡觉 但是就是忍不住 吃根雪糕 喝个小饮料 看看最近的欧洲杯比赛 卒 真的是拖延症十…