基于无影云电脑实现云原生时代的微服务的部署

介绍

无影云电脑

无影是阿里云打造的云端一体、安全高效的一站式云上办公空间。无影的云桌面、云应用、应用中心、安全浏览器等一系列的云办公能力,通过流化的技术,提供给终端用户,在算力、安全、成本、敏捷、开放等方面,无影具有超越传统PC的优势。

无影云桌面

无影云桌面 (Elastic Desktop Service),是一种易用、安全、高效的云上桌面服务。它支持快速便捷的桌面环境创建、部署、统一管控与运维。无需前期传统硬件投资,帮您快速构建安全、高性能、低成本的企业桌面办公体系。

  • 短期使用场景:按需弹性创建租用,灵活应对外包、实习生、考试机构等短期需求。
  • 数据安全管控场景:数据保存在服务端,禁止客户端有任何留存;桌面内容显示通过协议做像素及传输,且经过加密处理,避免IP泄露。
  • 远程办公,多分支机构场景:可通过互联网远程接入办公桌面,轻松纳管多地分支机构的桌面。支持多地AD的连通,实现大型企业IT管理需求,大大提高协同办公效率。
  • 制图、视频、设计场景:提供高性能的 GPU 型桌面,满足专业制图,视频编辑,工业设计与建模等专业场景。

优势

基于无影云电脑实现云原生时代的微服务的部署

实战

系统

本次基于无影云电脑的Ubuntu系统,环境配置如下:

  • cpu 4core
  • memory 8G
  • 数据盘50G

部署操作

在无影云电脑的宣传页无影云电脑宣传页中,提及了如何申领,如何创建云电脑桌面,这里我就不再追叙了。如下图,可以看到我创建的云电脑信息:

基于无影云电脑实现云原生时代的微服务的部署

接下来,我们可以给云电脑添加用户以及重置密码,然后我们通过web网页端的方式进行修改密码,首先我们输入工作区:

基于无影云电脑实现云原生时代的微服务的部署

输入正确的工作区后,会让我们输入用户的初始信息:

基于无影云电脑实现云原生时代的微服务的部署

接下来输入初始信息后,我们可以重置密码,最后我们登录进入:

基于无影云电脑实现云原生时代的微服务的部署

我们点击连接按钮,即可进入:

基于无影云电脑实现云原生时代的微服务的部署

然后我们可以选择一个工具进行命令操作,当然,也可以直接操作文件系统:

基于无影云电脑实现云原生时代的微服务的部署

我们选择“Terminal”后,就可以进入系统命令行:

基于无影云电脑实现云原生时代的微服务的部署

在这里,我们看到云电脑的目录结构以及当前目录情况:

基于无影云电脑实现云原生时代的微服务的部署

当然,我们可以看看云电脑的存储等信息:

基于无影云电脑实现云原生时代的微服务的部署

接下来,我可以在home目录下进行一些服务的部署,对于部署,我们可以需要先进行镜像的创建:

基于无影云电脑实现云原生时代的微服务的部署

创建完成之后,我们可以通过安装一些常规的命令:

sudo apt install git

利用apt来安装一些工具,从而下载我们在github的远程demo的代码:

git clone https://github.com/damon008/microservice-k8s.git

然后,我们可以利用常见的一些python脚本命令来进行微服务的部署。这里自己封装了一套python脚本的部署框架,我们首先进入项目根目录:

cd microservice-k8s

然后在执行命令之前,我们先进行创建一些资源,比如命名空间namespace:

kubectl create namespace system-server

其次,在microservice-k8s目录下,我们执行如下脚本,初始化一些环境以及工具包:

sh install_requirement.sh

初始化环境后,我们需要初始化一些配置,先来编辑deployment目录下的文件:

vi ../deployment/quick-start/quick-start-AIO-example.yaml

我们来初始化一些系统的配置以及资源配置:

default:
  cluster_id: singlebox
  gpu_version: 440.31
  mysql_password: ssswsw
cluster_server:
  default:
    ssh-username: damon #机器用户名
    ssh-password: wwwww #机器密码
    gpu:
      type: debug
      count: 2
    cpu: 24
    mem: 187
  master:
  - ip: 10.12.3.17
    hostname: damon
    username: damon
    passworld: wwwww
    gpu:
    # required if
      type: debug
      count: 2
#  compute:
#  - ip: <compute node ip>
#    hostname: <compute node hostname>
#    gpu:
#    # the type and count must be configured at same time
#     type: <gpu type that is different from default>
#      count: <gpu type that is different from default>

registry_info:
  # the registry address of docker,format [ip:port] eg. 10.10.8.100:5000
  domain: 10.10.8.100:5000
  # the registry's username  
  username: admin
  # the registry's password
  password: wdwwdwwdw
  # the namespace of kubeletes 
  k8s_namespace: singlebox_google_containers
  # the namespace of services
  leinao_namespace: hub

初始化这些配置后,我们需要根据配置信息以及yaml模板来生成脚本配置yaml文件,输出到output_config目录:

sudo python ../controller.py config generate -i /home/damon/microservice-k8s/deployment/quick-start/quick-start-AIO-example.yaml -o /home/damon/deployment/output_config

最后我们把config配置push到远程,k8s重新部署时需要执行:

sudo python ../controller.py config push -p /home/damon/deployment/output_config

这时候需要设置一个key secret,输入你想要设置的它。

接下来,我们编译镜像:

sudo python pai_build.py build -c /home/damon/deployment/output_config -s cas-server

编译完镜像后,我们需要把镜像push到远程的仓库:

sudo python pai_build.py push -c /home/damon/deployment/output_config -i cas-server

最后,我们开始部署服务cas-server:

sudo python ../controller.py service start -n cas-server

以上就是我们利用无影云电脑完整部署我们的容器化服务,同时使用k8s来进行管理。

上一篇:阿里云服务器如何登录?阿里云服务器的三种登录方法


下一篇:linux安装python