69、云与虚拟化服务深度解析

云与虚拟化服务深度解析

1. 云与虚拟化基础概念回顾

1.1 云服务类型相关问题

以下是一些关于云服务类型的问题及答案:
| 问题 | 选项 | 答案 |
| — | — | — |
| 哪种云服务方法仅使用第三方拥有和运营的服务器? | A. Private
B. Public
C. Hybrid
D. Type II
E. Type I | B. Public |
| Tom 目前在内部服务器上为公司运行云服务,但需要额外的处理能力来运行新应用程序。他可以考虑哪种云服务方法来利用现有的云,而无需购买更多内部服务器? | A. Private
B. Public
C. Hybrid
D. Type I
E. Type II | C. Hybrid |
| Sally 想在云中开发应用程序,而不必担心管理操作系统。她应该购买哪种类型的云服务? | A. PaaS
B. Private cloud
C. IaaS
D. SaaS
E. Hybrid cloud | A. PaaS |
| 哪种类型的云服务允许你在云提供的基础设施上启动自己的操作系统? | A. PaaS
B. Private cloud
C. IaaS
D. SaaS
E. Hybrid cloud | C. IaaS |
| 哪种类型的虚拟机管理程序直接与主机系统硬件交互? | A. Private
B. Public
C. Type II
D. Type I
E. Hybrid | D. Type I |
| Henry 已经在他的服务器上安装了 Red Hat Linux,但现在需要安装虚拟机。他应该使用哪种类型的虚拟机管理程序包? | A. Private
B. Public
C. Type II
D. Type I
E. Hybrid | C. Type II |
| 哪种类型的虚拟机管理程序模板将所有配置文件捆绑到一个文件中进行分发? | A. XML
B. JSON
C. OVA
D. OVF
E. YAML | C. OVA |
| Fred 想打包他的应用程序,以确保无论他的客户使用哪种 Linux 发行版,应用程序都能以相同的方式运行。他该怎么做? | A. 将应用程序打包为容器。
B. 将应用程序打包为虚拟机管理程序。
C. 将应用程序部署到私有云。
D. 将应用程序部署为虚拟机。
E. 将应用程序捆绑为 tar 文件并部署。 | A. 将应用程序打包为容器。 |
| 你应该使用哪种方法来轻松地将应用程序从开发环境迁移到生产环境,而无需复制操作系统? | A. Public cloud
B. Private cloud
C. Type I hypervisor
D. Type II hypervisor
E. Container | E. Container |
| 哪个 Linux 容器包在主机操作系统上作为进程运行引擎,并提供命令行界面来控制容器? | A. Snap
B. Docker
C. KVM
D. XEN
E. VirtualBox | B. Docker |

1.2 虚拟化管理工具 - libvirt

libvirt 是一个流行的虚拟化管理软件集合,包含以下元素:
- 应用程序编程接口(API)库:集成到多个开源虚拟机监控器(VMM,即 hypervisors)中,如 KVM。
- 守护进程(libvirtd):在虚拟机主机系统上运行,执行任何所需的虚拟机客户系统管理任务,如启动和停止虚拟机。
- 命令行实用工具:如 virt - install 和 virsh,用于在虚拟机主机系统上控制和管理虚拟机客户系统。

可以使用 ldd 命令来确认命令行实用工具是否使用了 libvirt 库,示例如下:

$ which virsh
/usr/bin/virsh
$
$ ldd /usr/bin/virsh | grep libvirt
        libvirt-­lxc.so.0 => /lib64/libvirt-­lxc.so.0 (0x00007f4a3a10c000)
        libvirt-­qemu.so.0 => /lib64/libvirt-­qemu.so.0 (0x00007f4a39f08000)
        libvirt.so.0 => /lib64/libvirt.so.0 (0x00007f4a39934000)
$

libvirt 项目的主要目标是提供一种统一的方式来管理虚拟机,它支持多种虚拟机监控器,如 KVM、QEMU、Xen 和 VMware ESXi。

1.3 virsh 工具

virsh 是一个使用 libvirt 库的实用工具,是一个用于管理系统虚拟机的基本 shell。

1.3.1 获取 virsh 工具

可以通过 libvirt - client 或 libvirt - clients 包来获取 virsh shell。对于较旧的发行版,它可能位于 libvirt - bin 包中。

1.3.2 使用 virsh shell

以下是进入和退出 virsh shell 的示例:

$ virsh
Welcome to virsh, the virtualization interactive terminal.

Type:  'help' for help with commands
       'quit' to quit

virsh #
virsh # exit

$

也可以直接从 Bash shell 输入各种 virsh 命令,这对于在 shell 脚本中自动化虚拟机管理很有用。例如,使用 virsh 实用工具交互式地查看 setvcpus 命令的帮助:

$ virsh help setvcpus
  NAME
    setvcpus -­ change number of virtual CPUs

  SYNOPSIS
    setvcpus <domain> <count> [-­-­maximum] [-­-­config] 
[-­-­live] [-­-­current] [-­-­guest] [-­-­hotpluggable]

  DESCRIPTION
    Change the number of virtual CPUs in the guest domain.

  OPTIONS
    [-­-­domain] <string>  domain name, id or uuid
    [-­-­count] <number>  number of virtual CPUs
    -­-­maximum        set maximum limit on next boot
    -­-­config         affect next boot
    -­-­live           affect running domain
    -­-­current        affect current domain
    -­-­guest          modify cpu state in the guest
    -­-­hotpluggable   make added vcpus hot(un)pluggable


$

1.4 虚拟机管理器(Virtual Machine Manager)

虚拟机管理器(也称为 VMM)是一个轻量级的桌面应用程序,用于创建和管理虚拟机。它是一个 Python 程序,可在许多使用 GUI 的发行版上使用,可从 virt - manager 包中获取。

1.4.1 启动虚拟机管理器

可以在图形环境中的终端模拟器中通过 virt - manager 命令启动虚拟机管理器。运行该程序通常需要超级用户权限,如果从没有这些权限的账户发出 virt - manager 命令,它将打开一个弹出窗口,要求输入 root 账户密码或类似信息。

1.4.2 虚拟机管理器的特点
  • 性能统计图表:通过其视图菜单提供性能统计图表。
  • 虚拟机配置修改:GUI 界面允许修改虚拟机的配置,如虚拟网络。
  • 远程桌面连接:默认提供虚拟网络计算(VNC)客户端查看器(virt - viewer),可以将图形(桌面环境)控制台连接到任何运行的虚拟机,也可以配置 SPICE 来实现相同的功能。

2. 系统引导自动化方法

2.1 引导概念

在计算机领域,“booting”和“bootstrapping”这两个术语常被交替使用,但通常“booting”指的是启动系统并通过其引导加载程序代码启动系统,而“bootstrapping”指的是使用配置文件或早期系统安装的镜像来安装新系统。

2.2 使用 shell 脚本引导虚拟机

2.2.1 适用场景

当需要创建大量虚拟机时,手动通过 GUI 启动虚拟机效率较低,此时可以考虑使用 shell 脚本自动化引导过程。这种方法适用于在公司控制的主机上引导虚拟机。

2.2.2 操作步骤
  • 可以在 GitHub 上查找可用的脚本,例如 http://github.com/giovtorres/kvm - install - vm 项目。
  • 创建各种虚拟机的配置文件,并在需要时将其读入 shell 脚本进行引导。可以在主机系统启动时、预定时间或按需启动虚拟机,具有很大的灵活性。

2.3 学校环境中使用 shell 脚本引导虚拟机

在学校环境中,特别是计算机科学课程中,虚拟机是一种经济且灵活的解决方案。
- 服务器上的虚拟机根据课程需求配置为使用临时或永久存储。例如,不需要长期存储文件的学生使用具有临时虚拟磁盘的虚拟机,而需要存储和访问文件的编程学生使用具有持久存储的虚拟机。
- 这些虚拟机通过脚本按需启动,脚本可以由教师在课前启动,也可以通过 cron 作业或 systemd 定时器进行调度。
- 在教室中,学生可以使用瘦客户端或学校提供的笔记本电脑访问虚拟机,这种配置和部署方式简化了学校计算环境的复杂性,并通常降低了相关成本。

2.4 使用 Anaconda 进行 Kickstart 安装

2.4.1 Kickstart 安装步骤

Kickstart 是一种基于 RHEL 的系统安装技术,步骤如下:
1. 创建 Kickstart 文件 :该文件是一个文本文件,包含新系统所需的所有安装选项。对于 Red Hat 系列发行版,在安装时会创建并存储一个名为 anaconda - ks.cfg 的文件,位于 /root 目录下,包含了系统安装时所做的所有安装选择。Ubuntu 发行版需要安装 system - config - kickstart 实用工具来创建 Kickstart 文件,它还有自己的原生引导产品 preseed。openSUSE 发行版有自己的工具 AutoYaST。
2. 存储 Kickstart 文件 :对于常规物理系统安装,通常将配置好的 Kickstart 文件存储在可移动媒体(如 USB 闪存驱动器)或网络上。对于虚拟机创建,可以将其存储在主机系统上,同时要确保文件得到妥善保护。
3. 放置安装源 :安装源通常是用于安装 Linux 发行版的 ISO 文件,也可以使用安装树(即包含安装 ISO 文件提取内容的目录树)。对于物理系统,ISO 通常存储在可移动媒体或网络位置;对于虚拟机,可将 ISO 或安装树存储在主机系统上,甚至可以将其放在与 Kickstart 文件相同的目录中。
4. 创建引导介质 :对于物理安装,选择的方法和介质取决于系统的各种引导选项以及要执行安装的系统类型。对于具有从 USB 驱动器或 DVD 引导能力的服务器,可将可引导的实时 ISO 存储在其中之一。对于虚拟机安装,如在 KVM 虚拟机监控器上的虚拟机,无需创建引导介质。
5. 启动 Kickstart 安装 :
- 物理系统 :启动引导过程,到达引导提示后,根据硬件环境、引导加载程序和 Kickstart 文件的位置输入类似 linux ks = hd:sdc1:/ks.cfg 的命令。
- 虚拟系统 :如果主机上有 virt - install 命令,可以使用它来创建虚拟机,并添加以下两个选项:

--initrd - inject /root/VM - Install/ks.cfg 
--extra - args="ks=file:/ks.cfg console=tty0 console=ttyS0,115200n8"

如果需要,可以创建一个带有循环的 shell 脚本,多次重新发出 virt - install 命令来创建/安装所需数量的虚拟机。

2.5 使用 Cloud - init 初始化虚拟机

Cloud - init 是 Canonical 公司的产品,用于引导虚拟化机器。它可以为云环境中的虚拟机提供用户数据,使其具有独特的配置。

2.5.1 适用范围

Cloud - init 服务用 Python 编写,适用于基于云的虚拟化服务,如 Amazon Web Services (AWS)、Microsoft Azure 和 Digital Ocean,以及基于云的管理操作系统,如 OpenStack。也可以用于使用 VMM(虚拟机监控器)产品(如 VMware 和 KVM)的本地虚拟机,并且得到了大多数主要 Linux 发行版的支持。

2.5.2 功能特点
  • 可以配置虚拟机的主机名、临时挂载点和默认区域设置。
  • 可以创建预生成的 OpenSSH 私钥,为虚拟化系统提供加密访问。
  • 可以使用自定义脚本在虚拟机引导时运行,这些脚本通常存储在 YAML 格式的文件中。
2.5.3 安装和使用

可以通过 cloud - init 包安装该工具,它在大多数主要 Linux 发行版上都可用。/etc/cloud/cloud.cfg 文件是主要的 Cloud - init 配置文件,命令行实用工具是 cloud - init 命令。例如,使用 - h 选项获取帮助:

$ cloud - init - h
usage: /usr/bin/cloud - init [-h] [--version] [--file FILES] [--debug] [--force]

 {init,modules,single,query,dhclient - hook,features,analyze,devel,
collect - logs,clean,status}
                           ...

optional arguments:
  -h, --help            show this help message and exit

下面是使用 mermaid 绘制的 Kickstart 安装流程:

graph LR
    A[创建 Kickstart 文件] --> B[存储 Kickstart 文件]
    B --> C[放置安装源]
    C --> D[创建引导介质]
    D --> E[启动 Kickstart 安装]
    E --> F{物理系统还是虚拟系统}
    F -- 物理系统 --> G[输入引导命令]
    F -- 虚拟系统 --> H[使用 virt - install 并添加选项]

综上所述,通过上述各种方法,可以实现云与虚拟化环境中系统的高效部署和管理。不同的方法适用于不同的场景,用户可以根据实际需求选择合适的方式。

3. 云服务类型及相关操作总结

3.1 云服务类型对比

云服务类型 特点 适用场景
公有云(Public) 仅使用第三方拥有和运营的服务器 企业需要额外资源且不想自行维护基础设施时,如 Tom 需要额外处理能力运行新应用程序可考虑混合云,其中公有云部分可提供资源
私有云(Private) 由企业自己拥有和运营服务器 对数据安全和隐私要求极高,需要严格控制资源的企业
混合云(Hybrid) 结合了公有云和私有云的特点 企业既有内部服务器运行云服务,又需要额外资源时,可利用公有云补充
PaaS(平台即服务) 允许开发者在云中开发应用程序,无需担心管理操作系统 开发者如 Sally 想专注于应用开发,不想管理底层操作系统时适用
IaaS(基础设施即服务) 可在云提供的基础设施上启动自己的操作系统 需要灵活控制操作系统和资源的用户
SaaS(软件即服务) 通过互联网提供软件服务 企业或个人无需自行安装和维护软件,直接使用在线软件服务

3.2 容器与虚拟机的选择

在将应用程序从开发环境迁移到生产环境,或者确保应用程序在不同 Linux 发行版上以相同方式运行时,需要在容器和虚拟机之间做出选择:
- 容器(Container) :
- 优点 :轻量级,启动速度快,可轻松移动应用程序,无需复制操作系统。例如,Fred 想确保应用程序在不同 Linux 发行版上以相同方式运行,可将应用程序打包为容器;将应用程序从开发环境迁移到生产环境时,使用容器可避免复制操作系统。
- 操作步骤 :使用 Docker 等容器包,它在主机操作系统上作为进程运行引擎,并提供命令行界面来控制容器。
- 虚拟机(Virtual Machine) :
- 优点 :提供完整的隔离环境,可运行不同的操作系统。
- 适用场景 :当需要运行不同操作系统或对隔离性要求极高时选择。

3.3 虚拟机管理工具操作总结

3.3.1 libvirt 相关操作
  • 确认工具是否使用 libvirt 库 :使用 ldd 命令,如 ldd /usr/bin/virsh | grep libvirt 。
  • 功能 :提供统一的方式管理虚拟机,支持多种虚拟机监控器,如 KVM、QEMU、Xen 和 VMware ESXi。
3.3.2 virsh 工具操作
  • 获取 :通过 libvirt - client 或 libvirt - clients 包获取,旧版本可能在 libvirt - bin 包中。
  • 使用 :可进入 virsh shell 管理虚拟机,也可直接从 Bash shell 输入 virsh 命令,如 virsh help setvcpus 查看命令帮助。
3.3.3 虚拟机管理器(Virtual Machine Manager)操作
  • 启动 :在图形环境中的终端模拟器中通过 virt - manager 命令启动,需超级用户权限。
  • 特点 :提供性能统计图表,可修改虚拟机配置,默认提供 VNC 客户端查看器。

4. 系统引导方法对比与操作流程

4.1 不同引导方法对比

引导方法 适用场景 优点 缺点
Shell 脚本引导 公司控制的主机上创建大量虚拟机 灵活性高,可自定义配置和启动时间 需要一定的脚本编写能力
学校环境中使用 Shell 脚本引导 学校计算机科学课程 经济、灵活,可根据课程需求配置存储 依赖脚本的编写和调度
Kickstart 安装(Anaconda) 基于 RHEL 的系统安装,包括物理系统和虚拟机 可自动化安装过程,减少人工干预 配置文件编写较复杂,不同发行版有差异
Cloud - init 初始化 云环境和本地虚拟机 可配置虚拟机的多种参数,支持多种云服务和 Linux 发行版 依赖云服务提供商或虚拟机监控器的支持

4.2 操作流程总结

4.2.1 Shell 脚本引导流程
graph LR
    A[查找可用脚本(如 GitHub)] --> B[创建虚拟机配置文件]
    B --> C[将配置文件读入脚本]
    C --> D{选择启动方式}
    D -- 主机启动时 --> E[自动启动]
    D -- 预定时间 --> F[通过 cron 或 systemd 调度]
    D -- 按需 --> G[手动启动]
4.2.2 Kickstart 安装流程(已在前面详细介绍)
4.2.3 Cloud - init 初始化流程
  • 安装 :通过 cloud - init 包安装。
  • 配置 :修改 /etc/cloud/cloud.cfg 文件。
  • 使用 :使用 cloud - init 命令进行操作,如 cloud - init - h 获取帮助。

5. 总结与建议

5.1 云服务选择建议

  • 对于小型企业或初创公司,公有云或 SaaS 可能是更经济实惠的选择,可降低前期投资和维护成本。
  • 大型企业对数据安全和隐私要求高,可考虑私有云或混合云,结合公有云的灵活性和私有云的安全性。
  • 开发者根据需求选择 PaaS 或 IaaS,专注应用开发选 PaaS,需要灵活控制资源选 IaaS。

5.2 虚拟机管理工具选择建议

  • 对于命令行操作熟练的用户,libvirt 和 virsh 是强大的管理工具,可实现自动化管理。
  • 对于喜欢图形界面的用户,虚拟机管理器(Virtual Machine Manager)提供直观的操作界面。

5.3 系统引导方法选择建议

  • 需要大量自动化部署虚拟机时,可优先考虑 Kickstart 安装或使用 Shell 脚本引导。
  • 在云环境中,Cloud - init 是一个不错的选择,可方便地配置虚拟机。

通过对云与虚拟化概念、管理工具和系统引导方法的深入了解,用户可以根据自身需求和场景,选择合适的技术和工具,实现高效的云与虚拟化环境部署和管理。

相关推荐

Linux虚拟机CPU信息查看指南:lscpu与/proc/cpuinfo深度解析

CPU作为计算机的核心运算单元,其主频、核心数与线程数共同决定了系统的处理能力与并行性能。在虚拟化技术中,虚拟机通过虚拟CPU(vCPU)映射物理资源,理解其分配与运行状态对性能调优至关重要。通过Linux系统的lscpu命令和/proc/cpuinfo文件,可以深入获取CPU架构、逻辑处理器数量、物理核心数及实时频率等关键指标。这些信息是进行**性能调优**和**资源监控**的基础,尤其在虚拟化环境下,能帮助开发者与运维人员准确评估vCPU配置、识别资源瓶颈,并验证虚拟化平台的资源分配是否符合预期,从而确

weixin_32715349的博客 334

VMware去虚拟化实战:绕过检测运行敏感程序的完整指南

虚拟化技术通过软件模拟硬件环境,为资源隔离与测试提供了便利。其原理是在宿主机上创建虚拟的硬件层,使多个操作系统能并行运行。这项技术的核心价值在于提升硬件利用率、简化部署与维护。在软件测试、安全研究和特定应用兼容性场景中,程序常通过检测CPU指令、硬件标识和系统痕迹来判断是否处于虚拟环境,一旦识别便会限制功能或拒绝运行,这构成了实际应用中的主要挑战。本文聚焦于VMware Workstation环境,深入解析如何通过修改硬件标识、清理系统痕迹等去虚拟化手段,有效应对这些检测,使虚拟机在目标程序中呈现为物理机特

weixin_34095889的博客 452

C++虚函数表深度解析:vtable内存布局与性能优化实战

在C++面向对象编程中,多态是实现代码复用和扩展性的核心技术,它允许通过基类接口操作派生类对象。其底层原理依赖于虚函数表(vtable)机制,每个包含虚函数的类在编译期会生成一张函数地址表,对象内部则通过虚函数表指针(vptr)与之关联,从而实现运行时的动态绑定。这种机制虽然提供了灵活性,但也带来了性能开销,主要包括间接调用导致的额外内存访问和潜在的缓存不友好问题,可能影响高频调用场景的效率。针对这些挑战,开发者可以采取多种优化策略,例如利用编译器的去虚拟化(Devirtualization)能力,或在编译

weixin_30384217的博客 307

Wireshark实战:Telnet与TFTP协议抓包分析与安全风险解析

网络协议分析是网络工程师和安全研究员的必备技能,它帮助我们理解数据如何在网络中传输。通过抓包工具,我们可以深入探究协议的工作原理,例如基于TCP的Telnet和基于UDP的TFTP。Telnet作为早期的远程登录协议,其交互式会话模型展示了连续流通信的典型特征;而TFTP则体现了简单的请求-应答模式,常用于文件传输。这两种协议均采用明文传输,这带来了显著的安全风险,例如密码嗅探和会话劫持,凸显了加密通信的重要性。在实际应用中,尽管它们已被更安全的SSH和SFTP替代,但在工业控制、旧设备维护等特定场景中仍有

weixin_32288959的博客 219

AWS新网络架构:极简拓扑如何实现设备减69%、吞吐增33%

现代云网络正从‘以设备为中心’转向‘以数据流为中心’,其核心是降低系统熵值、消除无效搬运、提升路径确定性。这一范式变革依托智能网卡卸载、eBPF可编程数据平面与CXL高速互连等关键技术,将L2/L3转发、安全策略、流量调度等功能原子化下沉至最适载体,显著压缩内存拷贝、上下文切换与协议解析开销。技术价值不仅体现为性能跃升与成本优化,更在于推动运维从救火式响应转向声明式治理,支撑微服务、实时音视频、高频交易等低延迟高吞吐场景。本文深入拆解AWS新一代网络架构的工程逻辑与落地启示。

germmy-神一样的开发 379

高通8155/8295 Hypervisor平台启动流程深度解析

本文深度解析了高通8155/8295 Hypervisor平台的启动流程,从硬件基础架构到Hypervisor的启动艺术,详细介绍了PBL、XBL等关键阶段的运作机制及实战中的异常处理技巧。通过实际案例分享,帮助开发者理解并优化启动流程,提升系统性能和稳定性。

weixin_30892763的博客 550

20、蜜罐技术与反蜜罐技术深度解析

本文深入解析了蜜罐技术及其反制手段,涵盖了蜜罐在网络安全中的多种应用场景,如威慑、研究和战术防御。同时,详细介绍了攻击者识别蜜罐的各种技术,包括基于网络层、系统层和应用层的检测方法,并探讨了蜜罐技术的未来发展与挑战。

kk1234的博客 195

村田电感模型选型指南:.s2p和SPICE netlist在ADS中的表现差异

本文深度解析了村田电感在ADS仿真中.s2p与SPICE netlist两种模型的表现差异。通过对比模型本质、仿真设置及高低频段精度,揭示了.s2p文件基于实测插值而SPICE netlist基于等效电路外推的特性。文章提供了明确的选型策略,帮助工程师根据项目频段、仿真类型和精度需求,在射频与微波电路设计中做出最优模型选择。

k9l0m1的博客 452

一文读懂AI大模型时代的RAG技术

RAG(Retrieval-Augmented Generation,检索增强生成) 是一种结合检索技术与生成模型的技术架构,旨在通过动态引入外部知识库增强大语言模型(LLM)的生成能力。其核心思想是通过检索系统从外部数据源(如企业知识库、实时文档等)获取相关信息,并将检索结果作为上下文输入生成模型,以提高生成答案的准确性、时效性和专业性

awei0916的专栏 2118

Pytorch transformers tokenizer 分词器词汇表添加新的词语和embedding

NLP添加新词汇

7322

CloudCompare点云变换保姆级教程:从平移、旋转到绕任意点旋转,一次搞定

本文提供CloudCompare点云变换的全面教程,涵盖从基础平移、旋转到绕任意点旋转的高级技巧。通过详细的操作步骤和实战案例,帮助用户掌握点云数据处理的核心技能,提升三维模型对齐和变换的效率与精度。

weixin_28717969的博客 289

Opencv相机校准之棋盘格标定

Reference: https://yq.aliyun.com/articles/62472

y459541195的博客 3万+

【ComfyUI】Wan2.2 动态服饰描述驱动换装图生视频

本文介绍了一个基于ComfyUI的Wan2.2动态服饰描述驱动换装工作流,能通过自然语言描述实现人物图像的自动换装并生成动态视频。该工作流结合多模态输入、语言模型驱动生成和视频合成技术,包含图像加载、文本解析(使用Qwen2.5大模型)、潜变量编码、视频帧采样与插值(RIFE VFI)等核心模块,最终通过VHS_VideoCombine输出流畅换装视频。整个流程无需手动干预,支持从"哥特风格"到"未来装甲"等多样化服饰风格的精确转换,通过文本节点控制50-100

Mr数据杨 2581

解决Home Assistant中安装的Advanced SSH & Web Terminal插件打开提示“502 Bad Gateway” 且弹窗提示“加载项似乎尚未准备就绪,它可能仍在启动中“问题

  在HomeAssistant的应用商店安装了【AdvancedSSH&WebTerminal】插件,但是打开这个终端连接到HomeAssistant的时候却提示“502BadGateway”且弹窗提示“加载项似乎尚未准备就绪,它可能仍在启动中,您想重试吗?”一直无法进入HomeAssistant的系统中

提供C#相关开发 、云计算、运维测试、网络安全相关技术分享与服务,有意向可联系。 2828

node运行项目-Network: unavailable-没有ip地址

vscode运行vue项目后发现Network: unavailable 是什么情况呢?可能有一下三种情况:1.多个网卡原因:打开网络共享中心,把多余的网络禁用掉,只留一个2.在中配置host及public3.系统环境变量问题。

JackieDYH的博客 7539

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: 11、Unreal Engine 4:AI 行为树与黑板系统实战指南
下一篇: 12、提升移动学习中数据分析作用:对话式界面的教育应用
lambda
博客等级 码龄23年 49粉丝 1303原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值