OpenStack节点地址改变,OpenStack节点地址


正常在生产环境中,各个节点会做HA,可以用域名机制来管理节点。

但是有时候如果用了IP地址,就面临着一旦改变了IP需要更新配置的问题。


如果要修改的话,主要是两个方面的信息。

一是配置文件,基本都在/etc/目录下。

可以先grep地址下看看是不是都可以直接替换,如果可以的话,执行

$ sed -i "s/old_ip/new_ip/g" `grep old_ip -rl /etc`即可。


另外一个是数据库,这个要略微复杂些。

一般openstack的数据库中有多个database,主要需要修改的在keystone database的endpoint表中。登录到sql后,命令如下

mysql>use keystone;

mysql> update endpoint set
    -> url=replace(url,'1.1.1.1','2.2.2.2');

其它的如token表中内容或其它database中内容,可以根据自己情况来看是否需要修改。


最后是重启所有的相关服务,或者干脆重启机器。


怎维护Openstack节点

维护的动机 一台Openstack节点进行维护的动机主要有三点: 硬件替换或升级 打安全补丁后需要重启 软件升级和服务重启 一般存在两种场景:VM的磁盘存储在dfs上(cephFS, glusterFS, NFS),容易维护VM磁盘存储在本地磁盘,最难维护的情况 将一台Openstack节点设为维护模式在目前的 Openstack中已经有maintenance mode,但仅对Xen hypervisor有效,如果使用的是kvm,那么你会看到一条500错误:nova host-update compute-01 --maintenance enable ERROR: The server has either erred or is incapable of performing the requested operation. (HTTP 500) (Request-ID: req-5667d1ff-bgha-4veq-9drb-8c6'733f1s4b)作为变通方案,你可以采用以下方式:将新的instacnes指到其他位置;禁用该compute node私有云的解决方法 使用以下命令来强制vm创建到指定节点,默认zone是nova:nova boot bla bla bla --availability-zone <your-zone>:<compute-node>公有云的解决方法 直接disable该node,这样scheduler就不会尝试在该node上跑实例了:$ sudo nova-manage service disable --host=<host> --service=<service>
 

以openStack为例,简述IaaS的工作流程

用户验证,资源配额分配,创建实例,nova-network分配IP地址,scheduler根据计算节点查看负载情况选择虚拟机所属服务器,检查本地是否有虚拟机模板,(如果没有)从glance下载模板,利用copy on write 创建虚拟机系统镜像,生成虚拟机配置文件(包含dhcp获取的ip地址),启动虚拟机,用户可以通过web端 的novnc查看虚拟机系统内信息。web端提供块存储、快照、重启等操作。。。一般是按时计费,按系统配置选取套餐类型。。。
 

相关内容