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

  • 中间件的部署问题解决

  • NAT 网关使用

  • 数据库服务的访问

  • dotNET Core 程序的构建

Redis

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

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

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

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

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

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

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

  • 注释掉 bind 所在行

  • protected-moe 由 yes 修改为 no

RabbitMQ

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

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

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

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

NAT 网关

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

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

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

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

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

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

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 的构建任务,基本信息中的主机类型选择鲲鹏:

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

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

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

希望对您有所帮助!

华为云服务器初探二(完结)相关推荐

  1. 华为云服务器EulerOS镜像源设置方法

    华为云服务器Linux操作系统EulerOS,如何使用华为云提供的EulerOS镜像源?Linux百科分享华为云服务器使用EulerOS镜像源进行更新设置教程: 华为云EulerOS镜像源设置方法 使 ...

  2. 华为云服务器上安装jdk和部署tomcat

    华为云服务器上安装jdk和部署tomcat 一.下载jdk和tomcat 下载jdk 下载tomcat: 进入tomcat官网 二.安装jdk和tomcat 1,用ftp上传安装包到云服务器上 用xs ...

  3. 优化华为云服务器采用Key登陆

    优化华为云服务器采用Key登陆 测试阶段,测试通过,整改服务器登陆问题,统一优化服务器采用KEY登陆,优化22号端口 购买华为云 我这边是测试就购买的按需付费,测试完成就释放掉拉 购买一个弹性公网ip ...

  4. 华为云服务器部署tomcat+jdk

    华为云服务器部署tomcat+jdk 在华为云上部署tomcat+jdk有两种方法,一是自行手动部署,二是通过华为云的DevCloud项目下的部署功能完成自动部署. 一. 手动部署 以部署jdk1.8 ...

  5. 什么是华为云服务器?它有什么优点?

    华为云服务器是华为公司推出的一种云计算产品,它为用户提供了灵活.安全.可靠的云计算资源,包括虚拟服务器.云存储.云数据库等多种服务. 华为云服务器是基于虚拟化技术的,用户可以根据自己的需求选择不同的服 ...

  6. 使用华为云服务器搭建一个简单网站(内容全面)

    一.购买服务器 因为遇上华为云服务器打折活动,因此就买了一年的华为云服务器.购买过程如下: 首先是去华为云官网注册账号,如果是学生进行学生认证,然后搜索"学生套餐",点击" ...

  7. 记录一次使用华为云服务器(从零搭建环境)

    系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 华为云服务器使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 系列文章目录 前言 一.购 ...

  8. 2021双十一活动:华为云服务器体验活动,免费领取50G云硬盘,邀请参加再送价值200元华为无线鼠标键盘套装

    2021双十一活动:华为云服务器体验活动,免费领取50G云硬盘,邀请参加再送价值200元华为无线鼠标键盘套装 目前华为云推出云服务器体验活动支持广大公有云开发者: 华为云服务器体验活动,免费领取50G ...

  9. 华为云服务器+Nginx+Python3.7+Django2.2+支付宝支付接入部署

    华为云服务器+Nginx+Python3.7+Django2.2+支付宝支付接入部署 本次分享内容共分四个主要部署步骤 1.Django框架项目搭建部署 2.本地内网穿透测试 3.阿里支付宝支付接口部 ...

最新文章

  1. kettle全量抽数据_漫谈数据平台架构的演化和应用
  2. Linked list(单链表)
  3. pyside2 安装_PySide2安装踩坑指南
  4. 聊聊高并发系统之队列术
  5. 计算机if函数and,excel if_EXCEL函数IF()+()和IF(and)区别是什么?
  6. 小米air耳机重新配对_小米发布 399 元真无线蓝牙耳机,除了小爱同学还支持其他手机语音助手...
  7. JavaWeb第一讲 Servlet的工作原理及生命周期
  8. Document Builder: Error message No virus scan provider available for scanner group CXP_VSCAN
  9. python中静态方法可以访问对象变量_python 面向对象-实例变量、类变量、实例方法、类方法、静态方法...
  10. MSN P2P资料转载
  11. 发牌游戏 java_解析扑克牌游戏发牌算法——java实现
  12. python获取文件列表失败_python – Pytesseract没有这样的文件或目录错误
  13. ureport2使用
  14. matlab作图有拉盖尔,拉盖尔高斯光束matlab
  15. 交互设计起源于计算机的人机界面设计的例子,交互设计概述.ppt
  16. OpenCv——OpenCv2 Mat创建、复制、释放
  17. uni-app 杂记
  18. 我和谁的天长地久(二)
  19. 华为鸿蒙cpu,华为转投第三大CPU架构RISC-V?首款鸿蒙开发板曝光
  20. SSL证书一年需要多少钱

热门文章

  1. Linux系统开机自启流程
  2. C++实现静态顺序表的增删查改以及初始化
  3. javascript 动态创建表格
  4. 史上最全的Angular.js 的学习资源
  5. yyblog2.0 数据库开发规范
  6. px,em,rem,vw单位在网页和移动端的应用
  7. java高级类_Java高级类特性(一)
  8. ubuntu取消主目录加密_如何在Ubuntu上恢复加密的主目录
  9. 设置状态栏和标题栏的样式
  10. 上周面试回来后写的Java面试总结,想进BAT必看