Openstack基础环境交换机常用配置(CISCO 3750G为例).md

Openstack基础环境交换机常用配置(CISCO 3750G为例)

NOTE:
用户模式提示符为:cisco>
特权模式提示符为:cisco#
全局配置模式提示符为:cisco(config)#
端口模式提示符为:cisco(config-if)#

基础操作

先用console线连接交换机

初始化配置

备份原交换机配置

cisco#show run

在终端执行完上面配置,可直接用复制下来,作为配置备份

cisco#copy vlan.dat vlan.bak
cisco#copy config.text config.bak

将原配置保存到交换机

交换机重置

硬重置

长按电源按钮或者复位按钮(部分交换机有)
上面两步看情况执行,重置属于极端情况

软重置
cisco#delete vlan.dat
cisco#delete config.text
cisco#reload

交换机初始化配置

设置主机名密码

cisco(config)#hostname cisco
cisco(config)#enable password test
cisco(config)#enable secret cisco

三层交换机开启路由功能

cisco(config)#ip routing 

PXE 配置

配置生成树协议

启用 Portfast 增强功能,如果不配置的话接口检查时间大约50s大于pxe超时时间会导致接收不打pxe信息
Portfast 是生成树的 Cisco 增强功能,允许端口从已阻塞 (blocked)/已禁用 (disabled)/学习 (learning)/侦听 (listening) 状态转换为转发 (forwarding) 状态。通过启用 portfast,设备可以在端口初始化后立即发送和接收数据。

cisco(config)#int range gi 2/0/1-48
cisco(config-if-range)#spanning-tree portfast 
cisco(config-if-range)#exit
配置交换机禁用自身dhcp
cisco(config)#no service dhcp

VLAN划分

新建vlan并设置vlanip(即该段的网关)

cisco(config)#int vlan 100
cisco(config-if)#ip addr 192.168.100.1 255.255.255.0
cisco(config-if)#exit

将一个接口加入vlan

cisco(config)#int gi 2/0/40
cisco(config-if)#switchport mode access
cisco(config-if)#switchport access vlan 100
cisco(config-if)#exit

将一组接口加进vlan

cisco(config)#int range gi 2/0/1-24
cisco(config-if-range)#switchport mode access
cisco(config-if-range)#switchport access vlan 100
cisco(config-if-range)#exit

trunk配置

如果一个接口要通过多个vlan或者级联交换机,则使用trunk,openstack里面trunk口多用于透传平台业务网(虚拟机对外网络)

cisco(config)#int range gi 2/0/25-35
cisco(config-if-range)#switchport mode trunk
cisco(config-if-range)#switchport trunk encapsulation dot1q
cisco(config-if-range)#switchport trunk allowed vlan all 
#允许所有vlan通过,如果允许特定vlan通过,把all改成特定vlanid就可以
cisco(config-if-range)#exit

交换机远程管理配置

如果交换机级联则可使用vlan1的地址作为管理ip,不级联的话使用任意up vlan的地址即可,如果vlan是启用的并且配有ip地址则在特权模式下用show ip route命令可以看到
例如将vty0-5配置ssh 6-10配置telnet

设置用户名密码

cisco(config)#username cisco password cisco

设置交换机全局ssh配置

cisco(config)#ip ssh time-out 120
cisco(config)#ip ssh authentication-retries 3
cisco(config)#ip ssh version 2

配置虚拟终端允许ssh

cisco(config)#line vty 0 5
cisco(config-line)#transport input ssh
cisco(config-line)#exit

配置终端允许telnet

cisco(config)#line vty 6 10
cisco(config-line)#transport input telnet
cisco(config-line)#exit

配置完以上就可以插跟网线到交换机的某个access口 配相应vlan的地址 然后就可以在终端上用ssh/telnet vlanid 以及刚刚设置的用户名密码连接交换机了

进阶操作

交换机堆叠操作

端口聚合操作(lacp)

cisco(config)#interface port-channel 3
# 创建聚合组
cisco(config-if)#description sw1 to sw2
# 设置端口描述 
cisco(config-if)#switchport mode access
# 设置端口模式access 如果是trunk 则为switchport mode trunk    switchport trunk encapsulation dot1q
cisco(config-if)#switchport access vlan 100
# 设置vlan
cisco(config-if)#exit

cisco(config)#int gi 2/0/39
cisco(config-if)#channel-group 3 mode active 
# 将端口加入聚合组
cisco(config-if)#exit

参考文档
https://docs.oracle.com/cd/E50699_01/html/E50060/glzbk.html

<think>根据用户需求,我们需要在CentOS7上配置OpenStack基础环境OpenStack是一个开源的云计算管理平台,提供基础设施即服务(IaaS)的解决方案。配置过程包括系统环境准备、安装OpenStack包、配置网络等步骤。以下是在CentOS7上配置OpenStack基础环境的步骤:###1.系统环境准备####1.1配置主机名和网络-设置主机名(如:controller)```bashsudo hostnamectlset-hostname controller``` -配置静态IP(编辑网络配置文件)```bashsudovi /etc/sysconfig/network-scripts/ifcfg-ens33```修改内容如下:```iniBOOTPROTO=staticONBOOT=yesIPADDR=10.0.0.11#根据实际网络修改NETMASK=255.255.255.0GATEWAY=10.0.0.2DNS1=10.0.0.2```重启网络服务:```bashsudosystemctlrestart network``` ####1.2关闭防火墙和SELinux-关闭防火墙:```bashsudo systemctl stopfirewalldsudosystemctldisable firewalld``` -关闭SELinux:```bashsudosetenforce0sudosed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config```####1.3配置主机名解析编辑`/etc/hosts`文件,添加所有节点的主机名和IP地址:```bash10.0.0.11 controller10.0.0.12compute1```####1.4安装依赖包```bashsudoyuminstall -y net-toolsbash-completion vim gcc gcc-c++ makepcrepcre-develexpat-develcmakebzip2``` ###2.安装OpenStack客户端和SELinux管理包```bashsudo yum install-ycentos-release-openstack-trainsudo yum update-ysudoyuminstall -y python-openstackclient openstack-selinuxopenstack-utils```- `python-openstackclient`:OpenStack命令行客户端- `openstack-selinux`:自动管理OpenStack服务的安全策略- `openstack-utils`:OpenStack实用工具###3.配置时间同步(NTP) 确保所有节点时间同步: ```bashsudo yum install-ychronysudosystemctlenable chronydsudo systemctl startchronyd```###4.安装数据库(MariaDB)OpenStack使用数据库存储信息: ```bashsudo yum install-ymariadbmariadb-serverpython2-PyMySQLsudo systemctl enablemariadbsudosystemctlstart mariadb``` 运行安全配置脚本: ```bashsudo mysql_secure_installation```###5.安装消息队列(RabbitMQ) OpenStack使用消息队列协调服务: ```bashsudo yum install-yrabbitmq-serversudo systemctl enablerabbitmq-serversudo systemctl startrabbitmq-server``` 添加OpenStack用户:```bashsudorabbitmqctl add_user openstack RABBIT_PASS#替换RABBIT_PASS为实际密码sudo rabbitmqctlset_permissions openstack ".*"".*" ".*"``` ###6.安装Memcached身份认证服务(Keystone)使用Memcached缓存令牌: ```bashsudo yum install-ymemcached python-memcachedsudosystemctlenable memcachedsudosystemctlstart memcached```###7.安装身份认证服务(Keystone) Keystone是OpenStack的身份认证服务:```bashsudo yum install-yopenstack-keystone httpd mod_wsgi``` 配置Keystone(编辑`/etc/keystone/keystone.conf`): ```ini[database] connection= mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone#替换KEYSTONE_DBPASS[token]provider =fernet```初始化数据库: ```bashsudo su-s/bin/sh -c "keystone-managedb_sync"keystone```初始化Fernet密钥: ```bashsudo keystone-manage fernet_setup --keystone-user keystone --keystone-group keystonesudo keystone-manage credential_setup--keystone-userkeystone--keystone-groupkeystone```引导身份服务:```bashsudokeystone-managebootstrap --bootstrap-passwordADMIN_PASS \--bootstrap-admin-urlhttp://controller:5000/v3/ \--bootstrap-internal-url http://controller:5000/v3/\--bootstrap-public-url http://controller:5000/v3/\--bootstrap-region-idRegionOne```配置ApacheHTTP服务器: ```bashsudo ln-s/usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/ sudosystemctlenable httpdsudo systemctl starthttpd```配置环境变量:```bashexportOS_USERNAME=adminexport OS_PASSWORD=ADMIN_PASSexport OS_PROJECT_NAME=adminexport OS_USER_DOMAIN_NAME=Defaultexport OS_PROJECT_DOMAIN_NAME=DefaultexportOS_AUTH_URL=http://controller:5000/v3exportOS_IDENTITY_API_VERSION=3```###8.创建项目、用户和角色创建服务项目: ```bashopenstackproject create--domaindefault --description "Service Project" service```创建用户(如demo): ```bashopenstackuser create--domaindefault --password-prompt demo```创建角色: ```bashopenstackrole createuser``` 将角色添加到用户和项目:```bashopenstack roleadd --project demo--userdemo user```###9.验证安装```bashopenstack tokenissue``` 如果成功返回令牌信息,则Keystone安装成功。 ###后续步骤以上是OpenStack基础环境配置的第一步(Keystone身份服务)。接下来需要安装其他核心服务:- Glance(镜像服务) -Nova(计算服务)- Neutron(网络服务) -Horizon(仪表盘服务) ###注意事项1.所有密码(如`ADMIN_PASS`、`RABBIT_PASS`等)应替换为实际强密码。2.确保所有服务启动后正常运行,检查日志(`/var/log/keystone/keystone.log`等)排查问题。 3.在生产环境中,建议配置TLS加密通信。 §§相关问题§§1.如何安装和配置OpenStack的Glance镜像服务? 2.如何配置OpenStack的Nova计算节点? 3. OpenStack Neutron网络服务如何配置? 4.如何部署OpenStack仪表盘(Horizon)?5.OpenStack多节点部署需要注意哪些问题?</think>### 在 CentOS 7 上配置 OpenStack 基础环境 以下是分步配置指南,基于 CentOS 7 系统部署 OpenStack 基础环境: #### 一、系统环境准备 ```bash # 1. 安装基础依赖包 sudo yum install -y net-tools bash-completion vim gcc gcc-c++ make pcre pcre-devel expat-devel cmake bzip2 # 2. 配置主机名(示) sudo hostnamectl set-hostname controller echo "10.0.0.11 controller" | sudo tee -a /etc/hosts # 3. 关闭防火墙和SELinux sudo systemctl stop firewalld sudo systemctl disable firewalld sudo setenforce 0 sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config # 4. 配置静态IP(示) sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33 ``` 配置内容示: ```ini BOOTPROTO=static ONBOOT=yes IPADDR=10.0.0.11 NETMASK=255.255.255.0 GATEWAY=10.0.0.2 DNS1=10.0.0.2 ``` #### 二、安装 OpenStack 基础包 ```bash # 1. 添加 OpenStack Train 仓库 sudo yum install -y centos-release-openstack-train # 2. 更新系统 sudo yum update -y # 3. 安装核心组件 sudo yum install -y python-openstackclient openstack-selinux openstack-utils # 4. 配置 pip 源(可选) mkdir ~/.pip cat > ~/.pip/pip.conf <<EOF [global] trusted-host = mirrors.aliyun.com index-url = http://mirrors.aliyun.com/pypi/simple EOF ``` #### 三、配置数据库(MariaDB) ```bash # 1. 安装 MariaDB sudo yum install -y mariadb mariadb-server python2-PyMySQL # 2. 创建配置文件 sudo tee /etc/my.cnf.d/openstack.cnf <<EOF [mysqld] bind-address = 10.0.0.11 default-storage-engine = innodb innodb_file_per_table = on max_connections = 4096 collation-server = utf8_general_ci character-set-server = utf8 EOF # 3. 启动服务 sudo systemctl enable mariadb sudo systemctl start mariadb # 4. 安全配置 sudo mysql_secure_installation ``` #### 四、安装消息队列(RabbitMQ) ```bash # 1. 安装 RabbitMQ sudo yum install -y rabbitmq-server # 2. 启动服务 sudo systemctl enable rabbitmq-server sudo systemctl start rabbitmq-server # 3. 添加 OpenStack 用户 sudo rabbitmqctl add_user openstack RABBIT_PASS sudo rabbitmqctl set_permissions openstack ".*" ".*" ".*" ``` #### 五、安装缓存服务(Memcached) ```bash # 1. 安装 Memcached sudo yum install -y memcached python-memcached # 2. 配置服务 sudo sed -i 's/127.0.0.1/10.0.0.11/g' /etc/sysconfig/memcached # 3. 启动服务 sudo systemctl enable memcached sudo systemctl start memcached ``` #### 六、安装身份认证服务(Keystone) ```bash # 1. 创建数据库 mysql -u root -p -e "CREATE DATABASE keystone;" mysql -u root -p -e "GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'KEYSTONE_DBPASS';" mysql -u root -p -e "GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'KEYSTONE_DBPASS';" # 2. 安装软件包 sudo yum install -y openstack-keystone httpd mod_wsgi # 3. 配置 /etc/keystone/keystone.conf sudo crudini --set /etc/keystone/keystone.conf database connection mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone sudo crudini --set /etc/keystone/keystone.conf token provider fernet # 4. 初始化数据库 sudo su -s /bin/sh -c "keystone-manage db_sync" keystone # 5. 初始化 Fernet 密钥 sudo keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone sudo keystone-manage credential_setup --keystone-user keystone --keystone-group keystone # 6. 引导身份服务 sudo keystone-manage bootstrap --bootstrap-password ADMIN_PASS \ --bootstrap-admin-url http://controller:5000/v3/ \ --bootstrap-internal-url http://controller:5000/v3/ \ --bootstrap-public-url http://controller:5000/v3/ \ --bootstrap-region-id RegionOne ``` #### 七、配置 Apache HTTP 服务器 ```bash # 1. 配置虚拟主机 sudo ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/ # 2. 启动服务 sudo systemctl enable httpd sudo systemctl start httpd ``` #### 八、创建 OpenStack 环境变量 ```bash cat >> ~/.bashrc <<EOF export OS_USERNAME=admin export OS_PASSWORD=ADMIN_PASS export OS_PROJECT_NAME=admin export OS_USER_DOMAIN_NAME=Default export OS_PROJECT_DOMAIN_NAME=Default export OS_AUTH_URL=http://controller:5000/v3 export OS_IDENTITY_API_VERSION=3 EOF source ~/.bashrc ``` #### 九、验证安装 ```bash # 1. 创建服务项目 openstack project create --domain default --description "Service Project" service # 2. 验证令牌 openstack token issue ``` ### 关键配置说明 1. **网络规划**: ```mermaid graph LR A[外部网络] --> B(OpenStack API) B --> C[管理网络 10.0.0.0/24] C --> D[控制节点] C --> E[计算节点] ``` 2. **服务端口**: | 服务 | 端口 | 协议 | |------------|--------|-------| | Keystone | 5000 | HTTP | | MariaDB | 3306 | TCP | | RabbitMQ | 5672 | AMQP | | Memcached | 11211 | TCP | ### 验证步骤 ```bash # 1. 检查服务状态 sudo systemctl status mariadb rabbitmq-server memcached httpd # 2. 测试API访问 curl -s http://controller:5000/v3 | python -m json.tool # 3. 检查数据库同步 mysql -u keystone -p -e "USE keystone; SHOW TABLES;" ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值