华为云用户手册

  • 权限设计 公司不同的职能团队针对U CS 资源的操作范围如下图所示: 图2 UCS资源操作全景 :由Tenant Administrator角色的管理员为各个职能团队授权。 、、、、、、:拥有UCS FullAccess权限的行管团队负责创建容器舰队、注册集群、将集群加入容器舰队,以及开通集群联邦能力,搭建多集群联邦基础设施。同时,行管团队可以根据用户/用户组,以及不同的命名空间为集群/容器舰队添加权限,使不同的用户对具体的Kubernetes资源拥有相应的操作权限。 、:拥有UCS CommonOperations权限的开发团队执行创建工作负载、流量分发等操作。 :拥有UCS CIAOperations权限的运维团队执行监控运维等操作。 :拥有UCS ReadOnlyAccess权限的访客进行集群、容器舰队、工作负载等资源的查看操作。
  • 创建无状态负载 登录UCS控制台,在左侧导航栏中选择“容器舰队”。 在“容器舰队”页签下找到已开通集群联邦的舰队,单击名称进入详情页。 在左侧导航栏中选择“工作负载”,在“无状态负载”页签中单击右上角“镜像创建”。 若使用已有的YAML创建工作负载,请单击右上角“YAML创建”。 设置工作负载基本信息。 负载类型:选择“无状态负载”。 负载名称:新增工作负载的名称,命名必须唯一。 命名空间:选择工作负载所在命名空间。如需新建命名空间,请参见创建命名空间。 描述:工作负载的描述信息。 实例数量:设置多集群的工作负载中各集群的实例数。用户可以设置具体实例个数,默认为2。每个工作负载实例都由相同的容器部署而成。在UCS中可以通过设置弹性扩缩容策略,根据工作负载资源使用情况,动态调整工作负载实例数。 设置工作负载容器配置。 Pod中可以配置多个容器,您可以单击右侧“添加容器”为Pod配置多个容器并分别进行设置。 图1 容器配置 基本信息: 表1 基本信息参数说明 参数 说明 容器名称 为容器命名。 镜像名称 单击后方“选择镜像”,选择容器使用的镜像。 我的镜像:当前区域下华为云镜像仓库中的镜像。若无可用的镜像,可单击“上传镜像”进行上传。 镜像中心:开源镜像仓库中的官方镜像。 共享镜像:由他人账号共享的私有镜像。 镜像版本 选择需要部署的镜像版本。 更新策略 镜像更新/拉取策略。勾选“总是拉取镜像”表示每次都从镜像仓库拉取镜像;如不勾选则优先使用节点已有的镜像,如果没有这个镜像再从镜像仓库拉取。 CPU配额 申请:容器需要使用的最小CPU值,默认0.25Core。 限制:允许容器使用的CPU最大值。建议设容器配额的最高限额,避免容器资源超额导致系统故障。 内存配额 申请:容器需要使用的内存最小值,默认512MiB。 限制:允许容器使用的内存最大值。如果超过,容器会被终止。 关于CPU/内存配额申请和限制的具体说明请参见设置容器规格。 初始化容器 选择容器是否作为初始化容器。 Init 容器是一种特殊容器,在 Pod 内的应用容器启动之前运行。详细说明请参见Init 容器。 生命周期:设置生命周期回调函数可在容器的特定阶段执行调用,比如容器在停止前希望执行某项操作,就可以设置相应的函数。目前提供的生命周期回调函数有启动命令、启动后处理、停止前处理,详情请参见设置容器生命周期。 健康检查:设置健康检查可以在容器运行过程中定时检查容器的健康状况,详情请参见设置容器健康检查。 环境变量:容器运行环境中设定的一个变量,通过环境变量设置的配置项不会随着Pod生命周期结束而变化,详情请参见设置环境变量。 数据存储:配置容器存储,可以使用本地存储和存储卷声明(PVC)。建议使用PVC将工作负载Pod数据存储在 云存储 上。若存储在本地磁盘上,节点异常无法恢复时,本地磁盘中的数据也将无法恢复。容器存储相关内容请参见容器存储。 安全设置:对容器权限进行设置,保护系统和其他容器不受其影响。请输入用户ID,容器将以当前用户权限运行。 镜像访问凭证:用于访问镜像仓库的凭证。该凭证仅访问私有镜像仓库时使用,如所选镜像为公开镜像,则无需选择密钥。密钥的创建方法请参见创建密钥。 (可选)单击服务配置栏的,进行工作负载服务配置。 若工作负载需要和其它服务互访,或需要被公网访问,您需要添加服务(Service),设置访问方式。工作负载访问的方式决定了这个工作负载的网络属性,不同访问方式的工作负载可以提供不同网络能力,操作详情请参见服务与路由。 您也可以在创建完工作负载之后再创建Service,参见集群内访问(ClusterIP)和节点访问(NodePort)。 Service名称:新增服务名称,用户可自定义,服务名称必须唯一。 访问类型: 集群内访问(ClusterIP):只能集群内访问服务。 节点访问(NodePort):可以通过集群内任意节点访问到服务。 服务亲和(仅节点访问设置): 集群级别:集群下所有节点的IP+访问端口均可以访问到此服务关联的负载,服务访问会因路由跳转导致一定性能损失,且无法获取到客户端源IP。 节点级别:只有通过负载所在节点的IP+访问端口才可以访问此服务关联的负载,服务访问没有因路由跳转导致的性能损失,且可以获取到客户端源IP。 端口配置: 协议:TCP或UDP,请根据业务的协议类型选择。 服务端口:容器端口映射到集群虚拟IP上的端口,用虚拟IP访问应用时使用,端口范围为1-65535,可任意指定。 容器端口:容器镜像中应用程序实际监听的端口,需用户确定。例如:nginx程序实际监听的端口为80。 节点端口(仅节点访问设置):容器端口映射到节点私有IP上的端口,用私有IP访问应用时使用,端口范围为30000-32767,建议选择“自动生成”。 自动生成:系统会自动分配端口号。 指定端口:指定固定的节点端口,默认取值范围为30000-32767。若指定端口时,请确保同个集群内的端口唯一性。 (可选)单击“展开高级配置”,设置工作负载高级配置。 升级策略:指定无状态负载的升级方式,包括整体替换升级和逐步滚动升级,详细参数说明请参见配置工作负载升级策略。 滚动升级:滚动升级将逐步用新版本的实例替换旧版本的实例,升级的过程中,业务流量会同时负载均衡分布到新的和旧的实例上,因此业务不会中断。 替换升级:先删除旧实例,再创建新实例。升级过程中业务会中断。 调度策略:您可设置亲和(affinity)与反亲和(anti-affinity)实现Pod的计划性调度,详细信息请参见配置调度策略(亲和与反亲和)。 标签与注解:您可以单击“添加”为Pod增加标签或注解,新增标签或注解的键不能与已有的重复。 容忍策略:当工作负载实例所在的节点不可用时,系统将实例重新调度到其它可用节点的时间窗,默认为300秒。 单击“下一步:调度与差异化”,对选择的集群进行调度与差异化配置。在选择可调度集群后,可对容器进行“差异化配置”。 集群调度策略: 调度方式: 集群权重:手动设置各集群的权重,工作负载在各集群的实例数将根据设置的权重比例进行分配。 自动均衡:工作负载将根据资源余量在可调度的集群中自动选择集群进行部署。 部署集群:选择工作负载可调度的集群,集群个数请您根据自身业务进行确定。 “集群权重”模式下,需手动设置各集群权重值,权重非0的集群将自动勾选为可调度集群,权重为0则表示该集群不可调度。状态非正常的集群无法设置权重。 “自动均衡”模式下,单击集群即可将其勾选为可调度集群。 差异化配置: 工作负载在不同的集群中部署可进行差异化的配置。在选择可调度集群后单击对应集群右上角,即可对每个集群进行差异化配置,差异化后的容器配置只对该集群生效。 具体参数说明请参见容器配置。 设置完成后,单击“创建工作负载”,完成创建后,可单击“返回工作负载列表”查看所创建的工作负载。
  • 使用本地集群KubeConfig文件 拿到ucs-ctl生成的KubeConfig之后,还需要使KubeConfig在节点上生效,步骤如下: 复制KubeConfig到节点上。 scp /local/path/to/kubeconfig user@remote:/remote/path/to/kubeconfig 如果当前节点添加过EnableSecretEncrypt环境变量,需要先取消。 unset EnableSecretEncrypt 使KubeConfig生效,可选方法: 方法一:复制到默认位置。 mv /remote/path/to/kubeconfig $HOME/.kube/config 方法二:环境变量指定。 export KUBECONFIG=/remote/path/to/kubeconfig 方法三:命令行参数指定。 kubectl --kubeconfig=/remote/path/to/kubeconfig 上述操作之后,就可以访问本地集群的API server了。关于KubeConfig更详细的用法可参考:使用kubeconfig文件组织集群访问Kubernetes。
  • 更新本地集群证书文件 为应对本地集群证书信息泄露或过期情况,或进行例行的安全维护,可以使用ucs-ctl对本地集群的证书文件进行更新。 更新证书可以选择tls或者ca类型。 ./ucs-ctl kcm update-cert {cluster_name} --mode tls 若需要再次更新,需先删除证书目录的文件,然后进行更新,否则将会报错:error: "update cert recordFile[\"var/paas/ucs/{cluster_name}/cert_update/status.json\"] already exists, please use the option \"-- retry or -r\"to retry it". rm -rf /var/paas/ucs/{cluster_name}/cert_update
  • 获取本地集群KubeConfig文件 KubeConfig是Kubernetes集群中组织有关集群、用户、命名空间和身份认证机制信息的配置文件,Kubectl使用KubeConfig来获取集群的信息并与API server进行通信。 获取本地集群的KubeConfig需要使用ucs-ctl工具,获取步骤如下: 使用ucs-ctl获取集群名称。 ./ucs-ctl get cluster 使用ucs-ctl导出指定集群的KubeConfig。 ./ucs-ctl get kubeconfig -c test-redhat86 -o kubeconfig 可以使用ucs-ctl get kubeconfig -h查看获取KubeConfig所使用到的参数。 -c, --cluster string:指定待导出KubeConfig的集群名。 -e, --eip string:指定API server的eip。 -o, --output string:指定KubeConfig导出文件名。 -p, --secretPath string:指定待导出KubeConfig的加密物料路径。
  • 存储迁移 若您的集群使用了云硬盘,跨云迁移可以使用华为云数据快递服务 DES。DES服务是一种海量数据传输解决方案,支持TB到几百TB级数据上云,通过Teleport设备或硬盘(外置USB接口、SATA接口、SAS接口)向华为云传输大量数据,致力于解决海量数据传输网络成本高、传输时间长等难题。 若您的集群使用了对象存储,跨云迁移可以使用华为云 对象存储迁移 服务 OMS 。OMS服务是一种线上数据迁移服务,帮助您将其他云服务商对象存储中的数据在线迁移至华为云的 对象存储服务 OBS中。 若您的集群使用了文件存储,跨云迁移可以使用华为云弹性文件服务 SFS,具体请参见数据迁移。
  • image-migrator使用方法 image-migrator工具支持在Linux(x86、arm)和Windows环境中运行,使用方法相似。本文将以Linux(x86)环境为例进行介绍。 若使用Linux(arm)或Windows环境,请将下述命令中的image-migrator-linux-amd64分别替换为image-migrator-linux-arm64或image-migrator-windows-amd64.exe。 在image-migrator工具所在目录下执行./image-migrator-linux-amd64 -h,可以查看image-migrator工具的使用方法。 --auth:指定auth.json的路径,默认在image-migrator所在目录下。 --images:指定images.json的路径,默认在image-migrator所在目录下。 --log:指定image-migrator生成日志的路径,默认是image-migrator当前目录下的image-migrator.log。 --namespace:默认的目标仓库的namespace,也就是说,如果images.json中没有指定目标仓库中的namespace,可以在执行迁移命令时指定。 --registry:默认的目标仓库的registry,也就是说,如果images.json中没有指定目标仓库中的registry,可以在执行迁移命令时指定。 --retries:迁移失败时的重试次数,默认为3。 --workers:镜像搬迁的worker数量(并发数),默认是7。 $ ./image-migrator-linux-amd64 -h A Fast and Flexible docker registry image images tool implement by Go. Usage: image-migrator [flags] Aliases: image-migrator, image-migrator Flags: --auth string auth file path. This flag need to be pair used with --images. (default "./auth.json") -h, --help help for image-migrator --images string images file path. This flag need to be pair used with --auth (default "./images.json") --log string log file path (default "./image-migrator.log") --namespace string default target namespace when target namespace is not given in the images config file, can also be set with DEFAULT_NAMESPACE environment value --registry string default target registry url when target registry is not given in the images config file, can also be set with DEFAULT_REGISTRY environment value -r, --retries int times to retry failed tasks (default 3) -w, --workers int numbers of working goroutines (default 7) $./image-migrator --workers=5 --auth=./auth.json --images=./images.json --namespace=test \ --registry=swr.cn-north-4.myhuaweicloud.com --retries=2 $ ./image-migrator Start to generate images tasks, please wait ... Start to handle images tasks, please wait ... Images(38) migration finished, 0 images tasks failed, 0 tasks generate failed 示例如下: ./image-migrator --workers=5 --auth=./auth.json --images=./images.json --namespace=test --registry=swr.cn-north-4.myhuaweicloud.com --retries=2 该命令表示将“images.json”文件中的镜像迁移至“swr.cn-north-4.myhuaweicloud.com/test”镜像仓库下,迁移失败时可以重试2次,一次可以同时搬迁5个镜像。
  • image-migrator config使用方法 image-migrator工具的config子命令可用于获取集群应用中使用的镜像,在工具所在目录下生成images.json。执行./image-migrator-linux-amd64 config -h命令可以查看config子命令的使用方法。 -k, --kubeconfig:指定kubectl的kubeConfig位置,默认是$HOME/.kube/config。kubeConfig文件:用于配置对Kubernetes集群的访问,KubeConfig文件中包含访问注册Kubernetes集群所需要的认证凭据以及Endpoint(访问地址),详细介绍可参见Kubernetes文档。 -n, --namespaces:指定获取镜像的命名空间,多个命名空间用逗号分隔(如:ns1,ns2,ns3),默认是"",表示获取所有命名空间的镜像。 -t, --repo:指定目标仓库的地址(registry/namespace)。 $ ./image-migrator-linux-amd64 config -h generate images.json Usage: image-migrator config [flags] Flags: -h, --help help for config -k, --kubeconfig string The kubeconfig of k8s cluster's. Default is the $HOME/.kube/config. (default "/root/.kube/config") -n, --namespaces string Specify a namespace for information collection. If multiple namespaces are specified, separate them with commas (,), such as ns1,ns2. default("") is all namespaces -t, --repo string target repo,such as swr.cn-north-4.myhuaweicloud.com/test 示例如下: 指定一个命名空间 ./image-migrator-linux-amd64 config -n default -t swr.cn-north-4.myhuaweicloud.com/test 指定多个命名空间 ./image-migrator-linux-amd64 config -n default,kube-system -t swr.cn-north-4.myhuaweicloud.com/test 不指定命名空间(表示获取所有命名空间的镜像) ./image-migrator-linux-amd64 config -t swr.cn-north-4.myhuaweicloud.com/test
  • 镜像迁移操作步骤 准备镜像仓库访问权限文件:auth.json。 新建一个auth.json文件,并按照格式修改,如果是匿名访问仓库,则不需要填写用户名、密码等信息。将文件放置在image-migrator所在目录下。 示例: { "quay.io/coreos": { }, "swr.cn-north-4.myhuaweicloud.com": { "username": "cn-north-4@RVHVMX******", "password": "***************", "insecure": true } } 详细的参数说明请参见“auth.json”文件。 为保证安全,auth.json文件二进制执行后会进行加密处理,若需要修改,请先删除密文后进行填写。 准备镜像列表文件:images.json。 通过kubectl连接源集群。具体方法可参考使用kubectl连接集群。 执行镜像迁移config子命令,生成images.json文件。 您可以参考image-migrator config使用方法中的方法和示例,不指定命名空间,或者指定一个、多个命名空间来获取源集群应用中使用的镜像。 根据需求调整images.json文件内容,但要遵循“images.json”文件中所讲的八项要求。 镜像迁移。 您可以执行默认的./image-migrator-linux-amd64命令进行镜像迁移,也可以根据需要设置image-migrator的参数。 例如以下命令: ./image-migrator-linux-amd64 --workers=5 --auth=./auth.json --images=./images.json --namespace=test --registry=swr.cn-north-4.myhuaweicloud.com --retries=2 示例: $ ./image-migrator-linux-amd64 Start to generate images tasks, please wait ... Start to handle images tasks, please wait ... Images(38) migration finished, 0 images tasks failed, 0 tasks generate failed 结果查看。 上述命令执行完毕后,回显如下类似信息: Images(38) migration finished, 0 images tasks failed, 0 tasks generate failed 表示按照配置,成功将38个镜像迁移到SWR仓库中。
  • image-migrator工作原理 图1 image-migrator工作原理 使用image-migrator工具将镜像迁移到SWR时,需要准备两个文件,一个为镜像仓库访问权限文件“auth.json”,该文件中的两个对象分别为源镜像仓库和目标镜像仓库(即Registry)的账号和密码;另一个为镜像列表文件“images.json”,文件内容由多条镜像同步规则组成,每一条规则包括一个源镜像仓库(键)和一个目标镜像仓库(值)。将这两个文件准备好以后,放在image-migrator工具所在目录下,执行一条简单的命令,就可以完成镜像的迁移。关于两个文件的详细介绍如下: “auth.json”文件 “auth.json”为镜像仓库访问权限文件,其中每个对象为一个registry的用户名和密码。通常源镜像仓库需要具有pull以及访问tags权限,目标镜像仓库需要拥有push以及创建仓库权限。如果是匿名访问镜像仓库,则不需要填写用户名、密码等信息。“auth.json”文件的结构如下: { "源镜像仓库地址": { }, "目标镜像仓库地址": { "username": "xxxxxx", "password": "***************", "insecure": true } } 其中, “源镜像仓库地址”和“目标镜像仓库地址”支持“registry”和“registry/namespace”两种形式,需要跟下述“images.json”中的registry或registry/namespace对应。images中被匹配到的url会使用对应用户名密码进行镜像同步,优先匹配“registry/namespace”的形式。 目标镜像仓库地址如果为“registry”形式,可以从SWR控制台页面获取,具体方法如下:在“总览”页面单击右上角“登录指令”,登录指令末尾的 域名 即为SWR镜像仓库地址,例如swr.cn-north-4.myhuaweicloud.com。注意每个Region的地址不同,请切换到对应Region获取。如果为“registry/namespace”形式,还要将namespace替换为SWR的组织名称。 username:(可选)用户名,values可以填写具体取值,也可以使用“${env}”或者“$env”类型的字符串引用环境变量。 password:(可选)密码,values可以填写具体取值,也可以使用“${env}”或者“$env”类型的字符串引用环境变量。 insecure:(可选)registry是否为http服务,如果是,insecure为true;默认是false。 目标镜像仓库SWR的用户名形式为:区域项目名称@AK;密码为AK和SK经过加密处理后的登录密钥,详细指导请参考获取长期有效登录指令。 示例: { "quay.io/coreos": { }, "swr.cn-north-4.myhuaweicloud.com": { "username": "cn-north-4@RVHVMX******", "password": "***************", "insecure": true } } “images.json”文件 该文件本质上是一个待迁移的镜像清单,由多条镜像同步规则组成,每一条规则包括一个源镜像仓库(键)和一个目标镜像仓库(值)。具体的要求如下: 同步的最大单位是仓库(repository),不支持通过一条规则同步整个namespace以及registry。 源仓库和目标仓库的格式与docker pull/push命令使用的镜像url类似(registry/namespace/repository:tag)。 源仓库和目标仓库(如果目标仓库不为空字符串)都至少包含registry/namespace/repository。 源仓库字段不能为空,如果需要将一个源仓库同步到多个目标仓库需要配置多条规则。 目标仓库名可以和源仓库名不同,此时同步功能类似于:docker pull + docker tag + docker push。 当源仓库字段中不包含tag时,表示将该仓库所有tag同步到目标仓库,此时目标仓库不能包含tag。 当源仓库字段中包含tag时,表示只同步源仓库中的一个tag到目标仓库,如果目标仓库中不包含tag,则默认使用源tag。 当目标仓库为空字符串时,会将源镜像同步到默认registry的默认namespace下,并且repository以及tag与源仓库相同,默认registry和默认namespace可以通过命令行参数以及环境变量配置。 示例如下: { "quay.io/coreos/etcd:1.0.0": "swr.cn-north-4.myhuaweicloud.com/test/etcd:1.0.0", "quay.io/coreos/etcd": "swr.cn-north-4.myhuaweicloud.com/test/etcd", "quay.io/coreos/etcd:2.7.3": "swr.cn-north-4.myhuaweicloud.com/test/etcd" } 使用image-migrator工具的config子命令可自动获取集群中工作负载正在使用的镜像,具体用法请参见image-migrator config使用方法。得到images.json文件后,您还可以根据需要进行修改、添加或删除。
  • 1.18版本特性 支持Istio 1.18.7版本 支持v1.25、v1.26、v1.27、v1.28、v1.29、v1.30、v1.31 CCE Turbo 集群版本 支持v1.25、v1.26、v1.27、v1.28、v1.29、v1.30、v1.31 CCE集群版本 支持 Kubernetes Gateway API 详细内容请参阅:https://istio.io/latest/news/releases/1.18.x/ 父主题: 版本特性
  • 工作负载基本概念 无状态工作负载(即Kubernetes中的Deployment):实例之间完全独立、功能相同,具有弹性伸缩、滚动升级等特性。如:nginx、wordpress,创建无状态工作负载请参见创建无状态工作负载。 有状态工作负载(即Kubernetes中的StatefulSet):实例之间不完全独立,具有稳定的持久化存储和网络标示,以及有序的部署、收缩和删除等特性。如:mysql-HA、etcd,创建有状态工作负载请参见创建有状态工作负载。 守护进程集(即Kubernetes中的DaemonSet):在集群的每个节点上运行一个Pod,且保证只有一个Pod,适合一些系统层面的应用,如日志收集、资源监控等,创建守护进程集请参见创建守护进程集。
  • 步骤二:安装插件 如果您的集群中已安装符合基础规划的插件,您可以跳过此步骤。 更改驱动版本后,需要重启节点才能生效。 重启节点前需要排空节点中的Pod,再进行升级重启的操作。请注意预留GPU资源以满足节点排空过程中的Pod调度需求,防止资源不足导致Pod调度失败影响业务运行。 登录UCS控制台,单击集群名称进入集群,在左侧导航栏中选择“插件管理”,查看“已安装插件”中是否存在volcano插件与gpu-device-plugin插件。 若未安装gpu-device-plugin插件,请安装该插件,具体操作请参见gpu-device-plugin。 若要开启GPU虚拟化,请安装volcano插件,具体操作请参见volcano。
  • 基础规划 配置 支持版本 集群版本 v1.25.15-r7及以上 操作系统 华为云欧拉操作系统 2.0 系统架构 X86 GPU类型 T4、V100 驱动版本 GPU虚拟化功能仅支持470.57.02、510.47.03、535.54.03、535.216.03版本的GPU驱动。 容器运行时 containerd 插件 集群中需要同时安装以下插件: volcano插件:1.10.1及以上版本 gpu-device-plugin插件:2.0.0及以上版本
  • 上传配置文件 登录UCS控制台,单击待接入集群栏的“点击接入”进入集群接入界面,可选择“公网接入”和“私网接入”。 选择接入方式并下载代理配置文件。 若选择“公网接入”,直接在界面单击“下载文件”,下载本地集群代理配置文件“agent-[集群名称].yaml”。 若选择“私网接入”,需要先选择项目,再选择安装前准备(私网接入)中创建的终端节点,然后单击“下载文件”,下载本地集群代理配置文件“agent-[集群名称].yaml”。 集群代理配置文件存在私有密钥信息,每个集群仅能下载一次,请您妥善保管。 本地集群接入并下载集群配置文件时,无需输入密码,安装时由用户手动输入密码。 输入集群安装所需参数并下载集群配置文件“cluster-[集群名称].yaml”。 若集群为1.28.5及之后版本,此处可选择“集群架构”X86 或者 ARM类型。 图1 本地集群安装及接入流程 当前集群的节点CPU架构暂不支持异构混部。若本地集群安装失败,请参考本地集群安装失败怎么办? 1.28.5及之后集群版本,支持集群架构选择。 通过远程传输工具,使用root用户将下载的“agent-[集群名称].yaml”和“cluster-{集群名称}.yaml”文件上传到执行机的“/root/”目录下。 若您需要使用L4或L7负载均衡能力,则需要将集群网络类型配置为BGP,具体操作请参见Cilium。 执行机如果出现SSH连接超时,请参考虚拟机SSH连接超时处理方法处理。 选择集群架构后,请确认ucs-ctl的执行机与集群架构一致。
  • 本地集群的优势 兼容各类基础设施,面向多样化的业务场景 支持直接部署在裸金属服务器之上,减少虚拟化开销,运行高性能的裸金属容器。 支持部署在业界主流的IaaS虚拟机之上,如OpenStack和VMware等。 兼容多种操作系统,包括Huawei Cloud EulerOS、Ubuntu、Kylin、UOS、CentOS和FusionOS。 基于KubeVirt实现虚拟机的部署、运行和管理。 兼容主流的高速硬件,容器支持使用GPU、NPU、IB网卡等高速硬件,满足高性能业务场景。 支持多种异构处理器,包括X86和鲲鹏。 云原生、安全的容器网络 灵活的应用访问,支持对接多种业界主流的负载均衡器,提供Ingress接入方式。 网络QoS:实现精细化的流量控制,避免网络堵塞。 网络策略实现应用灵活的网络访问控制与隔离。 全面兼容社区生态及华为云商业软件 支持社区原生PVC机制,有状态应用持久化存储,数据不丢失。 全面支持云容器存储标准,提供丰富的存储方案。 生态丰富、精细化的运维能力,专业的运维保障 全面兼容Prometheus生态:云原生标准监控采集和日志采集接口,支持自定义扩展,全面涵盖集群、容器、应用各层次的监控、日志、告警、调用链等。 在线运维:支持系统日常巡检在线操作,原厂运维快速接入解决疑难故障。
  • 准备网络环境 附着集群的数据接入方式支持公网接入和私网接入。 公网接入是通过公网Internet接入,要求集群能够访问公网,具有弹性灵活、成本低、易接入的优势。如果对网络质量没有要求,只想采用更简便的方式接入,那么公网接入是个不错的选择。 公网接入要求集群能够访问公网,请确保集群已符合此条件,否则会接入失败。 私网接入是通过云专线(DC)或 虚拟专用网络 (VPN)服务将第三方云网络与云上虚拟私有云(VPC)连通,并利用 VPC终端节点 通过内网与容器智能分析建立连接,具有高速、低时延、安全的优势。 图1 私网接入原理 因此,在开启之前,您需要准备满足一个云上虚拟私有云(VPC),并将第三方云厂商的网络环境与该VPC连通。VPC子网网段不能与第三方云中已使用的网络网段重叠,否则将无法接入集群,例如,第三方云中已使用的VPC子网为192.168.1.0/24,那么华为云VPC中不能使用192.168.1.0/24这个子网。 网络连通可以选用如下两种方案: 虚拟专用网络(VPN)方案:请参见通过VPN连接云下数据中心与云上VPC。 云专线(DC)方案:请参见用户通过单专线静态路由访问VPC或用户通过单专线BGP协议访问VPC。
  • NetworkPolicy加固方案 基础隔离策略:全局阻断对source-controller的非授权访问。 apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: deny-all-source namespace: flux-system spec: podSelector: matchLabels: app: source-controller policyTypes: - Ingress ingress: [] # 默认拒绝所有入站流量 精细化放通规则 # 允许helm-controller访问 apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: allow-helm-to-source namespace: flux-system spec: podSelector: matchLabels: app.kubernetes.io/component: source-controller policyTypes: - Ingress ingress: - from: - podSelector: matchLabels: app: helm-controller ports: - protocol: TCP port: 9090 # 允许kustomize-controller访问 apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: allow-kustomize-to-source namespace: flux-system spec: podSelector: matchLabels: app: source-controller policyTypes: - Ingress ingress: - from: - podSelector: matchLabels: app: kustomize-controller ports: - protocol: TCP port: 9090
  • 组件通信关系梳理 核心组件交互 source-controller:负责管理Helm仓库/Git仓库等资源(端口配置:9090/HTTP)。 helm-controller:需访问source-controller获取Chart包元数据。 kustomize-controller:需访问source-controller获取Kustomize资源。 安全隐患 若未限制source-controller的网络暴露范围,集群内任意Pod均可通过HTTP明文协议访问该服务,存在中间人攻击和数据泄露风险。
  • 如何创建SparkPack企业ERP客户端的快捷方式登录? 解决方案 打开浏览器,输入用户登录地址:https://macroverse.huaweicloud.com/unified-login/#/portal-login?ind=IMC&appId=e3a8574e-4b56-43bc-b27d-011f93fb2bed 图1 用户登录 单击右上角“自定义及控制”,选择更多工具创建快捷方式。 图2 创建快捷方式 在弹出的窗口里,输入SparkPack企业ERP,单击创建按钮。 图3 创建按钮 此时SparkPack 企业ERP的桌面快捷方式已经创建成功,下次登录时双击该快捷方式即可。 图4 双击
  • WEB客户端登录 登录IMC https://macroverse.huaweicloud.com,单击SparkPack 企业ERP应用卡片 图1 登录IMC 鼠标移动到WEB客户端栏,单击"前往" 图2 前往 输入IMC的用户名和密码,单击登录 图3 登录1 如果该用户已经分配了多个账套,请选择要登录的账套,单击OK 图4 登录2 登录到WEB客户端页面,进行相应的报表查看和业务操作 图5 登录3 图6 登录4 父主题: ERP用户操作指南
  • DTW登录 建议使用Chrome 108.0.5359.125及以上版本浏览器进行登录。 登录IMC https://macroverse.huaweicloud.com,单击SparkPack 企业ERP应用卡片 图1 登录IMC 鼠标移动到DTW工具栏,单击”登录” 图2 登录 输入密码,单击Refresh登录 图3 Refresh登录 请选择要登录的账套,单击OK 图4 登录的账套 登录成功,可在下方看到连接信息 图5 连接信息 父主题: ERP用户操作指南
  • 华为云账号实名认证 登录华为云:https://auth.huaweicloud.com/authui/login.html?service=https%3A%2F%2Fconsole.huaweicloud.com%2Fiam%2F%3Fregion%3Dcn-north-1%26cloud_route_state%3D%2Fiam%2Fusers#/login 图5 登录华为云 单击网页上方“立即认证”按钮,进入“实名认证”页面。 图6 立即认证 图7 实名认证 可通过个人认证和企业认证两种方式进行实名认证,以个人认证方式为例:选择个人认证。 图8 个人认证 可通过扫码认证、银行卡认证、证件认证方式进行个人认证。以证件认证为例:选择证件认证。 图9 证件认证 “证件认证”页面,正确填写内容以及上传附件,单击“提交认证”按钮。 认证成功后,账号基本信息后会有已实名认证标签。 图10 已实名认证
  • 华为云账号注册IMC 前提条件 已 注册华为账号 并开通华为云。 已实名认证华为云账户。 操作步骤 登录地址:https://auth.huaweicloud.com/authui/login.html?service=https://macroverse.huaweicloud.com/imc/#/login 图11 登录 单击“免费试用”按钮。 图12 免费试用 “工作台开通”页面,正确填写内容,单击“确认”按钮。 图13 工作台开通 开通工作台后,会展示企业开户信息和所属区域信息。 图14 所属区域信息
  • 登录IMC 企业管理员授权后,用户打开企业用户登录地址:https://macroverse.huaweicloud.com,首次登录请使用手机和验证码进行登录。登录之后设置完密码,可以使用用户账号@企业简称+登录密码。 图1 登录IMC 图2 应用中心 企业管理员通过管理后台的“账号管理”功能查看用户账号。 图3 账号管理 企业管理员在“总览”页面查看企业简称。 图4 总览 父主题: ERP用户操作指南
  • 购买流程 图1 购买流程 购买时需使用华为云账号,购买时必须购买SparkPack 企业ERP组合商品,不能单独购买原子商品。 购买时SparkPack 企业ERP用户数量、RDS License用户数量需要手动选择且用户数量必须一样,购买后无法变更。该用户数量指的是最大的注册用户数量,不是并发用户数量 整个开通过程约40分钟左右,开通完成后,华为云会自动把ERP开通完成消息以及登录信息发送到华为云主账号填写的邮箱地址和手机号码。
  • 购买步骤 登录地址:https://marketplace.huaweicloud.com/combo-contents/02990ea6-6df4-496c-a057-75898c33fe73 图2 必选商品 图3 可选商品1 图4 可选商品2 选择需要购买的商品,单击立即购买,进入订单确认页 图5 订单确认 确认订单详情,同时勾选商品用户协议以及商品服务协议,单击去支付。 付款成功后,等待开通完成短信。
  • 条码集成 概述:条码应用分为三个部分:扫码、条码应用、WEBAPI,WEBAPI通过与B1的交互完成数据的查询和保存等功能,条码的集成开发是指通过 集成工作台 实现B1与条码应用的对接,替代WEBAPI。 应用场景分析:根据条码应用中WEBAPI的功能,集成开发需要完成查询数据和保存数据的功能: 查询数据,数据查询sql从条码应用提交到集成工作台,集成工作台调用diapi服务,执行sql查询ERP的数据返回给条码应用; 保存数据,数据按某种数据结构从条码应用提交到集成工作台,集成工作台调用service layer服务接口,将数据保存到ERP; 集成方案设计 查询数据方案 图1 整体设计流程 图2 具体设计方案 如上图,数据查询具体方案如下: 在集成工作台创建diapi连接器,连接器通过登录接口进行自定义认证; 在diapi连接器中创建执行动作,封装执行sql的接口; 通过diapi登录接口创建连接,连接diapi系统; 在集成工作台创建api流,接受来自条码应用携带sql的请求; 在流中使用diapi连接器中执行sql的执行动作,执行sql查询数据; 将查询的数据按照条码应用所需结构进行封装,返回给条码应用 保存数据方案 图3 整体设计流程 图4 具体设计方案 如上图,数据查询具体方案如下: 在集成工作台创建servicelayer连接器,连接器通过登录接口进行自定义认证; 在servicelayer连接器中创建执行动作,封装创建生产发料、创建生产收货等所需接口; 通过servicelayer登录接口创建连接,连接servicelayer系统; diapi连接器使用查询接口中已经创建好的连接器; 在集成工作台创建一个手动触发流,作为保存子流; 在集成工作台创建api流,接受来自条码应用保存数据的请求; 根据请求中的数据判断是否倒扣料; 如果倒扣料,使用diapi连接器中执行sql的执行动作,查询发料行,构造生产发料请求数据,调用子流创建生产发料;构造生产收货请求数据,调用子流创建生产收货; 如果没有倒扣料,则直接调用子流创建出入库单据; 根据条码应用请求所需返回的数据,将结果返回
  • ERP用户操作指南 SparkPack 企业ERP提供了三种登录模式,分别为标准客户端、WEB客户端以及移动端。其中标准客户端和WEB客户端通过IMC启动SparkPack 企业ERP应用卡片登录。移动端通过下载安装SAP Business One App登录。 标准客户端:拥有ERP完整的业务模块及管理功能,常规的ERP业务操作都使用该模式。 业务功能:请参考《产品介绍》1.2.1的标准客户端业务功能描述。 登录方式:在PC端使用Google Chrome浏览器,登录IMC,单击SparkPack 企业ERP应用卡片后启动标准客户端。首次使用标准客户端时,需要下载并安装SparkPack 企业ERP客户端。 SparkPack 企业ERP客户端版本:华为云RIS客户端7.0.5.195 WEB客户端:主要用来报表分析相关功能查看,有丰富的业务报表供企业决策分析。 业务功能:请参考《产品介绍》1.2.2的WEB客户端业务功能描述。 登录方式:在PC端使用Google Chrome浏览器,登录IMC,单击SparkPack 企业ERP应用卡片后启动WEB客户端。 支持的浏览器:Google Chrome 版本 108.0.5359.125。 移动端:主要用来做审批以及仪表盘相关功能。 业务功能:请参考《产品介绍》1.2.3的移动客户端业务功能描述。 支持的版本: 安卓:SAP Business One Mobile 1.2.17 IOS:SAP Business One Mobile 1.11.23 获取地址:通过如下下载渠道或者联系实施顾问。 安卓手机:请到Google Play上下载。Google Play: https://play.google.com/store/apps/details?id=b1.mobile.android (若无法访问,请联系项目经理获取帮助); 苹果手机:请打开苹果App Store,搜索SAP Business One,链接为SAP Business One on the App Store (apple.com),下载并安装。 登录IMC 默认登录项设置 标准客户端登录 WEB客户端登录 DTW登录 移动端登录 父主题: 实施步骤
  • 默认登录项设置 登录IMC https://macroverse.huaweicloud.com,单击首页SparkPack 企业ERP应用卡片 图1 登录IMC 进入到如下页面,选择默认打开按钮,单击”设置默认” 图2 设置默认 选择标准客户端,则下次登录会自动打开标准客户端登录。 图3 标准客户端登录 选择WEB客户端,则下次登录会默认打开WEB客户端进行登录。 图4 WEB客户端进行登录 父主题: ERP用户操作指南
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全