华为云用户手册

  • 标签命名规则 每个标签由一对键值对(Key-Value)组成。 每个私有CA或私有证书最多可以添加20个标签。 对于每个资源,每个标签键(Key)都必须是唯一的,每个标签键(Key)只能有一个值(Value)。 标签共由两部分组成:“标签键”和“标签值”,其中,“标签键”和“标签值”的命名规则如表 标签参数说明所示。 如您的组织已经设定云证书管理服务的相关标签策略,则需按照标签策略规则为私有CA或私有证书添加标签。标签如果不符合标签策略的规则,则可能会导致标签添加失败,请联系组织管理员了解标签策略详情。 表1 标签参数说明 参数 规则 样例 标签键 必填。 对于同一个私有CA或私有证书,标签键唯一。 长度不超过128个字符。 首尾不能包含空格。 不能以_sys_开头。 可以包含以下字符: 中文 英文 数字 空格 特殊字符 “_”、“.”、“:”、“/”、“=”、“+”、 cost 标签值 可以为空。 长度不超过255个字符。 首尾不能包含空格。 可以包含以下字符: 中文 英文 数字 空格 特殊字符 “_”、“.”、“:”、“/”、“=”、“+”、“-”、“@” 100
  • 标签策略简介 标签策略是策略的一种类型,可帮助您在组织账号中对资源添加的标签进行标准化管理。标签策略对未添加标签的资源或未在标签策略中定义的标签不会生效。 例如:标签策略规定为某资源添加的标签A,需要遵循标签策略中定义的大小写规则和标签值。如果标签A使用的大小写、标签值不符合标签策略,则资源将会被标记为不合规。 标签策略有如下两种应用方式: 1. 事后检查 —— 资源标签如果违反标签策略,则在资源在合规性结果中显示为不合规。 2. 事前拦截 —— 标签策略开启强制执行后,则会阻止在指定的资源类型上完成不合规的标记操作。
  • 标签命名规则 每个标签由一对键值对(Key-Value)组成。 每个SSL证书最多可以添加20个标签。 对于每个证书资源,每个标签键(Key)都必须是唯一的,每个标签键(Key)只能有一个值(Value)。 标签共由两部分组成:“标签键”和“标签值”,其中,“标签键”和“标签值”的命名规则如表 标签参数说明所示。 如您的组织已经设定云证书管理服务的相关标签策略,则需按照标签策略规则为SSL证书添加标签。标签如果不符合标签策略的规则,则可能会导致SSL证书标签添加失败,请联系组织管理员了解标签策略详情。 表1 标签参数说明 参数 规则 样例 标签键 必填。 对于同一个SSL证书,标签键唯一。 长度不超过128个字符。 首尾不能包含空格。 不能以_sys_开头。 可以包含以下字符: 中文 英文 数字 空格 特殊字符 “_”、“.”、“:”、“/”、“=”、“+”、 cost 标签值 可以为空。 长度不超过255个字符。 首尾不能包含空格。 可以包含以下字符: 中文 英文 数字 空格 特殊字符 “_”、“.”、“:”、“/”、“=”、“+”、“-”、“@” 100
  • 步骤三:修改配置文件 修改配置文件前,请将配置文件进行备份,并建议先在测试环境中进行部署,配置无误后,再在现网环境进行配置,避免出现配置错误导致服务不能正常启动等问题,影响您的业务。 配置/usr/local/nginx/conf目录下的“nginx.conf”文件。 找到如下配置内容,并取消注释 #server { # listen 443 ssl; # server_name localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} 修改如下参数,具体参数修改说明如表参数说明所示。 ssl_certificate cert/server.crt; ssl_certificate_key cert/server.key; 完整的配置如下,其余参数根据实际情况修改: server { listen 443 ssl; #配置HTTPS的默认访问端口为443。如果在此处未配置HTTPS的默认访问端口,可能会导致Nginx无法启动。 server_name test .com; #修改为您证书绑定的域名。 ssl_certificate /usr/local/nginx/conf/ cert/server.crt; #替换成您的签名证书文件的路径。 ssl_certificate_key /usr/local/nginx/conf/ cert/server.key; #替换成您的签名证书私钥文件的路径。 ssl_certificate /usr/local/nginx/conf/ cert/encrypt.crt; #替换成您的加密证书文件的路径。 ssl_certificate_key /usr/local/nginx/conf/ cert/encrypt.key; #替换成您的加密证书私钥文件的路径。 ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #加密套件。 ssl_prefer_server_ciphers on; location / { root html; #站点目录。 index index.html index.htm; #添加属性。 } } 不要直接复制所有配置,参数中“ssl”开头的属性与证书配置有直接关系,其它参数请根据自己的实际情况修改。 表1 参数说明 参数 参数说明 listen SSL访问端口号,设置为“443”。 配置HTTPS的默认访问端口为443。如果未配置HTTPS的默认访问端口,可能会导致Nginx无法启动。 server_name 证书绑定的域名。示例:www.domain.com ssl_certificate 证书文件“server.crt”。 设置为“server.crt”文件的路径,且路径中不能包含中文字符,例如“/usr/local/nginx/conf/cert/server.crt”。 ssl_certificate_key 私钥文件“server.key”。 设置为“server.key”的路径,且路径中不能包含中文字符,例如“/usr/local/nginx/conf/cert/server.key”。 修改完成后保存配置文件。
  • 效果验证 部署成功后,可在浏览器的地址栏中输入“https://域名”,按“Enter”。 如果浏览器地址栏显示安全锁标识,则说明证书安装成功。 如果网站仍然出现不安全提示,请参见为什么部署了SSL证书后,网站仍然出现不安全提示?。 如果通过域名访问网站时,无法打开网站,请参见为什么部署了SSL证书后,通过域名访问网站时,无法打开网站?进行处理。 如果仍未解决或出现其他问题,华为云市场提供SSL证书配置优化服务,专业工程师一对一服务,请直接单击一对一咨询进行购买,购买服务后,联系工程师进行处理。
  • 步骤一:环境配置 准备gmssl_openssl 下载页面https://www.gmssl.cn/gmssl/index.jsp中的openssl国密版 拷贝到/root/目录并解压 tar xzfm gmssl_openssl_1.1_b2024_x64_1.tar.gz -C /usr/local 则/usr/local/gmssl为国密版openssl目录 准备nginx 下载nginx-1.18.0 tar zxfm nginx-1.18.0.tar.gz cd httpd-2.4.46 vi auto/lib/openssl/conf 将全部$OPENSSL/.openssl/修改为$OPENSSL/并保存 ./configure \ --without-http_gzip_module \ --with-http_ssl_module \ --with-http_stub_status_module \ --with-http_v2_module \ --with-file-aio \ --with-openssl="/usr/local/gmssl" \ --with-cc-opt="-I/usr/local/gmssl/include" \ --with-ld-opt="-lm" 然后make install 则/usr/local/nginx为生成的国密版nginx目录 注:可能需要安装pcre-devel包。
  • 步骤二:获取文件 安装证书前,需要获取证书文件和密码文件,请根据申请证书时选择的“证书请求文件”生成方式来选择操作步骤: 如果申请证书时,“证书请求文件”选择“系统生成CSR”,具体操作请参见:系统生成CSR。 如果申请证书时,“证书请求文件”选择“自己生成CSR”,具体操作请参见:自己生成CSR。 具体操作如下: 系统生成CSR 在本地解压已下载的证书文件。 下载的文件包含了“Apache”、“Nginx” 2个文件夹和1个“domain.csr”文件,如图本地解压SSL证书所示。 图1 本地解压SSL证书 从“证书ID_证书绑定的域名_Nginx”文件夹内获得证书文件“证书ID_证书绑定的域名_server.crt”、私钥文件“证书ID_证书绑定的域名_server.key”、“证书ID_证书绑定的域名_encrypt.crt”和私钥文件“证书ID_证书绑定的域名_ encrypt.key”。 “证书ID_证书绑定的域名_server.crt”文件包括两段证书代码“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”,分别为服务器证书和中级CA。 “证书ID_证书绑定的域名_server.key”文件包括一段私钥代码“-----BEGIN EC PRIVATE KEY-----”和“-----END EC PRIVATE KEY-----”。 “证书ID_证书绑定的域名_ encrypt.crt”文件包括一段加密证书代码“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”。 “证书ID_证书绑定的域名_ encrypt.key”文件包括一段私钥代码“-----BEGIN EC PRIVATE KEY-----”和“-----END EC PRIVATE KEY-----”。 自己生成CSR 解压已下载的证书压缩包,获得“证书ID_证书绑定的域名_server.pem”文件。 “证书ID_证书绑定的域名_server.pem”文件包括两段证书代码“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”,分别为服务器证书和中级CA证书。 将“证书ID_证书绑定的域名_server.pem”的后缀名修改为“crt”,即“server.crt”。 将“证书ID_证书绑定的域名_encrypt.pem”的后缀名修改为“crt”,即“encrypt.crt”。 将“server.crt”,“encrypt.crt”,“encrypt.key”和生成CSR时的私钥“server.key”放在任意文件夹内。 在/usr/local/nginx/conf目录下创建“cert”目录,并且将“server.key”、“server.crt”、“encrypt.key”和“encrypt.crt”复制到“cert”目录下。
  • 步骤二:获取文件 安装证书前,需要获取证书文件和密码文件,请根据申请证书时选择的“证书请求文件”生成方式来选择操作步骤: 如果申请证书时,“证书请求文件”选择“系统生成CSR”,具体操作请参见:系统生成CSR。 如果申请证书时,“证书请求文件”选择“自己生成CSR”,具体操作请参见:自己生成CSR。 具体操作如下: 系统生成CSR 在本地解压已下载的证书文件。 下载的文件包含了“Apache”、“Nginx”、2个文件夹和1个“domain.csr”文件,如图本地解压SSL证书所示。 图1 本地解压SSL证书 从“证书ID_证书绑定的域名_Apache”文件夹内获得证书文件“证书ID_证书绑定的域名_ca.crt”,“证书ID_证书绑定的域名_server.crt”,私钥文件“证书ID_证书绑定的域名_server.key”,“证书ID_证书绑定的域名_encrypt.crt”和私钥文件“证书ID_证书绑定的域名_ encrypt.key”。 “证书ID_证书绑定的域名_ca.crt”文件包括一段中级CA证书代码“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”。 “证书ID_证书绑定的域名_server.crt”文件包括一段服务器证书代码“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”。 “证书ID_证书绑定的域名_server.key”文件包括一段私钥代码“-----BEGIN EC PRIVATE KEY-----”和“-----END EC PRIVATE KEY-----”。 “证书ID_证书绑定的域名_ encrypt.crt”文件包括一段加密证书代码“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”。 “证书ID_证书绑定的域名_ encrypt.key”文件包括一段私钥代码“-----BEGIN EC PRIVATE KEY-----”和“-----END EC PRIVATE KEY-----”。 自己生成CSR 解压已下载的证书压缩包,获得“证书ID_证书绑定的域名_server.pem”文件。 “证书ID_证书绑定的域名_server.pem”文件包括两段证书代码“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”,分别为服务器证书和中级CA证书。 复制“证书ID_证书绑定的域名_server.pem”文件的第一段证书代码(服务器证书),并另存为“server.crt”文件。 复制“证书ID_证书绑定的域名_server.pem”文件的第二段证书代码(中级CA),并另存为“ca.crt”文件。 复制“证书ID_证书绑定的域名_encrypt.pem”文件的证书代码(加密证书),并另存为“encrypt.crt”文件。 将“ca.crt”、“server.crt”、“encrypt.crt”、“encrypt.key”和生成CSR时的私钥“server.key”放在任意文件夹内。 在/usr/local/httpd/conf目录下创建“cert”目录,并且将“server.key”、“server.crt”、“ca.crt”、“encrypt.key”和encrypt.crt”复制到“cert”目录下。
  • 步骤三:修改配置文件 修改配置文件前,请将配置文件进行备份,并建议先在测试环境中进行部署,配置无误后,再在现网环境进行配置,避免出现配置错误导致服务不能正常启动等问题,影响您的业务。 打开Apache安装目录下“httpd.conf”文件 vi /usr/local/httpd/conf/httpd.conf 找到以下两行配置,取消注释 #LoadModule ssl_module modules/mod_ssl.so #Include conf/extra/httpd-ssl.conf 打开“httpd-ssl.conf”文件 vi /usr/local/httpd/conf/extra/httpd-ssl.conf 注释掉所有带SSLSessionCache的配置行 配置算法SSLCipherSuite HIGH:ECC-SM4-SM3:ECDHE-SM4-SM3 注释掉默认证书和key #SSLCertificateFile "/usr/local/httpd/conf/server.crt" #SSLCertificateKeyFile "/usr/local/httpd/conf/server.key" 配置国密双证书/私钥 SSLCertificateChainFile "/usr/local/httpd/conf/cert/scsxxxxxx_test.com_ca.crt" SSLCertificateFile "/usr/local/httpd/conf/cert/scsxxxxxx_test.com_server.crt" SSLCertificateKeyFile "/usr/local/httpd/conf/cert/ scsxxxxxx _test.com_server.key" SSLCertificateFile "/usr/local/httpd/conf/cert/ scsxxxxxx _test.com_encrypt.crt" SSLCertificateKeyFile "/usr/local/httpd/conf/cert/ scsxxxxxx _test.com_encrypt.key" 以上配置仅供参考,证书文件名,证书所在目录等配置请以您的实际情况为准。 验证配置文件 /usr/local/httpd/bin/httpd -t 当回显信息如下所示时,则表示配置正确: Syntax OK
  • 效果验证 部署成功后,可在浏览器的地址栏中输入“https://域名”,按“Enter”。 如果浏览器地址栏显示安全锁标识,则说明证书安装成功。 如果网站仍然出现不安全提示,请参见为什么部署了SSL证书后,网站仍然出现不安全提示?。 如果通过域名访问网站时,无法打开网站,请参见为什么部署了SSL证书后,通过域名访问网站时,无法打开网站?进行处理。 如果仍未解决或出现其他问题,华为云市场提供SSL证书配置优化服务,专业工程师一对一服务,请直接单击一对一咨询进行购买,购买服务后,联系工程师进行处理。
  • 步骤一: 环境配置 准备gmssl_openssl 下载页面https://www.gmssl.cn/gmssl/index.jsp中的openssl国密版 拷贝到/root/目录并解压 tar xzfm gmssl_openssl_1.1_b2024_x64_1.tar.gz -C /usr/local 则/usr/local/gmssl为国密版openssl目录 准备Apache httpd 安装必要开发包:pcre-devel,expat-devel,apr,apr-util,bison,bison-devel,flex,flex-devel 下载Apache httpd 2.4.46 tar zxfm httpd-2.4.46.tar.gz cd httpd-2.4.46 ./configure --prefix=/usr/local/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork --with-zlib --with-apr=/usr/local/apr/apr --with-apr-util=/usr/local/apr/util --with-ssl=/usr/local/gmssl LDFLAGS=-lm vi build/config_vars.mk 找到ab_LIBS = -L/usr/local/gmssl/lib -lssl -lcrypto -lrt -lcrypt -lpthread -ldl 将-L/usr/local/gmssl/lib -lssl -lcrypto替换为/usr/local/gmssl/lib/libssl.a /usr/local/gmssl/lib/libcrypto.a 然后make install 则/usr/local/httpd为生成的国密版Apache httpd目录
  • 下载的证书文件说明 下载文件说明:根据申请证书时,选择的“证书请求文件”方式的不同,下载文件也有所不同。 申请证书时,如果“证书请求文件”选择的是“系统生成CSR”,则下载文件说明如下: 下载的文件包含了“Apache”、“Nginx”、2个文件夹和1个“domain.csr”文件,如图解压SSL证书所示,具体文件说明如表下载文件说明所示。 图2 解压SSL证书 表1 下载文件说明 文件夹/文件名称 文件夹内容 Nginx server.crt:签名证书文件,包含两段证书代码,分别为服务器证书和CA中间证书。 server.key:签名证书私钥文件,包含一段签名证书私钥代码。 encrypt.crt:加密证书文件,包含一段加密证书代码。 encrypt.key:加密证书私钥文件,包含一段加密证书私钥代码。 Apache ca.crt:证书链文件,包含一段中级CA代码。 server.crt:签名证书文件,包含一段服务器证书代码。 server.key:签名证书私钥文件,包含一段证书私钥代码。 encrypt.crt:加密证书文件,包含一段加密证书代码。 encrypt.key:加密证书私钥文件,包含一段加密证书私钥代码。 domain.csr 证书请求文件。 申请证书时,如果“证书请求文件”选择的是“自己生成CSR”,则下载文件说明如下: 下载的证书下载的证书包含了 “server.pem”、“encrypt.pem”、“encrypt.key.pem”文件。“server.pem”文件中已经包含两段签名证书代码,分别是服务器证书和CA中间证书。 签名证书私钥为用户自行保存的,华为云SSL证书管理不提供。在各个服务器上安装证书时,需要填写对应私钥的位置。
  • 约束条件 仅支持在证书有效期内,不限次数的下载证书,下载后即可在服务器(华为云的或非华为云的均可)上进行部署。 “证书请求文件”选择的是“系统生成CSR”,下载的文件包含了“Apache”、 “Nginx”、2个文件夹和1个“domain.csr”文件。 “证书请求文件”选择的是“自己生成CSR”,下载的证书包含了 “server.pem”、“encrypt.pem”、“encrypt.key.pem”文件。“server.pem”文件中已经包含两段签名证书代码,分别是服务器证书和CA中间证书。签名证书私钥为用户自行保存的,华为云SSL证书管理不提供。
  • 调优手段之统计信息 GaussDB(DWS)优化器是典型的基于代价的优化 (Cost-Based Optimization,简称CBO)。在这种优化器模型下,数据库根据表的元组数、字段宽度、NULL记录比率、distinct值、MCV值、HB值等表的特征值,以及一定的代价计算模型,计算出每一个执行步骤的不同执行方式的输出元组数和执行代价(cost),进而选出整体执行代价最小/首元组返回代价最小的执行方式进行执行。这些特征值就是统计信息。从上面描述可以看出统计信息是查询优化的核心输入,准确的统计信息将帮助优化器选择最合适的查询规划,一般来说通过ANALYZE语法收集整个表或者表的若干个字段的统计信息,周期性地运行ANALYZE,或者在对表的大部分内容做了更改之后马上运行它是个好习惯。
  • 调优手段之GUC参数 查询优化的主要目的是为查询语句选择高效的执行方式。 如下SQL语句: 1 2 SELECT count(1) FROM customer inner join store_sales on (ss_customer_sk = c_customer_sk); 在执行customer inner join store_sales的时候,GaussDB(DWS)支持Nested Loop、Merge Join和Hash Join三种不同的Join方式。优化器会根据表customer和表store_sales的统计信息估算结果集的大小以及每种join方式的执行代价,然后对比选出执行代价最小的执行计划。 正如前面所说,执行代价计算都是基于一定的模型和统计信息进行估算,当因为某些原因代价估算不能反映真实的cost的时候,就需要通过guc参数设置的方式让执行计划倾向更优规划。
  • 为MRS集群配置委托 配置存算分离支持在新建集群中配置委托实现,也可以通过为已有集群绑定委托实现。本示例以为已有集群配置委托为例介绍。 登录MRS控制台,在导航栏选择“现有集群”。 单击集群名称,进入集群详情页面。 在集群详情页的“概览”页签,单击“IAM用户同步”右侧的“单击同步”进行IAM用户同步。 在集群详情页的“概览”页签,单击“委托”右侧的“管理委托”选择创建ECS委托的委托并单击“确定”进行绑定,或单击“新建委托”进入IAM控制台进行创建后再在此处进行绑定。 图3 绑定委托
  • Hive访问OBS文件系统 用root用户登录集群Master节点,具体请参见登录集群节点。 验证Hive访问OBS。 用root用户登录集群Master节点,执行如下命令: cd /opt/Bigdata/client source bigdata_env source Hive/component_env 查看文件系统mrs-demo01下面的文件列表。 hadoop fs -ls obs://mrs-demo01/ 返回文件列表即表示访问OBS成功。 图5 查看mrs-demo01下的文件列表 执行以下命令进行用户认证(普通模式即未开启Kerberos认证无需执行此步骤)。 kinit hive 输入用户hive密码,默认密码为Hive@123,第一次使用需要修改密码。 执行Hive组件的客户端命令。 beeline 在beeline中直接使用OBS的目录进行访问。例如,执行如下命令创建Hive表并指定数据存储在mrs-demo01文件系统的test_demo01目录中。 create table test_demo01(name string) location "obs://mrs-demo01/test_demo01"; 执行如下命令查询所有表,返回结果中存在表test_demo01,即表示访问OBS成功。 show tables; 图6 查看是否存在表test_demo01 查看表的Location。 show create table test_demo01; 查看表的Location是否为“obs://OBS桶名/”开头。 图7 查看表test_demo01的Location 写入数据。 insert into test_demo01 values('mm'),('ww'),('ww'); 执行select * from test_demo01;查询是否写入成功。 图8 查看表test_demo01中的数据 执行命令!q退出beeline客户端。 重新登录OBS控制台。 单击“并行文件系统”, 选择创建的文件系统名称。 单击“文件”,查看是否存在创建的数据。 图9 查看数据
  • 8.3.0.101 表2 8.3.0.101新增功能/解决问题列表 类别 功能或问题描述 问题原因 问题出现版本 修复建议 新增功能 vacuum full适配binlog表。 - - - 解决问题 使用\parallel on 高并发下创建job报错duplicate key value violates unique constraint "pg_jobs_id_index" ,Key(job_id)=() already exists。 获取job_id处的锁未成功加上,导致并发时取到相同job_id报错。 8.3.0.100 升级到8.3.0.101及以上版本 多个nodegroup场景下,重分布不支持跳过指定表,导致缩容失败。 重分布不支持跳过指定表。 8.3.0.100 执行Hstore用例,网卡故障时,因为内存为超大负数,导致用例执行失败。 临时变量声明后,未赋值导致参数值非预期,后续再去扣减内存,内存出现超大负数。 8.3.0.100
  • 在Maven私有依赖库的版本视图中查看归档的组件 进入目标私有依赖库,找到通过构建任务上传的Maven私有组件。 参考上述步骤,在代码仓库中设置组件版本,可将多个版本组件归档至私有依赖库。 单击“版本视图”。 在包列表中,可以查看从编译构建中获取软件包的版本数和最新版本。 单击“包名”,页面将显示该软件包最新版本的概览信息。 选择“文件列表”页签,在列表中可以单击目标组件操作列中的,可将组件下载到本地。 用户在本地对组件修改并设置新的版本号后,在目标私有依赖库中,单击“上传组件”,可将最新版本的组件上传至私有依赖库。 版本视图中的包列表显示对应组件最新上传的版本并统计版本归档过的数量。
  • 通过编译构建发布Maven私有组件到私有依赖库 在代码仓库完成设置组件版本后,单击页面右上角“设置构建”,页面跳转至“新建编译构建任务”页面。 在页面中选择“空白构建模板”,单击“下一步”。 单击“点击添加构建步骤”。搜索并添加步骤“Maven构建”。 编辑步骤“Maven构建”。 工具版本按照实际选择,本文中选择“maven3.5.3-jdk8-open”。 找到以下命令行,删除命令行前的#。 #mvn deploy -Dmaven.test.skip=true -U -e -X -B 找到以下命令行,在命令行前添加#。 mvn package -Dmaven.test.skip=true -U -e -X -B 在“发布依赖包到CodeArts私有依赖库”一栏勾选“配置所有pom”,并在下拉列表中选择与已项目关联的Maven私有依赖库。 单击“新建并执行”,启动构建任务执行。
  • 背景介绍 相对于开发过程中的“源代码”,制品仓库服务关注和管理开发产生的待部署的软件包。软件包通常是由源码编译构建或打包而成,其中涉及生命周期的元数据(如名称、大小等基本属性、代码库地址、代码分支信息、构建任务、构建者、构建时间)。在开发过程中,软件包会根据不同版本不断生成改进。 软件包及其属性的管理是发布过程管理的基础,也是软件开发过程中的重要资产,而能够及时查看软件包的版本记录也成为开发者面临的诉求。
  • 应用场景3:运营分析 企业在日常经营中,可以上报各种业务日志(例如移动端日志、服务端日志),经过规整、过滤、脱敏、富化等加工处理后,可以融合大数据平台、BI工具进行业务分析,例如获取页面的PV、UV、用户停留时间、交易金额等,用于了解业务运营状况、分析用户行为特征,基于实时的数据分析反馈调整业务决策,提升用户体验,提升经营效率,实现企业的数字化转型。 在业务分析过程中经常遇到如下痛点: 移动端数据难采集:难以快速采集多种移动端设备,例如Web浏览器、IOS、安卓、百度小程序、微信小程序、钉钉小程序、快应用等多类端侧日志无法快速采集。 数据传输不可靠:移动端日志数据量多且频繁,传输速度慢,也极易出现丢失,对业务分析造成一定影响。 数据处理不方便:原始数据不方便处理,不方便快速与大数据平台实现对接。 云日志服务LTS支持采集多种移动端日志,融合大数据完成业务运营分析,基于LTS可以实现: 端侧日志全面采集接入:集成LTS提供的多种移动端SDK,实现了缓存发送、异常重试、批量发送等稳定功能,用户快速集成即可全面采集移动端日志到LTS。 秒级上报,高可靠:端侧采集日志后,经传输链路秒级完成上报,数据无丢失,支撑业务做完整性分析。 DLI和DWS快速对接LTS:DLI-Flink简易集成Connector,定点从LTS实时消费日志;LTS日志可快速配置转储到OBS,供DLI快速从OBS读取日志;LTS支持直接将结构化日志转储到DWS。 LTS提供解决方案参考如下图3,可以对日志结构化解析,基于SQL语法分析日志,生成可视化图表,并结合大数据平台帮助企业进一步挖掘数据价值,助力企业数字化转型。 图3 运营分析解决方案
  • 应用场景1:应用运维 企业在日常业务运维、审计或等保时,需要收集各种类型的日志,常遇到如下痛点: 企业部门多且日志繁杂,日志量大。 云服务资源种类数量多,不熟悉监控指标和运维日志,运维难度大。 安全合规要求高,等保合规要求日志长期存储,人力不足,维护成本高。 基于云日志服务LTS可以实现: 提供全场景日志接入,全面覆盖业务、应用、中间件和基础设施,实现快速收集日志。 支持秒级日志查询和分钟级日志监控,通过配置告警规则和告警通知,实现分钟级问题定位和分析。 支持将日志转储至OBS实现长期保存,满足网络安全要求。 LTS提供解决方案参考如下图1,可以实现统一收集生产环境应用日志,开发人员检索分析日志,运维人员基于日志配置告警,实时感知现网业务,及时发现并解决故障问题。 图1 应用运维解决方案
  • 应用场景2:安全合规 大型企业的每个业务部门都有独立的云账户实现资源隔离,每个业务部门的运维人员需要依赖日志监控告警实现故障定位分析,同时集团安全部门需要统一监控日志,因此多账号的统一日志管理成为企业痛点: 分业务独立运维:客户每个业务模块都有一个独立的账号做资源隔离,依赖日志服务配置监控告警,快速分析发现故障并定位根因。 安全部门统一监控日志:客户使用多账号管理体系,每个业务部门有一个独立的账号,安全部门需要汇聚所有日志到一个账号,并存储180天以上来满足法规要求。 基于云日志服务LTS可以实现: 多账号独立管理:每个账号独立采集各自业务的应用日志、云服务日志,资源互相隔离、权限划分清晰;借助日志告警配置,90%问题定位控制在10分钟。 日志数据跨账号集中汇聚:使用LTS的多账号日志汇聚功能,将各个子账号的日志复制一份到统一监控账号,长期存储180天,便于安全部门集中审计,满足网络安全法规要求。 LTS提供解决方案参考如下图2,可以实现统一收集云服务、应用程序日志,支持保存180天以上,满足《网络安全法》、《GDPR》等法律法规要求。 图2 安全合规解决方案
  • 订阅 选择对应设置的发布,单击右键选择“新建订阅”。 图17 新建订阅 创建订阅的发布,单击“下一步”。 图18 创建发布 选择推送订阅,单击“下一步”。 图19 分发代理位置 选择“添加订阅服务器”,支持SQL Server引擎和非SQL Server作为订阅服务器,将创建并根据上述步骤配置的华为云实例作为一个订阅服务器。 图20 添加订阅服务器 选择一个数据库作为订阅对象。 图21 选择订阅数据库 配置与订阅服务器的连接。 图22 配置连接 使用一个长期有效的数据库帐号,保障订阅长期有效,这里的帐号设置可以为登录华为云实例的数据库帐号,单击“确定”。 图23 连接分发服务器 创建订阅成功。 图24 创建订阅 将鼠标移动到发布配置上可以看到对应的订阅信息。 图25 查看订阅
  • 发布 创建发布。 展开服务器下的“复制”节点,右键单击“本地发布”,选择“新建发布”。 图10 新建发布数据库 选择事务发布。 选择以表作为发布对象。 图11 发布表 添加筛选对象,进行个性化的发布。 图12 添加筛选对象 事务发布会先创建一个快照以复制表当前的状态。也可以设置快照代理用以执行计划。 图13 快照代理 设置代理安全性,这里需要设置登录帐号为本地sa帐号。 图14 设置代理安全性 设置发布名称,单击“完成”。 图15 完成 创建完成后可以通过复制监视器来查看是否创建发布成功。 图16 启动复制监视器
  • 新的数据字典信息 在执行instant add column的过程中,MySQL会将第一次intant add column之前的字段个数以及每次加的列的默认值保存在tables系统表的“se_private_data”字段中。 dd::Table::se_private_data::instant_col:第一次instant add column之前表上的列的个数。 dd::Column::se_private_data::default_null:标识instant column的默认值是否为NULL。 dd::Column::se_private_data::default:当instant column的默认值不是NULL时存储具体的默认值,column default value需要从InnoDB类型byte转换成“se_private_data”中的char类型。
  • 背景 通常情况下大表的DDL操作都会对业务产生很大的影响,需要在业务低峰期做。MySQL 5.7支持原生DDL工具Copy和Inplace算法、以及开源DDL工具gh-ost,减少了DDL期间DML操作被阻塞的情况。但是大表DDL仍然需要花费很长时间。 instant秒级加列算法,让添加列的时候不在需要rebuild整个表,只需要在表的metadata中记录新增列的基本信息即可,可以很快执行完成。但是目前支持的DDL操作有限。
  • 使用限制 使用场景的限制: 部分场景下增加、删除、重命名(MySQL 8.0.28之后)列。 设置或删除列的默认值。 修改ENUM或SET列的定义。 更改索引的类型(BTREE | HASH)。 增加或删除虚拟列。 表名重命名。 添加或删除列的限制: 不支持有其他INSTANT语句在同一行的操作在同一条语句的情况。 新增列将会放到最后,不支持改变列的顺序(MySQL 8.0.29后支持任意位置加列)。 不支持在行格式为COMPRESSED的表上快速加列或删除。 不支持在已经有全文索引的表上快速加列或删除。 不支持在临时表上快速加列或删除。 重命名列的限制: 不支持重命名被其他表引用的列。 不支持重命名列的操作与生成或者删除虚拟列在同一个语句中。 修改ENUM或SET列的限制: 不支持ENUM或者SET列数据类型占用的存储空间发生变化。 增加或删除虚拟列的限制: 不支持对分区表的增加或删除操作。
  • 载入数据字典 MySQL从系统表读取表定义时,会将instant column相关的信息载入到InnoDB的表对象“dict_table_t”和索引对象“dict_index_t”中。 dict_table_t::n_instant_cols:第一次instant add column之前的非虚拟字段个数(包含系统列)。 dict_index_t::instant_cols:用于标示是否存在Instant column。 dict_index_t::n_instant_nullable:第一次instant add column之前的可为NULL的字段个数。 dict_col_t::instant_default:存储instant列默认值及其长度。
共100000条