OpenStack研发:novaclient
研发环境
系统:CentOS Linux release 7.7.1908 (Core)
OpenStack:Train版
Python:2.7.5
Python库
版本
keystoneauth1
4.0.1
openstacksdk
0.45.0
oslo.config
7.0.0
oslo.i18n
3.25.1
oslo.serialization
2.29.2
oslo.utils
3.42.1
python-cinderclient
6.0.0
python-keystoneclient
3.22.0
python-novaclient
16.0.0
python-openstackclient
5.2.1
源码Demo12345678910111213141516171819202122232425262728293031from keystoneauth1 import loadingfrom keystoneauth1 import sessionfrom novaclient import client as n ...
Kubernetes部署:kubeadm部署高可用集群
高可用集群部署前期准备1. 检查centos版本 / hostname123456789# 查看centos版本cat /etc/centos-release>> CentOS Linux release 7.7.1908 (Core)# 此处 hostname 的输出将会是该机器在 Kubernetes 集群中的节点名字hostname# 修改hostnamehostnamectl set-hostname NAME
2. 检查网络1234567891011121314151617181920# ip route showdefault via 111.111.111.1 dev ens192 proto static metric 100111.111.111.0/24 dev ens192 proto kernel scope link src 111.111.111.81 metric 100172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1# ip a1: lo: <LOOPBA ...
OpenStack研发:Curl接口调试
基本概念
keystoneOpenStack 的 Keystone V3 中引入了 Domain 的概念
Domain,project,user,role,token 的概念和关系简单来说,
Domain - 表示 project 和 user 的集合,在公有云或者私有云中常常表示一个客户
Group - 一个domain 中的部分用户的集合
Project - IT基础设施资源的集合,比如虚机,卷,镜像等
Role - 角色,表示一个 user 对一个 project resource 的权限
Token - 一个 user 对于某个目标(project 或者 domain)的一个有限时间段内的身份令牌
它们之间的关系用一个不完整的图来表示:
说明:
Domain 可以认为是 project,user,group 的 namespace。 一个 domain 内,这些元素的名称不可以重复,但是在两个不同的domain内,它们的名称可以重复。因此,在确定这些元素时,需要同时使用它们的名称和它们的 domain 的 id 或者 name。
Group 是一个 domain 部分 ...
OpenStack部署:默认端口号
组件默认端口号
OpenStack service
Default ports
Port type
Block Storage (cinder)
8776
publicurl and adminurl
Compute (nova) endpoints
8774
publicurl and adminurl
Compute API (nova-api)
8773, 8775
Compute ports for access to virtual machine consoles
5900-5999
Compute VNC proxy for browsers ( openstack-nova-novncproxy)
6080
Compute VNC proxy for traditional VNC clients (openstack-nova-xvpvncproxy)
6081
Proxy port for HTML5 console used by Compute service
6082
Data processing servic ...
Linux配置:远程服务器通过本机代理联网
简介解决问题如下:
线上服务器无法访问公网,申请公网访问流程过于复杂,部署环境又需要连接公网来安装包,可使用本方式配置代理联网。
架构
通过Fiddler,在本地Windows机器上启动HTTP代理服务
通过Xshell/MobaXterm等远程连接软件,建立SSH Tunnel
连接远程服务器后,在服务器设置http_proxy https_proxy no_proxy
资源包Fiddler
链接:https://pan.baidu.com/s/1-0wsdRkJ6MsDG7MvvvZVLQ
提取码:x0cc
部署流程1. 部署Fiddler下载并解压Fiddler至本地文件夹,双击Fiddler.exe运行Fiddler,对Fiddler做如下配置:
勾选允许远程计算机连接
2. 配置SSH工具MobaXterm
点击Tunneling,进入SSH Tunneling设置页面
点击New SSH tunnel,创建新的SSH tunnel
点击Remote port forwarding,设置远程代理,填写如下参数:
Local server:port ...
OpenStack使用:镜像制作
CentOS镜像资源下载地址
系统镜像:https://www.centos.org/download/
制作镜像准备环境12345678# ----------------# 宿主机# ----------------# 基础环境准备yum install -y qemu-kvm qemu-img virt-manager virt-install libvirt# kvm内核支持(宿主机为虚机时需要开启CPU嵌套虚拟化)lsmod | grep kvm
命令方式创建虚机1234567891011121314151617181920# 基础准备mkdir -p /data/kvm/diskmkdir -p /data/kvm/imageNAME=centosDISK=/data/kvm/disk/centos.qcow2CDROM=/data/kvm/image/CentOS-7-x86_64-Minimal-7.8.2003.iso# 创建空镜像文件qemu-img create -f qcow2 /data/kvm/image/centos.qcow2 10G # 创建虚机v ...
Linux配置:GNOME桌面
简介
GNOME是一种GNU网络对象模型环境 ,GNU计划的一部分,开放源码运动的一个重要组成部分,是一种让使用者容易操作和设定电脑环境的工具,目标是基于自由软件,为Unix或者类Unix操作系统构造一个功能完善、操作简单以及界面友好的桌面环境,是GNU计划的正式桌面。
GNOME可以运行在包括GNU/Linux(通常叫做Linux),Solaris,HP-UX,BSD和Apple’s Darwin系统上. GNOME 拥有很多强大的特性,如:高质量的平滑文本渲染, 首个国际化和可用性支持, 并且包括对反向文本的支持(注: 有些国家的文字是从右到左的排版的)。
GNOME运行在大多数类Unix系统,并被Sun Microsystems公司采纳为Solaris平台的标准桌面,取代了过时的CDE。Sun Microsystems公司也以Java Desktop System名义发布一个商业版的桌面:一个被SUSELinux系统使用的基于GNOME的桌面。GNOME也移植到Cygwin使其能运行于Microsoft Windows。GNOME 还被众多LiveCDLinux发行版使用,如Gn ...
Linux配置:VNC Server
简介VNC (Virtual Network Console),即 虚拟网络控制台。它是一款优秀的远程控制工具软件,而且是基于 UNIX 和 Linux 操作系统的免费开源的。
1、优点远程控制能力强大,高效实用,其性能可以和 Windows 和 MAC 中的任何远程控制软件媲美
2、VNC基本上是由两部分组成
一部分是客户端的应用程序(vncviewer);
另外一部分是服务器端的应用程序(vncserver);
3、特点
同样可以远程连入UNIX、Linux进行图形化操作的还有流行的Xmanager,VNC与之相比——两者工作原理不一样;
VNC 是远程连入操作系统,所有操作在UNIX、Linux主机服务端进行,即使操作过程中“本地电脑与操作主机网络断开”,也不影响操作的顺利进行;
Xmanager 是通过端口将主机服务器的UI界面引导到本地电脑进行展现,如操作过程出现“本地电脑与操作主机网络断开”,操作将中断失败!如果操作中进行的工作任务非常重要,不能中断,如ORACLE RAC实施,结果是灾难性的;
更重要的是,VNC是免费的、开源的,Xmanager收费的;
...
OpenStack使用:自定义实例root密码
OpenStack安装信息
安装工具:kolla ansible
安装版本:Train版
虚拟化层:qemu
Nova配置:默认配置,未做修改
官方镜像地址
Cirros:https://download.cirros-cloud.net/
Centos:http://cloud.centos.org/centos/
Ubuntu:http://cloud-images.ubuntu.com/releases/
密码注入:Cloud Init
推荐使用该方式修改root密码,适用性强。
创建实例时,在配置项填写定制化脚本,并勾选配置驱动(默认不勾选,不勾选会出现密码不生效的问题)
支持两种形式内容,一种是cloud-init配置文件,另一种是脚本文件。
传入cloud-init配置文件,内容参考如下,有以下几点要特别注意:
#cloud-config 井号和cloud-config中间不能有空格,有空格就会注入失败
root:123456 中间不能有空格,有空格就会注入失败
Windows使用cloudbase-init工具进行初始化,传入的userdata与linux中 ...
Docker使用:通用手册
常用命令Docker管理命令1234567891011121314151617181920212223242526272829303132333435363738394041424344# 调整docker exec终端高度和宽度docker exec -it --env COLUMNS=`tput cols` --env LINES=`tput lines` mariadb bash# 运行容器docker run -it --rm <image_id> bash# 查看镜像打包记录(Dockerfile文件内容)docker history <image_id># 重命名镜像repository和tagdocker tag <image id> <new repository>:<new tag># 列出所有的容器 IDdocker ps -aq# 停止所有的容器docker stop $(docker ps -aq)# 删除所有的容器docker rm $(docker ps -aq)# 删除所有的镜像docker rm ...