Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP]fix: qj misc fixes 20240518 #309

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions docs/guides/onpremise/baremetal/baremetal_image.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
sidebar_position: 8
---

# 裸金属镜像

裸金属使用虚拟机的镜像进行部署,部署原理为:平台通过网络引导裸金属启动进入PXE系统,用户创建裸金属服务器时,PXE系统将用户指定的镜像下载到裸金属,并dd写入裸金属指定的磁盘,并且根据裸金属磁盘调整分区表,使得该磁盘可以启动。

为了让裸金属能够顺利从基于虚拟机镜像刻写的系统盘分区启动,镜像中需要预置裸金属启动需要的驱动模块,特别是磁盘所需的驱动模块。
6 changes: 5 additions & 1 deletion docs/guides/onpremise/network/dns.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ sidebar_position: 5

* region负责生成虚拟机的域名信息
* host负责通过dhcp将域名信息注入到虚拟机内
* region_dns负责虚拟机之间的域名解析,实现基于主机名和主机IP的解析
* region_dns负责虚拟机之间的域名解析,实现云平台内主机名和主机IP的解析,以及中继上游DNS的解析,为主机提供DNS解析服务

每台虚拟机都需要配置其域名解析服务器和域名解析地址前缀,这两个信息是由region生成,并且同步到host,最后通过dhcp下发到虚拟机内部。

Expand All @@ -26,3 +26,7 @@ dns_domain | 全局的dns搜索后缀,默认值为 cloud.onecloud.io
guest_dns | 该IP子网的虚拟机的域名解析服务器地址 | region的dns_server选项
guest_domain | 该IP子网的虚拟机的域名后缀 | region的dns_domain选项

## region_dns介绍

region_dns基于coredns实现,配置语法和coredns一致。

2 changes: 1 addition & 1 deletion docs/guides/onpremise/network/host.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ import HostAliasVlanNICPNG from './images/host_alias_vlan_nic.png';

<img src={HostAliasVlanNICPNG} width="500" />

以物理机的网口为em1,VLAN ID为100,em1的虚拟机网桥br0为例,以下为配置脚本
以物理机的网口为em1,VLAN ID为100,em1的虚拟机网桥br0为例,以下为运行时更改配置的命令

```bash
ip link add link em1 name em1.100 type vlan id 100 && ip addr flush dev br0 && ip addr add 10.192.4.20/22 dev em1.100 && ip link set dev em1.100 up
Expand Down
2 changes: 1 addition & 1 deletion docs/guides/onpremise/network/reservedip.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ sidebar_position: 11

### IP地址占用检测

平台会每隔6小时做一次全局ping检测,把所有经典网络的IP地址进行ping。并且把平台未维护,但是响应ping的IP标记为预留IP,防止被平台分配,避免IP冲突。如果IP被检测在线并预留后,就不会被自动释放了。需要用户手动释放。
平台服务cloudmon会每隔6小时做一次全局ping检测,把所有经典网络的IP地址进行ping。并且把平台未维护,但是响应ping的IP标记为预留IP,防止被平台分配,避免IP冲突。3.10(含)之前版本,如果IP被检测在线并预留后,就不会被自动释放了。需要用户手动释放。3.11(含)之后,cloudmon预留IP时会设置预留有效期,在有效期内,

在创建主机时,如果确认这个IP没有被使用,并且有可能放到预留IP里,可以在创建的network参数里,加一个reserved: true的参数,这样即使IP被预留了,也会被自动从预留IP池中释放用于分配。

Expand Down
44 changes: 44 additions & 0 deletions docs/guides/onpremise/network/securitygroup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
sidebar_position: 10
---

# 安全组

安全组是承载主机网络防火墙规则的逻辑资源,主机一般默认关联一条安全组,同时允许关联多个安全组。

## 普通安全组与管理安全组

一台主机关联的安全组分为普通安全组和管理安全组两类。普通安全组默认有一条,同时允许多条,普通用户可以通过WebUI或者climc命令修改主机的普通安全组。

通过如下climc命令设置虚拟机的安全组:

```bash
# 全量设置主机的安全组,如果安全组列表为空,则表示清空安全组
climc server-set-secgroup <server_id> <secgroup_1> <secgroup_2> ...
```

平台管理员还可以设置每台主机的管理安全组,用户无法修改主机关联的管理安全组。主机只能关联一条管理安全组。

```bash
# 设置管理安全组
climc server-assign-admin-secgroup <server_id> <secgroup>
# 清除管理安全组
climc server-revoke-admin-secgroup <server_id>
```

## 经典网络安全组

经典网络的安全组规则由sdnagent转换为openflow流表规则, 下发到虚拟机所在宿主机的openvswitch实现功能。

### 禁用安全组

可以完全禁用经典网络的安全组。方法为:修改oc,设置 disableSecurityGroup: true 全局禁用安全组功能。修改后,需要重启 default-host 的daemonset。

```
kubectl -n onecloud edit oc
kubectl -n onecloud rollout restart daemonset default-host
```

## VPC网络安全组

VPC网络的安全组功能通过ovn实现,由vpcagent将安全组规则转换为ovn的LogicalSwitch的ACL规则实现。
18 changes: 14 additions & 4 deletions docs/guides/onpremise/vminstance/hugepage.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,10 @@ sidebar_position: 10

### 部署时开启大页

宿主机为 x86_64 架构非控制节点默认开启,且内存超过 30G时生效,预留内存为总内存的10%,最大预留20G内存。可修改 config.yaml 中 enable_hugepage 控制开启或者关闭大页内存
宿主机为 x86_64 架构非控制节点,且内存超过 30G时,在默认部署时自动开启1G大页。预留内存初始值为总内存的20%,且最大预留32G内存。

在自定义部署时,可修改 config.yaml 中 enable_hugepage 控制开启或者关闭启用大页内存。

```
as_host: true
# 虚拟机强行作为 OneCloud 私有云计算节点(默认为 false)。开启此项时,请确保as_host: true
Expand All @@ -33,8 +36,9 @@ sidebar_position: 10
enable_hugepage: true
```

### 部署完成后想开启大页
环境部署完成后想启用native大页:
### 部署完成后开启大页

也可以在环境部署完成后,通过如下步骤启用native大页:

1、设置/etc/yunion/host.conf的hugepages_options 为 native

Expand All @@ -55,7 +59,11 @@ Swap: 0B 0B 0B

### 配置预留内存

默认情况下预留内存是宿主机当前内存的 %10,最大不超过 20G,如果想要手动配置宿主机的预留内存,则可以通过设置 RESERVED_MEM 来配置。
开启大页后,宿主机的预留内存根据宿主机启用大页后实际保留的内存自动计算获取,无法在控制台修改。

默认情况下,开启大页的宿主机的预留内存是宿主机当前内存的20%,最大不超过 32G。

如果想要手动修改启用大页的宿主机的预留内存,则可以通过设置 `oc-hugetlb-gigantic-pages.service` 服务的环境变量 RESERVED_MEM 来配置。

```
[Unit]
Expand All @@ -74,3 +82,5 @@ ExecStart=/usr/lib/systemd/oc-hugetlb-reserve-pages.sh
[Install]
WantedBy=sysinit.targe
```

配置后需要重启宿主机生效。重启后,服务启动脚本根据设置的环境变量预留非大页内存,并将获取的预留内存值上报到控制台,用户可以在控制台查看实际的预留内存大小。
7 changes: 6 additions & 1 deletion docs/operations/databases/mysql_ha_recovery.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,15 @@ MariaDB [(none)]> SHOW MASTER STATUS;

然后退出MariaDB,执行mysqldump将主节点的数据导出:

```
```bash
mysqldump -u root -p --all-databases > /a/path/mysqldump.sql
```

如果数据库已经开启主备并启用了binary logging,建议用如下命令参数:
```bash
mysqldump -u root -p --master-data --single-transaction --skip-lock-tables --routines --triggers --all-databases > /a/path/mysqldump.sql
```

再登入主节点MariaDB,解锁READ LOCK。

```
Expand Down
Loading