云服务器检查站

引言

此检查点旨在帮助您评估我们介绍云服务器的入门文章中您所学到的内容,其中我们介绍了云计算、云服务器和Linux命令行。您可以使用此检查点评估自己对这些主题的了解程度、复习关键术语和命令,并找到继续学习的资源。

云计算通常使用虚拟化技术来满足托管需求。这种将物理硬件(通常在内部)与抽象相分离的方法意味着,您可以在不投入大量财务和时间成本来维护自己的硬件的情况下,按照规模构建和维护项目。一旦您掌握了云服务器的基本知识,您就可以开始探索云计算的其他关键概念和技术,如数据库、容器、Web服务器和安全性。

在此检查点中,你会找到三个部分,概述了Cloud Servers部分中的核心主题:定义云及其交付模型,使用Linux命令行和使用SSH与远程服务器。你可以通过交互式组件来测试你的知识。在本检查点结束时,你还会找到继续学习和Linux服务器管理的机会。

资源

  • Cloud Servers: An Introduction.
  • A General Introduction to Cloud Computing.
  • Initial Server Setup.
  • A Linux Command Line Primer.
  • SSH Essentials: Working with SSH Servers, Clients, and Keys.
  • How to Choose a Linux Distribution.
  • An Introduction to Cloud Hosting.

云计算是什么?

云计算是将计算资源以服务的形式提供,这意味着这些资源由云服务提供商拥有和管理,而非最终用户。你很可能使用云技术来观看流媒体、储存个人数据如照片和文件,甚至创建自己的网络应用或其他项目。

在《云计算综述》中,你了解了云计算的定义,该定义来自美国商务部非管制机构国家标准与技术研究所(NIST)。

Info

自我检查
云计算的五个基本特征是什么?

通过下拉功能获取答案。
NIST将以下定义为云计算的五个关键原则:

按需自助服务
广泛的网络访问
资源汇集
快速弹性
测量服务

这些特点在各种类型的云环境中都是相关的:公有云、私有云、混合云和多云。

需要了解的词汇

通过每一篇文章,你已经掌握了与云计算相关的常见术语的词汇。

Info

检查自己
定义以下术语,然后使用下拉功能检查你的答案。

服务器
服务器是可以运行服务给其他计算机的计算机硬件或软件,并允许客户机工作。
请参阅服务器的词汇条目以获取更长的定义。

虚拟专用服务器
虚拟专用服务器,简称VPS,是模拟具有自己操作系统的真实计算机的虚拟服务器。虚拟机上的软件由主机分配,并与计算机的硬件断开连接。
它们有时被称为虚拟机或VM。当托管在云端时,它们有时被称为云服务器或远程服务器。

虚拟化
虚拟化是将计算机环境与物理硬件分离的过程,使其能够在云中托管。这个过程促进了可以托管应用程序和网站的虚拟服务器与管理虚拟服务器的物理主机之间的关系。

虚拟机监视器
虚拟机监视器是一种软件,它部署、管理和分配资源给其控制下的虚拟服务器。虚拟机监视器运行的物理硬件被称为主机。虚拟机监视器在各个客户虚拟机之间共享主机的资源。
《云计算托管简介》列出了四种常见的虚拟机监视器。你能说出它们的名字吗?
请参阅虚拟机监视器的词汇条目以获取更长的定义。

内核
内核是计算机操作系统的基础。内核确保内存分配以及设备和资源管理。
请参阅内核的词汇条目以获取更长的定义。

云端送货

你还可以通过诸如基础设施即服务(IaaS)、平台即服务(PaaS)和软件即服务(SaaS)等交付模式来确定云资源的提供方式。

基础设施即服务(IaaS)使您在不维护自己的硬件的情况下完全掌控您的基础设施。其优势包括灵活的托管、按需扩展以及跨多个数据中心构建。

通过使用PaaS,您可以在云服务提供商的后端基础设施上使用部署平台。其优势包括可预测的扩展性、预先配置的运行环境以及与API集成的简化体验。

SaaS在云环境中提供软件应用。你可以访问软件本身,但不能进行生产、维护或修改。因此,用户可以直接使用平台,无需在设备上安装或维护软件。

Info

请检查自己
将以下产品与它们的交付模式匹配:

Adobe Creative Cloud
DigitalOcean 管理的数据库,如 MongoDB 和 MySQL
Microsoft Azure

AWS Elastic Beanstalk
Heroku
类似 Netflix 和 Spotify 的流媒体服务

DigitalOcean App Platform
DigitalOcean 上的托管 Kubernetes
类似 Google Workspace、Slack 和 Zoom 的虚拟通信工具

使用下拉菜单比较您的答案。

交付模式
产品

基础架构即服务 (IaaS)
DigitalOcean 上的托管 Kubernetes、托管数据库 (如 MongoDB 和 MySQL)、Microsoft Azure 等等

平台即服务 (PaaS)
AWS Elastic Beanstalk、DigitalOcean App Platform、Heroku 等等

软件即服务 (SaaS)
Adobe Creative Cloud、Google Workspace、Netflix、Slack、Spotify、Zoom 等等

您现在可以解释云是什么,描述为什么它在现代变得无处不在。您知道在构建云项目时需要考虑的利益和注意事项,以及哪种云交付模式适用于哪种项目。许多开发人员使用基于Linux的虚拟机来构建云项目。

使用命令行。

在《Linux命令行入门》中,你开始了对终端的热爱之旅。通过初始服务器设置,你配置了带有SSH的Linux环境,包括使用ufw配置的防火墙、包管理器和具有sudo权限的非root用户。

现在你可以使用命令行界面(CLI)在本机和远程服务器上进行导航,使用诸如以下命令:

  • cat to review file contents.
  • cd to move between directories.
  • curl to transfer data using URL syntax.
  • echo to display strings of text.
  • ls to list files.
  • mkdir to make new folders.
  • mv to move or rename files.
  • nano to create and edit text files.
  • pwd to review your current working directory path.
  • rm and rmdir to delete files and folders.
  • sudo to run commands as a superuser.
  • usermod to change user permissions.

而选项(也称为标志或开关)如下:

  • -a to list all files, including hidden files.
  • -h or –human-readable to print memory sizes in a human readable format.
  • -l to print extra details about files.
  • -o to output text to a file.
  • -r to run commands recursively.

你可以使用历史命令来查看你在终端中运行过的所有命令。你也可以在Linux中使用man命令来显示用户手册,或者使用–help选项来查看任何命令的更多信息。

一旦你选择了你的Linux发行版,你可以浏览Linux基础系列的教程,管理你的Linux服务器的进程,并监控服务器资源。如果你运行的是一个基于Linux的远程服务器,你将使用SSH从本地终端访问并执行远程服务器上的操作。

使用SSH

SSH协议允许您从不安全的网络登录到远程服务器并进行命令行执行。

在SSH Essentials中,您生成了一个SSH密钥对用于连接到远程服务器。当使用SSH登录时,SSH密钥提供了一个安全的访问凭证。您的密钥存储在一个授权密钥文件中,通常位于每个用户的主目录下的/.ssh目录中。

除了使用ssh和ssh-keygen外,您还可以使用rsync(远程同步)和scp(安全复制程序)命令在系统之间进行文件传输。在您的初始服务器设置期间,您使用rsync在用户之间复制文件,但您也可以使用它在系统之间复制文件。

Info

自查
scp和rsync有什么区别?

使用下拉功能回顾答案。
scp和rsync都可以复制文件:scp在使用SSH的网络主机之间进行复制;rsync在本地主机或本地主机与远程主机之间进行双向复制。在使用SSH时,两者都会加密文件传输,而rsync以其增量传输算法而闻名,可以获得优化的传输速度。

使用scp时,您可以选择要传输的文件和目录,而rsync首先传输所有文件和目录,然后仅传输更改过的文件和目录。您可以使用rsync的其他选项,例如–archive、–verbose和–compress标志。

安全文件传输协议(sftp)是文件传输的另一种选择,但是由于scp和rsync更加灵活,这种协议在如今的使用中并不常见。

接下来是什么?

你可以在DigitalOcean Droplet上托管一个云服务器。一旦你熟悉Linux基础知识,你可以尝试保护你的VPS并设置Fail2ban来保护你的服务器。你还需要决定使用哪种包管理系统。

如果您想进一步发展Linux技能,请按照这些教程进行操作。

  • How To Use Find and Locate to Search for Files on Linux
  • Understanding Systemd Units and Unit Files
  • Using Grep & Regular Expressions to Search for Text Patterns in Linux
  • How To Use Bash’s Job Control to Manage Foreground and Background Processes
  • Command Line Basics: Symbolic Links
  • How To Partition and Format Storage Devices in Linux
  • How To Add Swap Space on Ubuntu 22.04

如果您在工作中遇到问题,您也可以解决常见的网站问题。

凭借你新获得的云知识,你已经具备了继续在网络服务器、数据库、容器和安全领域进行云端旅程所需的良好装备。