前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >云原生之路 | 2.实践容器(Container)基础环境搭建部署

云原生之路 | 2.实践容器(Container)基础环境搭建部署

作者头像
全栈工程师修炼指南
发布2024-03-13 15:57:56
1050
发布2024-03-13 15:57:56
举报
前言简述:

2022年,原本是准备和同事一起完成出一本Kubernetes在企业落地实践的书的,但是由于老婆怀孕以及后来娃娃的出生需要照顾,从而错过了发版时间(工期赶不赢),后来一想是有点后悔,浪费了这一次宝贵机会,但是也无可奈何,出书对主题大纲、书籍目录、代码贴图、文章内容以及来源等格式都有严格的限制,所以说就是想赶上时间也是没办法的,不过在之前我已经完成了几章,如今生活一切都步入了正规,作者不想所以写和总结的文章吃灰,遂一一分享出来给大家一起学习,并且后续作者也会继续更新云原生在企业落地实践等相关文章,在【云原生落地实用指南】付费专栏之中持续更新,希望大家多多支持,关注转发!

温馨提示:作者最近开通的知识星球,全栈系列从门到实践教程将会逐步同步到星球内,加入星球将获得作者在安全、运维、开发中的所有学习实践笔记,和问题答疑以及远程技术支持,希望大家多多支持!

第二章 容器初体验

我们在前一章介绍了一些关于容器技术、Docker、Containerd以及Kubernetes等相关基础知识,相信各位读者已对其有了简单的认识,俗话说工欲善其事,必先利其器,所以在本章里我们将对容器的基础安装环境进行搭建配置和简单使用讲解

本文为作者原创文章,为尊重作者劳动成果禁止非授权转载,若需转载请在【全栈工程师修炼指南】公众号留言,或者发送邮件到 [master@weiyigeek.top] 中我将及时回复。

2.1基础环境准备

2.1.1虚拟化软件介绍(与安装配置)

前面我们已经介绍了虚拟化技术,那到底作为用户的我们应该如何去操作并应用它?

答案: 就是虚拟化平台,我们可以通过虚拟化的平台进行安装各种操作系统虚拟机。

虚拟机是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。通过虚拟机软件你可以在一台物理计算机上模拟出二台或多台虚拟的计算机,这些虚拟机完全就像真正的计算机那样进行工作。

1.常用虚拟化平台

lVMware vSphere

VMware vSphere 是 VMware 公司的优秀服务器虚拟化软件,VMware 公司是全球桌面到数据中心虚拟化解决方案的领导厂商,它可以使用虚拟机、容器和 Kubernetes 的任意组合以及行业领先的服务器虚拟化软件,为现代应用程序提供强大的计算环境。个人认为VMware vSphere在服务器中是最好用的虚拟机软件。

参考连接: https://www.vmware.com/products/vsphere.html

lVMware Workstation Pro

VMware Workstation Pro 是 VMware 公司的优秀行业标准桌面虚拟机管理程序软件, 它可以在 Windows 或 Linux 桌面上运行 Windows、Linux 和 BSD 虚拟机, 个人认为Vmware Workstation在PC机或者工作站中是最好用的虚拟机软件,注意它是需要购买许可。

参考连接: https://www.vmware.com/cn/products/workstation-pro.html

lVMware Workstation Player

VMware Workstation Player 是 VMware 公司推出的免费小巧的虚拟机软件,可将其看做精简版的 VMware Workstation,它可以在 Windows 或 Linux PC 上将多个操作系统作为虚拟机轻松运行。

参考连接: https://www.vmware.com/products/workstation-player.html

lVirtual Box

Virtual Box 是 Oracle 公司旗下的一款免费开源功能强大的 x86 和 AMD64/Intel64 虚拟化产品,适用于企业和家庭使用, 在 Sun 被 Oracle 收购后正式更名成 Oracle VM VirtualBox。

参考连接: https://www.virtualbox.org/

lHyper-V

Windows Virtual PC 是微软公司旗下的一款虚拟化产品,是最新的 Microsoft 虚拟化技术,它可以对服务器硬件进行虚拟化,使你能够在超融合群集中的服务器上运行虚拟机。

Windows 和 Windows Server 中的 hyper-v 替代了较旧的硬件虚拟化产品,如 microsoft virtual pc、microsoft virtual Server 和 Windows 虚拟 pc。

参考连接:https://docs.microsoft.com/zh-cn/windows-server/virtualization/hyper-v/hyper-v-on-windows-server

lKVM

KVM 全称是 Kernel-based Virtual Machine ,它是一个开源的用于基于内核的系统虚拟机,它是适用于 x86 硬件上的 Linux 的完整虚拟化解决方案,包含虚拟化扩展(Intel VT 或 AMD-V)。它由一个可加载的内核模块 kvm.ko 组成,该模块提供核心虚拟化基础架构和一个处理器特定模块 kvm-intel.ko 或 kvm-amd.ko。

参考连接: https://www.linux-kvm.org/page/Main_Page

上述优秀的虚拟化软件往往融合了多项技术,例如VMware workstation是一个著名的全虚拟化VMM,但是它使用了一种被称为动态二进制翻译的技术,把对特权状态的访问访转化成为对影子状态的操作,从而避免了低效的Trap-And-Emulate的处理方式,这与超虚拟相似只不过超虚拟化是静态的修改程序代码,对于超虚拟化而言,如果能利用硬件特性那么虚拟化,那么虚拟机的管理将会大大简化,同时还能保持较高的性能。

2.VMware Workstation安装

此处我们只是出于学习的容器以及Kubernetes的需求,选择VMware Workstation Pro虚拟化平台软件就可以满足我们的基本需求,下面我将简单的介绍其安装配置。

VMware Workstation Pro 的工作原理是什么?

VMware Workstation Pro 可创建完全隔离、安全的虚拟机来封装操作系统及其应用。VMware 虚拟化层将物理硬件资源与虚拟机的资源一一对应,这样每个虚拟机都有了自己的 CPU、内存、硬盘和 I/O 设备,完全等同于一台标准 x86 计算机。VMware Workstation Pro 安装于主机操作系统之上,继承了主机的设备支持功能,提供全面的硬件支持。

Workstation Pro 是否支持 32 位操作系统?

Workstation Pro 要求主机 PC 采用 64 位操作系统。您仍然可以在 Workstation Pro 的虚拟机内运行自己喜欢的 32 位 Windows 和 Linux 客户机操作系统。

Workstation 16 Pro 下载安装

您可以从 Workstation 16 Pro 下载页(https://www.vmware.com/go/downloadworkstation) 选择适合操作系统的安装版本,点击Go TO Download后如果没登陆将会进入VMware登录界面,等待登录后即可下载 VMware Workstation Pro 软件,如下图2-1所示

图 2 - 1 VMware Workstation 下载页面

下载完后安装也是非常简单傻瓜式的,首先双击运行Workstation Pro安装程序,然后可能会提示您重新启动系统以完成Misrosoft VC Redistributable 安装,然后再运行此程序,直接点击下一步即可,其中安装路径我是设置的在D盘,最后点击完成即可,打开后会提示我们输入许可密钥,此时我们可以点击试用,即可免费体验功能齐全的 30 天试用版 (如需购买许可请访问Workstation Pro 产品页), 最终安装完成如下图2-2所示。

图 2 - 2 VMware Workstation Pro 虚拟化软件主界面

2.1.2 Ubuntu安装与环境配置

本小结将进行Ubuntu 20.04系统安装实践操作,是为了便于入门的读者操作学习,下面将简单描述Ubuntu 20.04安装部署流程以及基础环境配置 ,如果你已会在VMware Workstation中安装Ubuntu操作系统则可以略过此部分。

1.首先我们需要从Ubuntu的官网下载ubuntu-20.04.2-live-server-amd64.iso镜像

下载地址: https://ubuntu.com/download/server#releases

2.首先我们在VMware Workstation中新建立一台Ubuntu虚拟机其虚拟机配置如下图2-3所示:

图 2 - 3 Ubuntu虚拟机配置参数

3.然后点击开始此虚拟机,将会让您选择您熟悉语言进行显示安装菜单此处我选择中文简体,然后选择安装 Ubuntu 服务器版(I) 即可进入安装页面, 如下图2-4 所示

图 2 - 4 Ubuntu 系统安装选项界面

4.在进行网络设置时默认是采用DHCP进行自动获取IP地址,此处我们可以手动指定或者在安装后也可以进行修改,为了后续方便此处我们进行设置静态IP为10.10.107.242,IP地址、子网以及网关设置如下图2-5所示,之后您便可以点击Save保存然后Done即可。

图 2 - 5 静态IP地址设置

5.完成了网络的配置,此时将显示引导程序部署配置,此处可以选择默认的LVM分区方案点击Done即可,如下图2-6所示,如需自定义LVM分区方案请看下一步。

图 2 - 6 LVM分区方案

当然有希望自定义系统分区方案的读者,可以参照如下图2-6所示进行分区配置, 此处根分区分片了50G,引导分区设置1G,保留将近50GB的存储空间,点击Done 后将进入到

图 2 - 7 自定义LVM 分区方案

6.此时将进入Profile Setup 设置界面,将设置系统的登陆账户以及密码并设置主机名为ubuntu2004 (可自定义)等,输入完成后同样点击Done,之后选择安装 Install OpenSSH server,点击 Done ,此时您将会看见Installing system系统界面,如下图2-8所示。

图 2 - 8 Ubuntu20.04安装进度页面

7.等待安装完成后,最后选择 Reboot Now 重启虚拟机即可完成安装,系统重启成功后采用上面设置的账号与密码进行登陆到该服务器中。

8.登陆服务器后可以采用我编写的Shell脚本进行Ubuntu 20.04操作系统初始化、安全加固和内核参数优化,后续便可将该虚拟机作为基线模板供后面创建虚拟机使用。

网安等保-主机安全测评之Linux服务器Ubuntu-22.04-LTS操作系统安全加固制作基线系统脚本分享与实践

加固脚本建议使用root用户进行执行,防止用户权限问题导致脚本无法正常执行,当执行完毕后我们可以将root用户进行锁定即可。

# 首先我们需要登陆我们自定义的用户,采用sudo passwd root 修改管理员账号

代码语言:javascript
复制
weiyigeek@ubuntu2004:~$ sudo passwd root
[sudo] password for weiyigeek:
New password:
Retype new password:
passwd: password updated successfully
# 切换到root 用户,输入前面设置的密码即可。
weiyigeek@ubuntu2004:~$ su - root
Password:

9.Ubuntu系统加固脚本执行完成后最终登陆效果,如下图2-9所示所示

图 2 - 9 Ubuntu 系统加固优化后登陆界面

至此 Ubuntu 安装与环境配置完成!

2.1.3 CentOS安装与环境配置

本小结进行CentOS7系统安装实践操作,是为了便于入门的读者操作学习,下面将简单描述CentOS7系统安装部署流程以及基础环境配置,如果你已会在VMware Workstation中安装CentOS7操作系统则可以略过此部分。

1.首先我们需要从Ubuntu的官网下载 CentOS-7-x86_64-Minimal-2009.iso镜像进行安装使用

CentOS安装镜像官方下载地址: https://www.centos.org/centos-linux/

2.同样我们在VMware Workstation中新创建一台CentOS7 虚拟机,其虚拟机配置如下图2-10所示:

图 2 - 10 CentOS 7 虚拟机配置

3.点击启动打开或启动虚拟机,此时它将会从ISO加载安装镜像如下图2-11所示界面,选择Install CentOS 7 回车,然后您将会看到Press the ENTER Key to Begin the Install Process. 提示,按任意键即可,选择中文或者English语言,此处我选择中文语言,选择后点击继续。

图 2 - 11 CentOS 系统安装选项界面

4.此时你将看见安装信息摘要,我们需要对安装位置以及网络和主机名进行设置,点击安装位置我们选择自动分区,点击完之后再点击网络和主机名称来启用以太网IP地址自动获取以及设置主机名,点击完成后,再点击开始安装如下图2-12所示

图 2 - 12 CentOS 安装信息摘要

5.点击创建一个普通用户,此处我输入指定非管理员用户名称(可自定义)并设置其登陆密码,然后点击ROOT密码进行设置管理员账号的密码,如下图2-13所示,之后等待安装完成,点击完成配置,重启虚拟机即可!

图 2 - 13 CentOS7安装进度页面

6.重启系统后显示登陆界面,输入您前面root管理员以及密码即可进行登陆该服务器,在登陆服务器后可以采用Shell脚本进行CentOS操作系统初始化、安全加固和内核参数优化,然后便可将该虚拟机作为基线模板,以供后续使用。

网安等保 | 主机安全之CentOS8服务器配置优化与安全加固基线文档脚本分享

7.CentOS操作系统加固脚本执行完成后最终登陆效果,如下图2-14所示所示

图 2 - 14 CentOS7系统加固优化后登陆界面

至此CentOS系统安装与基础环境配置完成!

2.1.4 Windows Server安装与环境配置

Windows作为我们平时接触最多的服务器操作系统,也占有业务系统的半壁江山,考虑到一些刚入门的读者学习难度,本小节主要进行Windows Server 2019操作系统安装部署以及基础环境配置,如果已会在VMware Workstation中安装WindowServer操作系统的读者则可以略过此部分。

1.首先我们需要再Microsoft官网上或者在搜索引擎上下载和使用Windows Server 2019 ISO安装镜像。

Windows Server 2019 试用ISO安装镜像官方下载地址 https://www.microsoft.com/en-us/evalcenter/

2.我们在VMware Workstation中新创建一台Windows Server 2019虚拟机其中值得注意的是需要将CPU虚拟化引擎中的虚拟化Intel VT-x/EPT 或AMD-V/RVI(V)进行勾选,即虚拟机配置如下图2-15所示,

图 2 - 15 Windows Server 2019虚拟机配置

3.点击开启此虚拟机,将显示Microsoft Server操作系统安装界面,选择需要安装语言以及键盘输入法,点击下一页后再点现在安装,此时如果有产品密钥就是输入如果还没购买许可的读者请先试用,然后选择需要安装的操作系统版本,例如此处 Windows Server 2019 Standard (桌面版本) 然后点击下一页,如下图2-16所示

图 2 - 16 Windows Server 2019 操作系统版本选择

4.下一步将显示Microsoft Server 操作系统设置,选择自定义仅安装 Microsoft Server 操作系统 (Advanced),如下图2-17所示 ,然后选择操作系统的安装位置,此处可以看到我们前面添加磁盘,点击下一页,开始系统的安装。

图 2 - 17 选择仅安装Microsoft Server 操作系统

亲,文章就要看完了,不关注一下【全栈工程师修炼指南】吗?

5.点击下一步,然后就可以开始安装Microsoft Server操作系统,等待完成后重启虚拟机即可,如下图2-18所示。

图 2 - 18 Windows Server 2019 安装进度

6.登陆服务器后可以采用PowerShell脚本进行Windows Server 2019操作系统初始化、安全加固,然后便可将该虚拟机作为基线模板,以供后续使用。

相关文章:完整的Windows与Linux服务器系统安全加固实践和基线检测脚本(等保2.0)

Windows Server 2019操作系统加固完成时登陆界面如下图2-19所示。

图 2 - 19 Windows Server 2019操作系统加固完成时登陆界面

至此Windows Server 2019安装与环境配置完成!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-03-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 全栈工程师修炼指南 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第二章 容器初体验
    • 2.1基础环境准备
      • 2.1.1虚拟化软件介绍(与安装配置)
      • 2.1.2 Ubuntu安装与环境配置
      • 2.1.3 CentOS安装与环境配置
      • 2.1.4 Windows Server安装与环境配置
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档