828华为云征文|华为云Flexus云服务器X实例之openEuler系统下玩转iSulad容器技术

前言


华为云以其卓越的技术实力和创新能力,持续为用户提供高效、稳定的云计算服务。在这一背景下,华为云推出的Flexus云服务器X实例,专为满足中小企业和开发者的独特需求而设计,提供了前所未有的灵活性与性能。结合华为自研的iSulad容器技术,用户能够在openEuler系统上享受到更轻量级、更安全的应用程序部署体验。本文将带领读者深入了解如何在华为云Flexus云服务器X实例上利用iSulad容器技术,开启全新的云上创新之旅。


一、Flexus云服务器X实例介绍

1.1 Flexus云服务器X实例简介

华为云Flexus云服务器X实例是新一代面向中小企业和开发者的柔性算力云服务器。它能够智能感知业务负载的变化,自动调整资源配置。这款服务器特别适用于中低负载的应用场景,例如电商直播、企业网站建设、开发测试环境、游戏服务器以及音视频服务等。X实例的设计理念旨在为用户提供更加灵活和高效的计算资源管理方式。通过智能调整,它可以更好地满足不同业务的需求,提高资源利用率。

在这里插入图片描述

1.2 Flexus云服务器X实例特点

  • 提供丰富的公共镜像:Flexus云服务器X实例提供多种公共镜像供用户选择,方便快速部署各种应用和服务。

  • 可灵活自定义vCPU内存配比:用户可以根据自己的需要灵活调整虚拟CPU和内存的配比,以满足不同场景的需求。

  • 智能感知业务动态升降配:Flexus云服务器X实例能够智能感知业务的负载情况,并根据需要自动升降配,以满足业务的需求,提高系统的稳定性和性能。

  • 负载范围更高:相对于Flexus应用服务器L实例,Flexus云服务器X实例能够处理更高的负载,适用于更复杂和繁忙的场景。

1.3 Flexus云服务器X实例使用场景

Flexus云服务器X实例针对不同的使用场景展现出其独特的优势:

  1. 电商直播:利用X实例搭建电商交易平台,可以有效应对电商市场的瞬息万变,从容处理业务压力波动,确保交易过程顺畅无阻。

  2. 企业建站:面向博客、论坛和企业门户等应用场景,X实例帮助企业高效传播价值信息,促进信息共享与交流,支持构建多功能传播和交互平台。

  3. 个人开发测试:开发者在开发和测试过程中所需的环境资源可以通过X实例便捷获取,不仅提高了搭建效率,而且降低了成本。

  4. 游戏服务器:适用于搭建游戏后台服务器,强大的计算能力可以轻松应对大量玩家同时在线的情况,同时支持平滑扩容,快速应对玩家数量增长的需求,以及提供出色的网络加速能力以提升用户体验。

二、iSulad介绍

2.1 iSulad简介

iSulad是华为公司推出的一款容器技术。它是一种轻量级的虚拟化技术,允许用户在独立的运行环境中部署和运行应用程序。iSulad使用Linux容器技术,通过隔离进程、文件系统、网络和其他系统资源来实现应用程序之间的隔离。

2.2 iSulad特点

  • 高效性能:iSulad的设计优化使其在容器的创建、启动和停止等操作上具有出色的性能。

  • 安全可靠:iSulad采用了诸多安全机制,包括基于容器的权限隔离、命名空间和资源控制,以保证容器之间的安全隔离,并防止恶意容器对宿主机造成危害。

  • 兼容性强:iSulad支持Open Container Initiative(OCI)标准,可以与其他符合OCI标准的容器生态系统无缝对接,如Docker。

  • 简单易用:iSulad提供了简洁的命令行工具和API接口,使用户可以方便地管理和操作容器。

  • 多样化的功能:iSulad支持容器的快照、镜像管理、容器网络、容器存储等一系列的功能,以满足不同使用场景的需求。

三、本次实践介绍

3.1 本次实践简介

1.本次实践为个人测试学习环境,旨在快速部署应用,生产环境请谨慎;
2.本次实践环境为华为云Flexus云服务器X实例,使用的操作系统为Huawei Cloud EulerOS 2.0 (x86_64);
3.本次实践旨在部署iSulad环境,并掌握其容器技术的各种操作。

3.2 本次环境规划

服务器类别公共镜像选择内网IP地址iSulad版本操作系统版本
华为云Flexus云服务器X实例openEuler192.168.0.169 2.0.18openEuler 22.03 LTS

四、购买华为云Flexus云服务器X实例

4.1 登录华为云

进入华为云官网:https://activity.huaweicloud.com/,登录自己的华为云账号,进入华为云首页。

在这里插入图片描述
在这里插入图片描述

4.2 进入Flexus云服务器X实例购买页面

我们在华为云官网首页,精选推荐模块中,可以看到Flexus云服务器X实例,点击进入Flexus云服务器X实例主页。

在这里插入图片描述
在这里插入图片描述

点击页面中的“购买”选项,进入Flexus云服务器X实例购买页面。

在这里插入图片描述

4.3 购买Flexus云服务器X实例配置

  • 镜像选择:本次实践使用openEuler作为公共镜像,请根据实际需求自定义选择合适的操作系统镜像。
  • 镜像切换说明:参考的公共镜像原为Huawei Cloud EulerOS,但本次实践中已切换至openEuler。
  • 基础配置参考:购买时可参考以下基础配置进行选择。
项目配置说明
计费模式包年/包月
区域华北—北京四,可用区:随机即可
实例规格关闭性能模式,选择自定义,4vCPUs | 12GiB
镜像公共镜像,openEuler,版本:openEuler 2.0 Standard 64 bit (10GiB)
应用加速不加速
存储系统盘,通用型SSD 100G
网络选择默认即可
安全组选择默认即可
弹性公网IP选择“现在购买”,全动态BGP,带宽3Mbit/s
云服务器名称可自定义设置,这里选择默认的名称
登录凭证自定义设置密码
云备份暂不购买
  • 确认配置及购买:在确认配置页面仔细检查Flexus云服务器X实例的各项设置,确保无误后点击“立即购买”,完成付款流程即可成功购买。

在这里插入图片描述

4.4 使用Xshell远程连接

进入华为云Flexus云服务的控制台,选择Flexus云服务器X实例,可以看到已经正在运行的Flexus云服务器X实例。

在这里插入图片描述

  • 复制Flexus云服务器X实例的弹性公网IP地址

在这里插入图片描述

  • 主要填写Flexus云服务器X实例的弹性公网IP地址,输入其登录用户和密码,连接即可。

在这里插入图片描述

在这里插入图片描述

4.5 检查操作系统版本

检查Flexus云服务器X实例的操作系统版本,本次实践选择的版本为openEuler 22.03 LTS

[root@flexusx-51a1 ~]# cat /etc/os-release
NAME="openEuler"
VERSION="22.03 LTS"
ID="openEuler"
VERSION_ID="22.03"
PRETTY_NAME="openEuler 22.03 LTS"
ANSI_COLOR="0;31"

检查当前操作系统的内核版本,当前内核版本为5.10.0-60.139.0.166.oe2203.x86_64

[root@flexusx-51a1 ~]# uname -r
5.10.0-60.139.0.166.oe2203.x86_64

五、安装及配置iSulad

5.1 安装iSulad

在openEuler系统重,直接使用以下命令安装iSulad。

yum install -y iSulad

在这里插入图片描述

5.2 修改配置文件

备份配置文件:执行以下命令,我们将iSulad的原始配置文件进行备份。

cp /etc/isulad/daemon.json /etc/isulad/daemon.json.origin

修改配置文件:打开iSulad的配置文件daemon.json,修改其镜像仓库地址。

vim /etc/isulad/daemon.json
  • 将图中部分修改镜像仓库。
"registry-mirrors": [
             "hub.oepkgs.net"
    ]

在这里插入图片描述

5.3 重新启动iSulad服务

-设置开启启动

 systemctl enable isulad
  • 重新启动iSulad服务
systemctl restart isulad
  • 检查iSulad服务服务状态
[root@flexusx-51a1 ~]# systemctl status  isulad
● isulad.service - iSulad Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/isulad.service; enabled; vendor preset: disabled)
     Active: active (running) since Thu 2024-09-26 21:58:58 CST; 41s ago
   Main PID: 255962 (isulad)
      Tasks: 12 (limit: 73114)
     Memory: 6.9M
     CGroup: /system.slice/isulad.service
             └─ 255962 /usr/bin/isulad

Sep 26 21:58:58 flexusx-51a1 systemd[1]: Starting iSulad Application Container Engine...
Sep 26 21:58:58 flexusx-51a1 isulad[255962]:          engine 20240926135858.258 - iSulad successfully booted in 0.011 s
Sep 26 21:58:58 flexusx-51a1 systemd[1]: Started iSulad Application Container Engine.

5.4 查询iSulad版本

  • 查询iSulad版本,当前版本为2.0.18
[root@flexusx-51a1 ~]# isula --version
Version 2.0.18, commit cbbf3711bc84e5f3ef3147b4e15d85888f33cb39

5.5 镜像拉取测试

执行以下命令,拉取openeuler/openeuler:20.09镜像,可以看到很快就成功拉取。

[root@flexusx-51a1 ~]# isula pull openeuler/openeuler:20.09
Image "openeuler/openeuler:20.09" pulling
Image "8c788f4bfb7290e434b2384340a5f9811db6ed302f9247c5fc095d6ec4fc8f32" pulled

查看拉取镜像,可以看到本地存在已拉取的镜像。

[root@flexusx-51a1 dillinger]# isula images
REPOSITORY                     TAG        IMAGE ID             CREATED              SIZE
ghcr.io/linuxserver/dillinger  latest     ba7ab914577c         2024-03-21 03:58:20  751.764MB
openeuler/openeuler            20.09      8c788f4bfb72         2020-09-28 12:27:37  506.641MB

六、使用iSula运行容器

6.1 创建openeuler容器

创建openeuler容器:我们使用 isula命令创建openeuler容器。

[root@flexusx-51a1 ~]#  isula create -it openeuler/openeuler:20.09
45d73fef72b18543fe81ddb155cc2481c8179db11fa06c41fd94ee29f2668372

6.2 启动openeuler容器

  • 查看容器ID
[root@flexusx-51a1 ~]# isula ps -a
CONTAINER ID	IMAGE                    	COMMAND    	CREATED           	STATUS 	PORTS	NAMES
45d73fef72b1	openeuler/openeuler:20.09	"/bin/bash"	About a minute ago	Created	     	45d73fef72b18543fe81ddb155cc2481c8179db11fa06c41fd94ee29f2668372
  • 启动openeuler容器
isula start 45d
  • 查看openeuler容器状态
[root@flexusx-51a1 ~]# isula ps
CONTAINER ID	IMAGE                    	COMMAND    	CREATED      	STATUS       	PORTS	NAMES
45d73fef72b1	openeuler/openeuler:20.09	"/bin/bash"	2 minutes ago	Up 49 seconds	     	45d73fef72b18543fe81ddb155cc2481c8179db11fa06c41fd94ee29f2668372

6.3 查看容器内系统版本

  • 执行以下命令,进入openeuler容器内。
[root@flexusx-51a1 ~]# isula  exec -it 45d  /bin/bash


Welcome to 5.10.0-60.139.0.166.oe2203.x86_64

System information as of time: 	Thu 26 Sep 2024 11:37:26 PM CST

System load: 	0.02
Processes: 	6
Memory used: 	13.1%
Swap used: 	0.0%
Usage On: 	18%
Users online: 	0


[root@45d73fef72b1 /]#
  • 查看容器内操作系统版本
[root@45d73fef72b1 /]# cat /etc/os-release
NAME="openEuler"
VERSION="20.09"
ID="openEuler"
VERSION_ID="20.09"
PRETTY_NAME="openEuler 20.09"
ANSI_COLOR="0;31"

七、构建容器镜像方法

7.1 安装构建工具

安装构建工具,iSula提供了容器镜像构建工具isula-build。

yum --enablerepo update install -y isula-build

在这里插入图片描述

7.2 启动isula-build服务

  • 启动isula-build服务,并设置开机自启。
systemctl enable --now isula-build
  • 查看isula-build服务状态
[root@flexusx-51a1 ~]# systemctl status isula-build.service
● isula-build.service - iSula-Build Image Build Tool
     Loaded: loaded (/usr/lib/systemd/system/isula-build.service; enabled; vendor preset: disabled)
     Active: active (running) since Thu 2024-09-26 23:41:31 CST; 57s ago
   Main PID: 269081 (isula-builder)
      Tasks: 9 (limit: 73114)
     Memory: 16.0M
     CGroup: /system.slice/isula-build.service
             └─ 269081 /usr/bin/isula-builder

Sep 26 23:41:30 flexusx-51a1 systemd[1]: Starting iSula-Build Image Build Tool...
Sep 26 23:41:31 flexusx-51a1 isula-builder[269081]: time="2024-09-26T23:41:31+08:00" level=info msg="Recycle function subReaper is registered successfully"
Sep 26 23:41:31 flexusx-51a1 isula-builder[269081]: time="2024-09-26T23:41:31+08:00" level=info msg="isula-builder is listening on /var/run/isula_build.soc>
Sep 26 23:41:31 flexusx-51a1 systemd[1]: Started iSula-Build Image Build Tool.

7.3 安装runc

在isula-build的运行环境上预装好 runc,以便构建Dockerfile内的RUN指令时能够正确依赖可执行文件runc。请执行以下命令预装:

yum install -y docker-runc 

7.4 构建镜像

  • 创建构建目录
mkdir app-isula-build && cd app-isula-build
  • 编辑Dockerfile文件,内容如下:
FROM hub.oepkgs.net/openeuler/openeuler:20.09
COPY hello.sh /usr/bin/
CMD ["sh", "-c", "/usr/bin/hello.sh"]
  • 编辑hello.sh脚本:
#!/bin/bash
echo "hello~~"
  • 设置hello.sh文件执行权限
chmod +x hello.sh
  • 开始构建镜像:
isula-build ctr-img build -f Dockerfile -o isulad:hello-isula-build:v0.1 .

在这里插入图片描述

7.4 查询构建镜像

查询构建镜像。我们使用以下命令。

[root@flexusx-51a1 app-isula-build]# isula-build ctr-img images
---------------------------------------  -----------  -----------------  ------------------------  -----------
 REPOSITORY                               TAG          IMAGE ID           CREATED                   SIZE
---------------------------------------  -----------  -----------------  ------------------------  -----------
 hello-isula-build                        v0.1         6eda21a317fd       2024-09-26 15:57:09       550 MB
 <none>                                   <none>       568ae3b082fd       2024-09-26 15:54:51       550 MB
 hub.oepkgs.net/openeuler/openeuler       20.09        8c788f4bfb72       2020-09-28 04:27:37       550 MB
---------------------------------------  -----------  -----------------  ------------------------  -----------
  • 删除镜像
isula rmi 568ae3b082fd

7.5 运行镜像

执行以下命令,运行刚构建好的镜像。

[root@flexusx-51a1 app-isula-build]# isula run hello-isula-build:v0.1
hello~~

八、使用体验与总结

通过本文的探索,我们深入了解了如何在华为云Flexus云服务器X实例上利用iSulad容器技术构建高效、安全的应用环境。iSulad不仅展现了其作为轻量级容器运行时的强大能力,还能够无缝集成到Kubernetes集群中,进一步增强了应用部署与管理的灵活性和可靠性。华为云凭借其卓越的技术支持和服务质量,为中小企业和开发者提供了一个理想的平台,助力他们在数字化转型的道路上走得更远。无论是性能优化还是技术创新,华为云始终站在行业前沿,为用户带来无与伦比的云计算体验。


在华为云828 B2B企业节之际,Flexus X实例推出了重磅优惠活动。华为云凭借其顶级的云服务和卓越的性能稳定性,成为企业业务成长的理想选择。我们诚挚邀请各行各业加入华为云的大家庭,共同见证技术革新所带来的无限可能。让我们携手并进,共创云端辉煌未来,共享科技进步带来的丰硕成果。


在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

江湖有缘

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

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

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

打赏作者

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

抵扣说明:

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

余额充值