私有云平台管理

2023-11-06

  1. 更改主机名

controller

hostnamectl set-hostname controller

compute

hostnamectl set-hostname compute
  1. 更改hosts文件

vi /etc/hosts
插入以下
192.168.100.* controller 
192.168.100.* compute
  1. 关闭防火墙并关闭开机自启

syscemctl stop firewalld
syscemctl disable firewalld
  1. 更改selinux文件

vi /etc/selinux
添加如下
SELINUX=disabled
sentenforce 0 立即生效
  1. 挂载光盘(controller)

mkdir opt/centos opt/iaas
mount CentOS-7-x86_64-DVD-2009.iso /mnt/
mkdir /opt/centos & mkdir /opt/iaas
cp -rvf /mnt/* /opt/centos/
umount /mnt/
  1. 搭建ftp服务器

【controller节点和compute节点】
yum -y install vsftpd
修改vsftpd文件
vi /etc/vsftpd/vsftpd.conf
添加如下内容
anon_root=/opt/
设置共享目录/opt
systemctl start vsftpd
systemctl enable vsftpd
  1. 配置yum源

mv /etc/yum.repos.d/* /etc/yum
vi /etc/yum.repos.d/loca.repo
添加如下
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=file:///opt/iaas-repo
gpgcheck=0
enabled=1

compute节点
添加如下
[centos]
name=centos
baseurl=ftp://controller/opt/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=ftp://controller/opt/iaas-repo
gpgcheck=0
enabled=1
重新生成yum源
yum makecache
清除缓存,验证yum源
【controller/compute】
yum clean all
yum list
  1. 无密钥登录

生成密钥对
【controller节点和compute节点】
ssh-keygen 
【controller】复制密钥给compute节点
ssh-copy-id compute
ssh-copy-id controller
【compute】复制密钥给controller节点
ssh-copy-id controller
ssh-copy-id compute
  1. 计算节点分区

先在compute节点添加一个硬盘
用lsblk命令查看分区情况
对sdb进行分区
fdisk /dev/sdb
输入n 分第一个区
按四次回车默认
再输入+20G 设置分区大小
输入n 分第二个区
按四次回车默认
再输入+20G 设置分区大小
输入w保存退出
[root@compute ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): n
Partition type:
   p   primary (2 primary, 0 extended, 2 free)
   e   extended
Select (default p): 
Using default response p
Partition number (3,4, default 3): 
First sector (2059-104857599, default 4096): 
Using default value 4096
Last sector, +sectors or +size{K,M,G} (4096-41943039, default 41943039): +10G
Partition 3 of type Linux and of size 10 GiB is set
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
  1. OpenStack 搭建任务

  1. 编辑环境变量

安装xiandian
yum -y install iaas-xiandian 或 openstack-iaas
备份
cp /etc/xiandian/openrc.sh /etc/xiandian/openrc.sh.bak

vi /etc/xiandian/openrc.sh
修改内容
ctrl+V delete删除第一行注释
底线输入赋值PASS=换成PASS=000000
:%s/PASS=/PASS=000000/
#--------------------system Config--------------------##
#Controller Server Manager IP. example:x.x.x.x
HOST_IP=192.168.24.10

#Controller HOST Password. example:000000 
HOST_PASS=000000

#Controller Server hostname. example:controller
HOST_NAME=controller

#Compute Node Manager IP. example:x.x.x.x
HOST_IP_NODE=192.168.24.20

#Compute HOST Password. example:000000 
HOST_PASS_NODE=000000

#Compute Node hostname. example:compute
HOST_NAME_NODE=compute

#--------------------Chrony Config-------------------##
#Controller network segment IP.  example:x.x.0.0/16(x.x.x.0/24)
network_segment_IP=192.168.24.0/24

#--------------------Rabbit Config ------------------##
#user for rabbit. example:openstack
RABBIT_USER=openstack

#Password for rabbit user .example:000000
RABBIT_PASS=000000

#--------------------MySQL Config---------------------##
#Password for MySQL root user . exmaple:000000
DB_PASS=000000

#--------------------Keystone Config------------------##
#Password for Keystore admin user. exmaple:000000
DOMAIN_NAME=doma
ADMIN_PASS=000000
DEMO_PASS=000000

#Password for Mysql keystore user. exmaple:000000
KEYSTONE_DBPASS=000000

#--------------------Glance Config--------------------##
#Password for Mysql glance user. exmaple:000000
GLANCE_DBPASS=000000

#Password for Keystore glance user. exmaple:000000
GLANCE_PASS=000000

#--------------------Nova Config----------------------##
#Password for Mysql nova user. exmaple:000000
NOVA_DBPASS=000000

#Password for Keystore nova user. exmaple:000000
NOVA_PASS=000000

#--------------------Neturon Config-------------------##
#Password for Mysql neutron user. exmaple:000000
NEUTRON_DBPASS=000000

#Password for Keystore neutron user. exmaple:000000
NEUTRON_PASS=000000

#metadata secret for neutron. exmaple:000000
METADATA_SECRET=000000

#Tunnel Network Interface. example:x.x.x.x
INTERFACE_IP=192.168.24.10

#External Network Interface. example:eth1
INTERFACE_NAME=ens34

#External Network The Physical Adapter. example:provider
Physical_NAME=provider

#First Vlan ID in VLAN RANGE for VLAN Network. exmaple:101
minvlan=101

#Last Vlan ID in VLAN RANGE for VLAN Network. example:200
maxvlan=200

#--------------------Cinder Config--------------------##
#Password for Mysql cinder user. exmaple:000000
CINDER_DBPASS=000000

#Password for Keystore cinder user. exmaple:000000
CINDER_PASS=000000

#Cinder Block Disk. example:md126p3
BLOCK_DISK=sdb1

#--------------------Swift Config---------------------##
#Password for Keystore swift user. exmaple:000000
SWIFT_PASS=000000

#The NODE Object Disk for Swift. example:md126p4.
OBJECT_DISK=sdb2

#The NODE IP for Swift Storage Network. example:x.x.x.x.
STORAGE_LOCAL_NET_IP=192.168.24.10

#--------------------Heat Config----------------------##
#Password for Mysql heat user. exmaple:000000
HEAT_DBPASS=000000

#Password for Keystore heat user. exmaple:000000
HEAT_PASS=000000

#--------------------Zun Config-----------------------##
#Password for Mysql Zun user. exmaple:000000
ZUN_DBPASS=000000

#Password for Keystore Zun user. exmaple:000000
ZUN_PASS=000000

#Password for Mysql Kuryr user. exmaple:000000
KURYR_DBPASS=000000

#Password for Keystore Kuryr user. exmaple:000000
KURYR_PASS=000000

#--------------------Ceilometer Config----------------##
#Password for Gnocchi ceilometer user. exmaple:000000
CEILOMETER_DBPASS=000000

#Password for Keystore ceilometer user. exmaple:000000
CEILOMETER_PASS=000000

#--------------------AODH Config----------------##
#Password for Mysql AODH user. exmaple:000000
AODH_DBPASS=000000

#Password for Keystore AODH user. exmaple:000000
AODH_PASS=000000

#--------------------Barbican Config----------------##
#Password for Mysql Barbican user. exmaple:000000
BARBICAN_DBPASS=000000

#Password for Keystore Barbican user. exmaple:000000
BARBICAN_PASS=000000
----------------------------------------
将配置文件复制到compute节点
scp /etc/xiandian/openrc.sh compute:/etc/xiandian/openrc.sh
  1. 通过脚本安装服务

(安装前必须执行此命令否则无法进行后续操作)

【Controller节点和Compute节点】
iaas-pre-host.sh
  1. 提取compute节点的yum所有需要安装的服务

【compute节点】
cat /usr/local/bin/iaas-*compute.sh | grep yum
复制粘贴运行即可
  1. 搭建数据库组件

【controller节点】
iaas-install-mysql.sh
修改配置文件将缓存 CACHESIZE 修改为 128
vi etc/sysconfig/memcached
CACHESIZE="128"
并重启相应服务
systemctl restart mariadb
  1. 搭建认证服务组件

【controller节点】
iaas-install-keystone.sh
创建一个名为 tom 的账户,密码为 tompassword123,邮箱为tom@example.com
openstack user create --domain dema --password tompassword123 --email tom@example.com tom
--domain{记得要加域名}
  1. 搭建镜像服务组件

【controller节点】
iaas-install-glance.sh 
创 建 一 个 名 为 cirros 的 镜 像 , 镜 像 文 件 使 用cirros-0.3.4-x86_64-disk.img

openstack image create --container-format bare --disk-format qcow2 --file cirros-0.3.4-x86_64-disk.img cirros

  1. 搭建计算服务组件

使用 nova 命令创建一个名为 t,ID 为 5,内存为 2048MB,磁盘容量为 10GB,vCPU 数量为 2 的云主机类型
nova flavor-create test 5 2048 10 2
  1. 搭建网络服务组件

controller 节点执行 
iaas-install-neutron-controller.sh
compute 节点执行
iaas-install-neutron-compute.sh
创建云主机外部网络 ext-net,子网为 ext-subnet,云主机浮动 IP 可用网段为 192.168.10.100~192.168.10.200,
网关为 192.168.100.1。
# neutron net-create --router:external=true ext-net1
# neutron subnet-create --name ext-subnet1 --allocation-pool 
start=192.168.200.100,end=192.168.200.200 --gateway 192.168.200.1 --enable-dhcp 
--ip-version 4 ext-net 192.168.200.0/24
  1. 搭建图形化界面

iaas-install-dashboard.sh
修改nova配置文件使之能通过公网 IP 访问 dashboard 首页
vi /etc/nova/nova.conf
修改如下
routing_source_ip= = ['公网IP']
#修改nova配置文件,需要重启:
[root@controller1 nova]# systemctl restart libvirtd
  1. openstack运维任务

  1. 项目管理

[root@controller ~]# openstack project create --domain dema --description "Hello shop" shop shop
  1. 用户管理

更新配额 
[root@controller ~]# nova quota-update admin --instances 13
查看配额
[root@controller ~]# nova quota-class-show admin
+----------------------+-------+
| Quota                | Limit |
+----------------------+-------+
| instances            | 13    |
| cores                | 20    |
| ram                  | 51200 |
| metadata_items       | 128   |
| key_pairs            | 100   |
| server_groups        | 10    |
| server_group_members | 10    |
+----------------------+-------+

  1. 镜像管理

登 录 controller 节 点 , 使 用 glance 相 关 命 令 上 传 镜 像 , 源 使 用 
CentOS_7.5_x86_64_XD.qcow2,名字为 centos7.5,修改这个镜像为共享状态,并设置最小磁盘为 5G。 
glance image-create --name "centos7.5" --file chinaskills_cloud_iaas.iso --container-format bare  --disk-format qcow2 --min-disk 5
  1. 后端配置文件管理

修改配置文件
vi /etc/glance/glance-api.conf 
user_storage_quota = 10

重启glance服务
systemctl start openstack-glance-api
  1. 数据库管理

请使用数据库命令将所有数据库进行备份,备份文件名为 openstack.sql
mysqldump --opt --all-databases > openstack.sql
  1. 存储服务管理

创建一个名为 lvm 的卷类型,创建该类型规格键值对,要求 lvm 卷类型对应 cinder后端驱动 lvm所管
理的存储资源,名字 lvm_test,大小 1G 的云硬盘并查询该云硬盘的详细信息。
[root@controller ~]# cinder type-create lvm               
+--------------------------------------+------+-------------+-----------+
|                  ID                  | Name | Description | Is_Public |
+--------------------------------------+------+-------------+-----------+
| 96d48f5e-7f57-43da-aa02-ec1446b9f3a5 | lvm  |      -      |    True   |
+--------------------------------------+------+-------------+-----------+
[root@controller ~]# cinder create --name lvm_test --volume-type lvm 1
  1. 数据库管理

进入数据库myqle,创建本地用户 examuser,密码为 000000,然后查询 mysql 数据库中的 user 表的 user,host,password 字段。
insert into mysql.user(host,user,password) values("localhost","examuser",password("000000"));
然后赋予这个用户所有数据库的“查询”“删除”“更新”“创建”的权限。
grant select,delete,update,create on *.* to examuser@'localhost' identified by '000000';
  1. 存储管理

请使用 openstack 命令创建一个名为 test 的 cinder 卷,卷大小为 5G。
openstack volume create test --size 5
  1. 存储管理

  1. 存储管理

在 controller 节 点 执 行 iaas-install-swift-controller.sh, compute 节 点 执 行
iaas-install-swift-compute.sh
创建一个名为 file 的容器。
swift post file  或者 openstack container create file
  1. 存储管理

用 swift 命令,把 cirros-0.3.4-x86_64-disk.img 上传到 file 容器中。 
[root@controller ~]# swift upload file cirros-0.3.4-x86_64-disk.img 
  1. 添加控制节点资源到云平台

一、修改openrc.sh(控制节点)
把compute节点的名称和IP都改成controller节点的名称和IP
vi /etc/xiandian/openrc.sh

#Compute Node Manager IP. example:x.x.x.x
HOST_IP_NODE=192.168.20.30 --改为controller节点ip

#Compute HOST Password. example:000000
HOST_PASS_NODE=000000

#Compute Node hostname. example:compute
HOST_NAME_NODE=controller --改为controller节点hostname
————————————————

二、在Controller节点安装nova-compute服务
iaas-install-nova-compute.sh
安装到最后需要输入Controller节点密码即可成功

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

私有云平台管理 的相关文章

  • Serverless 的前世今生

    作者 阿里云用户组 从云计算到 Serverless 架构 大家好 我是阿里云 Serverless 产品经理刘宇 很高兴可以和大家一起探索 Serverless 架构的前世今生 从云计算到云原生再到 Serverless 架构 技术飞速发
  • DHorse v1.3.2 发布,基于 k8s 的发布平台

    版本说明 新增特性 构建版本 部署应用时的线程池可配置化 优化特性 构建版本跳过单元测试 解决问题 解决Vue应用详情页面报错的问题 解决Linux环境下脚本运行失败的问题 解决下载Maven安装文件失败的问题 升级说明 下载v1 3 2安
  • Java高并发处理方案

    java高并发 如何解决 什么方式解决 一 什么是高并发 二 高并发解决思路 三 高并发解决方案 一 什么是高并发 1 1 高并发 High Concurrency 是互联网分布式系统架构设计中必须考虑的因素之一 它通常是指 通过设计保证系
  • 已解决 Request execution error. endpoint=DefaultEndpoint{ serviceUrl=‘http://localhost:8761/eureka/}

    Requestexecutionerror endpoint DefaultEndpoint serviceUrl http localhost 8761 eureka 注册中心报错 问题原因 可能就是yml文件有一步写错了然后照成报错 报
  • Git clone 时 出现SSL certificate problem error

    出现这个问题的原因是本地默认开启了SSL认证 但是在本地找不到SSL证书 解决办法就是关掉 SLL认证 git clone 时加上参数 no ssl check 完整的命令应该是 git clone no ssl check https g
  • 使用 ChatGPT 从 JavaScript 代码生成 React 组件

    欢迎来到我们的教程 了解如何使用 ChatGPT 从 JavaScript 代码生成 React 组件 在本指南中 我们将探讨使用 ChatGPT 完成此任务的好处 并引导您完成分步过程 React 是一个流行的用于构建用户界面的 Java
  • springboot整合shiro的坑记录

    首先我参考文章 https blog csdn net Yearingforthefuture article details 117384035 进行学习 由于此文章没有讲springboot的版本 我于是用了idea2022 3 1的默
  • // SPDX-License-Identifier: MIT

    上述声明是指明你写的智能合约采用什么样的对外开放标准 该标准规定了别人是否拥有各种使用权利 其中 MIT 标准说明其他人可以随便用该源码 但出问题不负责
  • DevOps极速入门丨Gitlab丨Jenkins丨harbor丨CICD丨自动化丨运维开发

    DevOps极速入门丨Gitlab丨Jenkins丨harbor丨CICD丨自动化丨运维开发 一 DevOps介绍 软件开发最开始是由两个团队组成 开发计划由开发团队从头开始设计和整体系统的构建 需要系统不停的迭代更新 运维团队将开发团队的
  • 如何在 devstack 中管理用户/密码?

    我已经安装了devstack到一个干净的 Ubuntu 机器 我可以访问 OpenStack 仪表板 http localhost auth login 但是 我不知道如何管理用户或我的初始凭据是什么 此信息保存在哪里 该信息保存在 Key
  • 第六章--- 实现微服务:匹配系统(下)

    0 写在前面 这一章终于完了 但是收尾工作真的好难呀QAQ 可能是我初学的缘故 有些JAVA方面的特性不是很清楚 只能依葫芦画瓢地模仿着用 特别是JAVA的注解 感觉好多但又不是很懂其中的原理 只知道要在某个时候用某个注解 我真是有够菜的
  • 什么是微服务

    微服务是一种架构风格 它把一个大型的复杂软件应用划分为一系列小的服务 每个服务都具有单一的功能 运行在其自己的进程中 并通常基于不同的编程语言和框架 这些服务之间通过轻量级通信机制相互通信 这种通信机制基于HTTP协议 微服务架构风格使得系
  • 如何利用 Kubernetes 的新 CronJob API 进行高效的任务调度

    Kubernetes 的 CronJob API 是在云原生环境中自动执行常规任务的关键功能 本指南不仅引导您完成使用此 API 的步骤 还说明了它非常有用的实际用例 先决条件 正在运行的 Kubernetes 集群 版本 1 21 或更高
  • 微服务常见的配置中心简介

    微服务架构中 常见的配置中心包括以下几种 Spring Cloud Config Spring Cloud Config是官方推荐的配置中心解决方案 它支持将配置文件存储在Git SVN等版本控制系统中 通过提供RESTful API 各个
  • 创建新的 docker-machine 实例始终无法使用 openstack 驱动程序验证证书

    每次我尝试通过创建一个新实例docker machine在开放堆栈上 我总是在验证证书时收到此错误 我必须在创建实例后立即重新生成证书才能使用这些实例 docker machine create driver openstack opens
  • 安装pbr时出错

    我想在运行 OSX 10 8 5 的计算机上安装 openstack 客户端 作为先决条件 我需要安装 pbr 所以 我做了以下事情 git clone git github com openstack dev pbr git cd pbr
  • Terraform,如何在现有资源上运行配置程序?

    我的问题与这个 github 帖子类似 https github com hashicorp terraform issues 745 https github com hashicorp terraform issues 745 这也与我
  • Kubernetes (十一) 存储——Secret配置管理

    一 简介 从文件创建 echo n admin gt username txt echo n westos gt password txt kubectl create secret generic db user pass from fi
  • OpenShift :: POD 不会从部署配置继承“名称标签”

    我从 git repo 基于 Docker 的应用程序 创建了一个构建配置 oc new build
  • 如何使用 cloud-init 安装 docker?

    我想在 Openstack 中创建实例 在通过 ssh 连接之前 这些实例中已经安装了 Docker 所以我很自然地对 Cloud init 技术感兴趣 因为它允许我们在第一次启动时在虚拟机上安装软件包 所以现在我尝试在启动时在我的实例上安

随机推荐

  • web基本解题思路

    前两天安装一些web相关的软件 今天主要是做一些简单的web基础题 主要用BurpSuite软件进行抓包和分析数据 其中涉及到一些方法 如下所示 一 爆破 包括包括md5 爆破随机数 验证码识别等 二 绕WAF 包括花式绕Mysql 绕文件
  • Python安装超详细教程

    本文将介绍以下几部分内容 下载 python 安装 python 配置环境变量 python 多版本共存配置 python 编程工具推荐 一 下载 python 下载 python 点击这里进入 python 下载页面 在下载页面可以看到很
  • oracle什么时候要commit,Oracle什么时候需要Commit

    写完DML语句 update insert delete 后 需要手动COMMIT 如果没有COMMIT 更新的内容会被保存到内存中 而不是提交到数据库中 将不会被其他Session 对话 看见 其他对话看到的是更新前的数据 当用户退出对话
  • Docker指定时间段一键过滤容器运行时日志

    文章目录 引 效果 测试输错 时间段模式 时间段方式 时间戳方式 低版本Docker 时间范围模式 实时查看 脚本 引 针对容器日志过多时 过滤某个时间 时间段的日志 效果 说明 针对Docker版本比较低的客户端 无法使用 until参数
  • C#辗转相除法求最大公约数与最小公倍数

    class Program static void Main string args int num1 num2 mm Console WriteLine 请输入第一个数 num1 Convert ToInt32 Console ReadL
  • 【Flutter 1-6】Flutter项目目录结构

    文章首发地址 Flutter项目结构 了解Flutter的目录结构 可以帮助我们更好的管理和开发项目 这样我们在开发的过程中就会很清楚的知道 iOS代码该放在那里 Android代码该放在那里 Flutter代码该放在哪里 测试代码放在哪里
  • Linux操作系统加固

    如何尽可能地加强Linux的安全性和隐私性 以下列出的所有命令都将需要root特权 以 符号开头的单词表示一个变量 不同终端之间可能会有所不同 一 选择正确的Linux发行版 选择一个好的Linux发行版有很多因素 避免分发冻结程序包 因为
  • ubuntu16.04重新编译linux内核

    首先的首先 如果用的是虚拟机 那硬盘至少要分个40G 硬盘太小的后果 你可以试试 一 下载内核 首先到kernel官网获取linux源代码包 我用的ubuntu版本是16 04 因此下载的包可以采用4 x 如果从官网下载速度过慢 我这下载需
  • 日志注入 ctf.show_web4

    使用php input 不行 使用日志注入 查看日志的默认目录 得到了日志文件 url var log nginx access log 进行日志注入 使用蚁剑连接得到flag
  • Acwing 1264. 动态求连续区间和(树状数组版)

    lowbit x x x 返回2 k k为x的二进制表示中末尾0的个数 c x 存的是 x lowbit x x 之间这些数的和 include
  • Django电商项目(四)用户中心、FastDFS

    Django电商项目 用户中心逻辑 登录装饰器和登录后跳转 判断用户是否已登录 退出登录 用户中心 地址页 模型管理器类方法封装 用户中心 个人信息 分布式图片服务器FastDFS 什么是FastDFS 文件上传流程 文件下载流程 简易Fa
  • 区块链在物联网中的应用态势分析

    摘 要 目的 物联网是物体之间共享资源和交流信息的平台 其上的数据价值不断被挖掘显现 而区块链作为一种新型的数据存储管理模式 在体系去中心化 数据溯源和防篡改等方面拥有良好的效果 近来 不少研究都探索了区块链在物联网中的应用 方法 利用文献
  • PaddleHub人体姿态检测模型pose_resnet50_mpii

    姿态检测还是挺有意思的 在 paddlehub 上有直接可以拿来用的模型 pose resnet50 mpii 随便网上找了张图片试了一下效果还行 代码非常简单 import paddlehub as hub module hub Modu
  • Android逆向之旅---爆破一款资讯类应用「最右」防抓包策略原理分析

    一 逆向分析 首先感谢王同学提供的样本 因为王同学那天找到我咨询我说有一个应用Fiddler抓包失败 其实对于这类问题 我一般都会这么回答 第一你是否安装Fiddler证书了 他说他安装了 第二你是否用了我之前说的那个Xposed框架Jus
  • JAVA list加锁_list类里面的东西加锁 (手动加锁方法)

    package privateclass import java util Collection import java util Iterator import java util List import java util ListIt
  • 【计算机组成原理】——原码,反码,补码,移码怎样计算

    机器数与真值 把符号 数字化 的数称为机器数 而把带 或 的数称为真值 正负号用二进制的0 1表示 0 1 x 001 机器数 第一位表示符号 x 1 x 101 真值 直接用 表示 x 5 原码 反码 补码 移码的计算 正数的原码 反码
  • Pycharm绘图时显示额外的“figure”浮窗

    如图所示 不想图片显示在右边 而是单独的一个窗口 这样可以进行点击交互 1 File gt Settings gt 2 找到Tools gt Python Scientific 找到 Python Scientific 去除右边候选框中的勾
  • SpringCache使用

    SpringCache使用 1 引入依赖 引入springcache依赖
  • three.js坐标轴辅助器AxesHelper

    一 效果图 二 添加坐标轴辅助器 使用three js 通过以下代码可以添加坐标轴辅助器 创建坐标轴辅助器 var axesHelper new THREE AxesHelper 5 添加到场景中 scene add axesHelper
  • 私有云平台管理

    更改主机名 controller hostnamectl set hostname controller compute hostnamectl set hostname compute 更改hosts文件 vi etc hosts 插入以