华为云服务器初探二(完结)

69e7f4a295e5abffb473065aa6c9019d.png

在上一篇《华为云服务器初探》 中介绍了在使用华为云服务器部署时的一些关键点,本篇继续,内容涉及如下:

  • 中间件的部署问题解决

  • NAT 网关使用

  • 数据库服务的访问

  • dotNET Core 程序的构建

Redis

首先更正上一篇中的一个错误,在运行参数中进行密码设置,是不能生效的,而且还会导致配置文件加载出错:

07023d459c3e1660d7d75b633dc8471f.png

在日志中可以看到下面的错误:

** FATAL CONFIG FILE ERROR (Redis 6.2.6) ***Bad directive or wrong number of arguments>>> 'requirepass=123456’

如果想要给 Redis 设置密码,只需要修改 Redis 的配置文件即可,将 requirepass 的注释放开:

8b970d46220a1e8be25e33291e86c6c1.png

都设置好了,Redis 的工作负载运行状态是正常的,但使用客户端工具连接时不能正常连接,继续查看日志发现:

Warning: Could not create server TCP listening socket ::1:6379: bind: Cannot assign requested address

看似是个警告,但其实是个错误,意思是地址不能分配,肯定就访问不了。修改 Redis 的配置文件:

  • 注释掉 bind 所在行

  • protected-moe 由 yes 修改为 no

679fdc7c91e76ca668e7703e344c7902.png

RabbitMQ

默认情况下,RabbitMQ 的 UI 插件是没有自动开启的,所以在安装了 RabbitMQ 之后,需要进入容器进行开启:

docker exec -it  mq容器id bash
rabbitmq-plugins enable rabbitmq_management

出现下图,说明开启成功:

1ede7e95366f5d3e55c98cc6036d40b5.png

现在的问题是如果 RabbitMQ 的配置升级重新构建后,需要重新进入容器进行开启。

NAT 网关

一开始,将弹性公网 IP 直接绑定在 ECS 服务器上,可以满足 CCE 中对外发布应用,本地 SSH 也能连接到服务器,但是公网 IP 只能绑定到一个地方,华为云的 GaussDB(for MySQL) 想要在本地用客户端工具连接,一种方式就是绑定公网 IP 。但公网 IP 已经被 ECS 服务器占用了,所以如果想要多个不同的应用同时提供服务,就需要使用 NAT 网关了。

1、首先在弹性公网 IP 的列表界面中进行解绑;

2、在 NAT 网关中添加 SNAT 规则,规则中绑定公网 IP:

ddf3144f8580e07302d2556fe0d90cb9.png

3、添加 DNAT 规则,将数据库映射到外网访问:

11ae404b39b23a8521cf968700f2ef79.png

4、这样数据库就既能内网访问也能外网访问了,如果想要远程连接服务器,也是同样的设置,添加 DNAT 规则,将自定义的端口映射到某台 ECS 服务器的 22 端口即可;

5、将公网 IP 和 ECS 服务器解绑后,CCE 中的工作负载便不能进行访问了,外部访问地址一列也被清空,需要重新在访问方式中添加 Service,访问类型选择 DNAT 网关:

d51e95bf922e4771b27b8dec5b6015ca.png

dotNET Core 程序的构建

因为购买的是鲲鹏服务器,需要在鲲鹏服务器上进行基础镜像的构建,然后程序构建时依赖构建好的基础镜像,具体步骤如下:

1、在任意的 ECS 服务器的根目录创建目录 core3.1_images_build ,里面添加 Dockerfile 文件和常用字体文件,Dockerfile 内容如下:

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1RUN apt-get update;
RUN apt-get install libfontconfig1 -yCOPY . /app
COPY simhei.ttf /usr/share/fonts/
COPY simsunb.ttf /usr/share/fonts/
COPY simsun.ttc /usr/share/fonts/
COPY BSONGSJ.TTF /usr/share/fonts/
COPY cybsongsj.ttf /usr/share/fonts/
COPY hyktjn.ttf /usr/share/fonts/COPY ./font/WINGDNG3.TTF /usr/share/fonts/
COPY ./font/WINGDNG2.TTF /usr/share/fonts/
COPY ./font/BSSYM7.TTF /usr/share/fonts/
COPY ./font/symbol.ttf /usr/share/fonts/
COPY ./font/wingding.ttf /usr/share/fonts/
COPY ./font/webdings.ttf /usr/share/fonts/
COPY ./font/segmdl2.ttf /usr/share/fonts/WORKDIR /appEXPOSE 80/tcp

2、构建镜像并推送到华为云的私有镜像仓库;

3、创建名为 test 的 dotNET Core 示例程序,程序根目录中添加 Dockerfile 文件,内容如下:

FROM swr.cn-north-4.myhuaweicloud.com/xxxx/s2netcore3.1-runtime:latest
COPY . /app
WORKDIR /app
EXPOSE 5000/tcp
ENTRYPOINT ["dotnet", "test.dll"]

4、华为云的编译构建中创建 netcore-test 的构建任务,基本信息中的主机类型选择鲲鹏:

88067b24607c0e3d95ea08f29294b1d2.png

5、构建步骤中添加两个步骤:mono 和制作镜像并推送到 SWR 仓库:

d13c021bff649b22bd7d084c6c3b8bd3.png

6、制作镜像并推送到 SWR 仓库的配置如下:

35b366e67df0dec4ded61db473f8f146.png

7、创建无状态工作负载,选择构建好的镜像,运行成功如下图:

f3cbdbb9921a72cfc3e7409b59096643.png

希望对您有所帮助!

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

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

相关文章

for in for of区别_Python 第5课:for…in循环黄金搭档之列表

乐学趣学Py● 05:for…in循环黄金搭档之列表●Python趣味小百科Python程序中有一个有彩蛋,在IDLE Pythton模式下输入import this会出现一首(The Zen of Python, by Tim Peters)‘Pyton之禅’的小诗。这首小诗表明了用Python编写代码时遵循的原则&#xf…

开源虎墩同名电影《小虎墩大英雄》定档大年初一

文末有福利,记得看到最后哦~| 作者:虎虎生风的开源虎墩组| 编辑:刘雪洁| 责编:王玥敏开源虎墩诞生记:小源机器人2.0大家还记得 2020 疫情肆虐的时候开源社与来自全国各地的开源爱好者隔空合作,共同打造的疫…

HYDRAstor:可扩展的二级存储

为什么80%的码农都做不了架构师?>>> 原文:HYDRAstor: a Scalable Secondary Storage. HYDRAstor(官网)是NEC推出的二级存储系统,先后有多篇关于HYDRAstor的论文发表在FAST(包括后来9livesdata发表的论文&a…

汇编语言之寄存器(CPU工作原理)

1、介绍 一个典型的CPU,由运算器、控制器、寄存器等器件组成,对于游戏修改者来说,重点学习寄存器,其它不必管。 不同的CPU,寄存器的个数、结构是不相同的,8086CPU有14个寄存器,每个寄存器有一个…

学好英语网首页制作_没有美术基础的新手小白,如何学好淘宝美工?

没有美术基础的新手小白,如何学好淘宝美工?俗话说:万事开头难,没有任何基础、没有美术基础学淘宝美工,要怎么学习好呢?显然,作为一名没有美术基础的新手小白,一般开始学习的时候都是…

14岁上中科大,18岁攻读麻省博士,28岁成为哈佛最年轻副教授,“华人女天才”的开挂人生...

全世界只有3.14 % 的人关注了爆炸吧知识哈佛年纪最小的副教授是中国人1997年美国颁发的罗伯特里得奖获得者蔡天西,22岁获国际生物统计学协会颁发的极大成就"半参数随机"奖,28岁成为哈佛最年轻的女性副教授,香港、美国、著名学术刊物…

汇编语言之寄存器(内存访问)

1、内存中字的存储 2、ds和【address】 CPU要读写一个内存单元的时候,必须先给出这个内存单元的地址,在8086CPU中,内存地址由段地址和偏移地址组成, 其中,段地址存放在段寄存器DS中,DS称作数据段寄存器。…

用sort()方法随机打乱数组

2019独角兽企业重金招聘Python工程师标准>>> 我们先看一下随机数组排序的示例,再来研究其中的原理。 随机数组排序示例 var numbers [5, 458 , 120 , -215 , 228 , 400 , 122205, -85411]; numbers numbers.sort(function(…

Linux下部署Kubernetes+Kubesphere(一)Kubernetes基础

1.服务器规划为配置Kubesphere高可用集群,需要三台或三台以上机器作为Master节点,每台机器既可以作为Master也可以作为Worker节点。其中Master节点数量建议为单数。该示例中采用三台服务器,即作为Master节点也作为Worker节点,配置…

触发器及其应用实验报告总结_调机技巧总结: 先快后慢射胶法及其应用

戳我进入社区:注塑和模具人的网上家园先快后慢,也即先用一级快速射胶,射到某个设定的位置时,再起二级慢速射胶。这个二级起级点一般是设在射胶充型的后期,也即接近充型结束的位置。使用一级快速射胶,可以保…

使用 dotnet-monitor 在 Kubernetes 中收集 .NET metrics

使用 dotnet-monitor 在 Kubernetes 中收集 .NET metricsIntrodotnet-monitor 是微软推出的一个帮助我们诊断和监控 .NET 应用程序的工具,在 Kubernetes 中我们可以让 dotnet-monitor 作为 sidecar 运行,无侵入地监控 .NET 应用,今天我们就来…

arcgis 分区 属性值_ArcGIS制图之Maplex自动点抽稀

制图工作中,大量密集点显示是最常遇到的问题。其特点是分布可能不均匀、数据点比较密集,容易造成空间上的重叠,影响制图美观。那么,如果美观而详细的显示制图呢?主要原理Maplex中对标注有很好的显示控制,一…

学术造假导致导师自杀,后将这段学术丑闻经历出书贩卖,一年收入上百万......

全世界只有3.14 % 的人关注了爆炸吧知识本文转自募格学术2020年2月11日,小保方晴子又被撤回了一篇研究论文。Tissue Engineering Part A撤稿给出的原因是:通过哈佛医学院正式调查后,无法确实其实验结果的准确性,尽管作者本人坚持已…

汇编语言之数据处理的2个基本问题

1、bx、si、di和bp Bx、si和di这3个寄存器我们已经学过了,现在进行一下总结,并学一下bp。 1:在8086CPU中,只有这4个寄存器可以用在[…]中来进行内存单元的寻址。比如,下面的指令都是正确 的…

nvm用标准sata ahci码_能者多劳!让NVMe固态硬盘做系统盘的同时,加速SATA数据盘...

不知不觉当中,固态硬盘已经取代机械硬盘成为主流。越来越多的玩家已经淘汰机械盘,使用NVMeSATA的固态硬盘高低搭配。既然是高低搭配,就一定会有性能差距,是否能从NVMe固态硬盘中划分出一小部分空间来给SATA固态硬盘加速&#xff0…

天了噜!定义static字段还有顺序要求?

前言前段时间,发现一个bug,代码结构类似下面的示例。你能说出这段代码的正确返回结果吗?class Program {private static int a1 a2;private static int a2 Init();private static int Init(){return 123;}static void Main(string[] args){…

汇编语言之转移指令和原理

1、引言 可以修改IP,或同时修改CS和IP的指令统称为转移指令。概括地讲,转移指令就是可以控制CPU执行内存 中某处代码的指令。 8086CPU的转移行为有以下几类: 1. 同时修改CS和IP时,称为段间转移&#…