对容器的学习笔记

发布于:2022-11-09 ⋅ 阅读:(900) ⋅ 点赞:(0)

目录

前言

一、容器是什么

二、Docker的基础和DockerFile的使用

三、开启Docker远程访问

1.那么微服务架构准入规则指的是什么呢?

2.微服务架构安全技术配置是指什么呢?

四、DockerFile云资源介绍

1.负载均衡

2.云主机

3.云数据库

4.云缓存

总结


前言

本文章主要是,最近,通过这次亚马逊云科技云原生课程的学习,知道了容器的重要性以及它的作用性多么大,以及学习到了微服务架构的特点,以及它和单体架构的区别在哪,以及为什么说容器是支持现代微服务架构使用的基础技术。然后在下面总结一下学习调研的笔记,挑重点看哈!

可以先关注我,后续如果到了实操环节了,我在分享经验出来给大家!


一、容器是什么

在其视频上,他们是这么介绍容器的,描述如下:

在计算平台中,容器是一种标准化的软件单元,它同时也是在操作系统级别实施的一种形式的虚拟化。容器它是独立的轻量级软件包,其中包括运行应用程序所需的一切。例如:代码、运行时、系统工具、系统库和设置。而且所有容器共享底层主机系统的操作系统内核。 这些容器可以是大型企业应用程序中的服务,也可以是在隔离环境中运行的独立应用程序。

那么它的作用是干什么的?大家肯定有疑问,那么现在先来看一下官网给出的回答,

总共有3点,第1个是容器运行时共享操作系统内核,让你能够使用文件系统层创建容器镜像。

第2个是容器具有轻量级、高效、快速的特点,与虚拟机相比,容器的启动和关闭速度更快,从而可以更好地利用基础硬件。

第3个是你可以按需共享库,也可以为不同的应用程序提供不同的库,彼此互不影响,而且容器高度可移植,由于容器将软件与其他层隔离开来。

那么它的业务类型支持那些呢?

它主要是每个应用程序都构建成为一个可作为服务运行的独立组件,并使用轻量级API操作进行通信,每个服务执行一个可支持多个应用程序的功能,因此,可以对服务进行更新、部署和扩展,以便满足对特定应用程序功能的需求,我们还看到,可以从专用服务器迁移到抽象硬件层,在抽象硬件层可以根据性能和弹性等需求智能地放置微服务,所有这些分解带来了更快的迭代、自动化和整体敏捷性,支持快速启动、快速失败和快速恢复。

二、Docker的基础和DockerFile的使用

它的官网是这样说的,第1点,Docker在2013年3月发布,它是一个轻量级容器虚拟化平台,提供用于创建、存储、管理和运行容器的工具。

第2点是,它的优势,可移植的运行时应用程序环境;可将应用程序和依赖项打包进单一的不可变构体中;能够同时运行具有不同依赖项的不同应用程序版本;更快的开发和部署周期;提高资源利用率和效率。

这里也是有DockerFile使用说明的:

为了确保应用的安全性和稳定性,默认对云主机端口进行安全管控,策略如下

  • Dockerfile其实就是一个文本文件,由一系列命令和参数构成,Docker可以读取Dockerfile文件并根据Dockerfile文件的描述来构建镜像。

  • Dockerfile文件内容一般分为4部分

    • 基础镜像信息

    • 维护者信息

    • 镜像操作指令

    • 容器启动时执行的指令

三、开启Docker远程访问

敏感API必须在Docker内发起调用。

敏感数据必须在Docker内完成,禁止通过自有接口二次开放。

1.那么微服务架构准入规则指的是什么呢?

首先,第1点,是系统部署,购买云主机和云数据库,应用部署在云主机上,数据库迁移至云数据库上。

第2点,是要选择MYSQL的云数据库类型。

第3点,是数据库和客户端的安装,云主机允许安装数据库客户端管理云数据库(DB),数据库(DB)不允许安装在云主机服务器上。

第4点,是系统架构,应用系统入DockerFile要求使用三层架构,业务逻辑在服务端云主机上运行,云数据库数据只允许云主机上服务层访问,客户端只作为应用可视化展现。

第5点,是API调用,所有API调用要求在DockerFile内发起调用,这也意味着京东业务的API的调用都要入驻DockerFile,在DockerFile内发起调用。

第6点,业务逻辑,

ERP系统:订单履约的业务逻辑必须在鼎内运行,如订单下载,合\拆单,审单,仓内发货处理等。

WMS系统:要求仓储处理业务逻辑必须在鼎内运行,退货单、盘点单、调拨单等逻辑及处理的数据回流进DockerFile内。

CRM系统:涉及到订单和会员的功能模板,业务逻辑处理必须在DockerFile内进行。

营销工具:所有营销功能发起的接口调用及业务逻辑必须在DockerFile内进行;其他类型的系统,其主要功能模块涉及到京东数据,业务逻辑必须在DockerFile内运行。

第7点,是数据存储,涉及京东订单和会员数据的业务履行处理的数据必须存储在云数据库中。

2.微服务架构安全技术配置是指什么呢?

  • 边界保护

第1点是,应用的云主机要求,1.所有涉及业务的应用必须使用DockerFile提供的云主机,但不允许DockerFile内部部署其他非业务的应用,包括但不限于企业类站点、学校类站点、论坛类站点、政府类站点以及娱乐类站点等。

2.每台云主机只能指定到唯一的安全组且该云主机所属的安全组不能更改;

3.对于在同一个安全组内的云主机,期网络是可互通的,但对安全组外的云主机网络是不互通的;

第2点是,应用的安全隔离,如果同一个开发者有多个应用,开发者应为不同的应用使用不同的Appkey,不同的应用需要独立部署在DockerFile内不同的云主机中,确保应用质检是被安全隔离的。

  • 攻击检测及防御

第1点是,主机扫描,定期对云主机进行漏洞扫描,并根据扫描报告进行漏洞修复。

第2点是,主机安全,安全管理员应进入云安全控制台,开启主机安全具备如下功能:弱口令检测, 异常登录,暴力破解

数据保护:

  • 数据权限

1. 禁止应用从DockerFile外部的服务器上发起JOSAPI的数据请求;

2. 禁止停用通过其他的DockerFile服务器发起JOSAPI的数据请求;

  • 数据存储

应用中的数据应存储在DockerFile内,涉及订单数据,应使用运输局库进行数据存储

  • 数据传输

1. 应用中涉及敏感数据(比如订单数据)的传输必须进行加密传输,实现系统管理数据、鉴别信息和重要业务数据的传输保密性;

2. 加密算法应使用AES-128位或以上强度。

  • 数据使用

数据处理:应用在对其敏感数据(比如订单数据等)进行后台的处理或计算时,其相关功能的组件和模块应部署在DockerFile内部的系统里。

数据展示:应用应对涉及敏感数据(比如电话号码、邮箱、京东PIN、昵称、地址等)的展示,进行脱敏处理(模糊化、匿名处理等)。

四、DockerFile云资源介绍

1.负载均衡

负载均衡可将大并发流量分发到多台云主机,调整资源利用情况,消除由于单台云主机故障对系统的影响,提高系统可用性、扩展系统服务能力。

2.云主机

云主机是云提供的一种管理便捷、安全可靠的云计算服务单元。您无需为硬件的购买和维护投入精力,可随时创建和释放多台云主机,快速部署应用,并且可根据业务需要扩展计算能力,按需付费,节约成本,帮助您更高效稳定的开展业务。

3.云数据库

云数据库MySQL是云基于全球广受欢迎的MySQL数据库提供的稳定可靠的云数据库服务。相比传统数据库,云数据库MySQL易于部署、管理和扩展,默认支持主从热备架构,提供数据备份、故障恢复、监控等全套解决方案,彻底解决数据库运维的烦恼。

4.云缓存

缓存Redis是云提供的基于Redis协议的在线缓存服务,支持主从版、集群版的多种规格供用户选择。可满足多种业务场景对可用性、可靠性和高读写性能的要求,支持双机热备,提供自动容灾切换、实例监控等服务,以降低业务风险,确保业务的连续性。

代码如下(示例):

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context该处使用的url网络请求的数据。

总结

本文主要是学习总结一下容器的一些事项,这里不是实操的介绍,是基本流程和各个注意事项的介绍,接下来,如果有开发入驻DockerFile了,我在具体介绍实操的经验,关注我,看后续!

本文含有隐藏内容,请 开通VIP 后查看