热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

双网卡安装OpenstackFolsom+Quantum过程记录

OpenstackFolsom发布好久了,但由于新的组件Quantum的加入,以及知识的跨度,比如同时需要系统管理及网络工程方面的知识,所以Folsom的安装还是挺费事的。经过几天的测试,参考各种文档,终于完成了Folsom基于双网卡的安装,总结至此。1.需求说明

Openstack Folsom 发布好久了,但由于新的组件Quantum的加入,以及知识的跨度,比如同时需要系统管理及网络工程方面的知识,所以Folsom的安装还是挺费事的。

经过几天的测试,参考各种文档,终于完成了Folsom基于双网卡的安装,总结至此。

1. 需求说明

====================

:节点名称: NICs

:控制节点: eth0 (100.10.10.51), eth1 (192.168.100.51)

:网络节点: eth0 (100.10.10.52), eth2 (0.0.0.0)

:计算节点: eth0 (100.10.10.53)

**备注 1: ** 本文为双网卡安装Folsom设计,根据官方说明,网络节点最好采用三块网卡控制节点可以和计算节点合二为一.

**备注 2:** 本文安装指南环境为实现Folsom功能评估,力求简单方便,安全性差,不可用于生产环境。

**备注 3: ** 本文不适用于虚拟机环境.请使用物理计算机安装.

.. image:: http://i.imgur.com/4D51h.jpg

2. 控制节点

===============

2.1. 准备系统

-----------------

* 安装系统注意事项::

    - ubuntu-12.10-server-amd64.iso

    - 为Cinder服务预留独立分区 例如: /dev/sda5

    - 提前定义好各服务器主机名及IP,尽量别改,一定要改,请修改/etc/hosts中的对应关系

* 以下所有命令均在root权限下完成,所以在装好ubuntu后,请切换到root::

   sudo passwd

   su

* 更新系统(依据笔者经验,安装完Folsom环境后最好别再使用dist-upgrade,以免产生些许小问题,如虚拟机获得不了ip等..)::

   apt-get update

   apt-get upgrade

   apt-get dist-upgrade

* 因为要更新和下载的软件比较多,可以在空闲时间一次更新系统并提前安装所需要软件,以后只需要配置就行了:

   apt-get update && apt-get dist-upgrade -y && apt-get update -y && apt-get dist-upgrade -y && apt-get install -y rabbitmq-server ntp vlan bridge-utils keystone curl openssl glance quantum-server quantum-plugin-openvswitch nova-api nova-cert novnc nova-consoleauth nova-scheduler nova-novncproxy cinder-api cinder-scheduler cinder-volume iscsitarget open-iscsi iscsitarget-dkms openstack-dashboard memcached python-mysqldb mysql-server 

2.2.配置网卡

------------

* 主控应该有一个外网网卡::

   #访问Openstack API 

   auto eth1

   iface eth1 inet static

   address 192.168.100.51

   netmask 255.255.255.0

   gateway 192.168.100.1

   dns-nameservers 8.8.8.8

   #管理网络和虚拟机网络合二为一

   auto eth0

   iface eth0 inet static

   address 100.10.10.51

   netmask 255.255.255.0

* 重启网络服务::

   service networking restart

2.3. MySQL & RabbitMQ

------------

* 安装 MySQL 和 RabbitMQ::

   apt-get install mysql-server python-mysqldb rabbitmq-server 

* 配置Mysql监听所有地址::

   sed -i 's/127.0.0.1/0.0.0.0/g' /etc/mysql/my.cnf

   service mysql restart

* 为了简化安装,以后所有连接mysql服务均使用 root:password登录,将root权限更改为所有主机可以访问(默认只能本机访问)

   mysql -uroot -ppassword

   use mysql;

   update user set host='%' where user='root' and host='localhost';

   flush privileges;

* 创建所有必须的数据库::

   create database keystone;

   create database nova;

   create database glance;

   create database cinder;

   create database quantum;

2.4. 节点时间同步

------------------

* 安装时间服务器,其它节点时间同此服务器同步::

   apt-get install ntp

   sed -i 's/server ntp.ubuntu.com/server ntp.ubuntu.comserver 127.127.1.0fudge 127.127.1.0 stratum 10/g' /etc/ntp.conf

   service ntp restart  

2.5. Others

-------------------

* 安装其它服务::

   apt-get install vlan bridge-utils

* 允许IP转发::

   vi /etc/sysctl.conf

   net.ipv4.conf.all.rp_filter = 0

   net.ipv4.conf.default.rp_filter = 0 

   sysctl net.ipv4.ip_forward=1

   # 检查一下

   sysctl -p 

2.6. Keystone

-------------------

* 安装组件::

   apt-get install keystone

* 编辑 /etc/keystone/keystone.conf 数据库连接::

   cOnnection= mysql://root:password@100.10.10.51/keystone

* 重启keystone并初始化数据库::

   service keystone restart

   keystone-manage db_sync

* 使用 `自动化脚本 `_ 创建keystone用户、服务、服务端点。为了简化,这里只创建admin一个用户,请不要修改此用户密码。 

    bash keystone_basic.sh

    执行一次,否则会创建多个service

    bash keystone_endpoints_basic.sh

* 创建/root/novarc文件,写入以下内容::

    export OS_TENANT_NAME=admin

    export OS_TENANT_ID=c7fb80d964a24ab1bc0fd370696c804e

    export OS_USERNAME=admin

    export OS_PASSWORD=password

    export OS_AUTH_URL="http://127.0.0.1:35357/v2.0"

    export OS_REGION_NAME=RegionOne

    export OS_IDENTITY_API_VERSION=2.0

    export SERVICE_TOKEN=ADMIN

    export SERVICE_ENDPOINT="http://127.0.0.1:35357/v2.0"

    各项值请根据实际情况替换

    keystone tenant-list

    将获取的tenant_id替换到novarc

    source /root/novarc

    echo "source /root/novarc" >> ~/.bashrc

2.7. Glance

-------------------

* 安装组件

    apt-get install glance

* 分别修改 /etc/glance/glance-api-paste.ini 和/etc/glance/glance-registry-paste.ini::

   [filter:authtoken]

   paste.filter_factory = keystone.middleware.auth_token:filter_factory

   auth_host = 100.10.10.51

   auth_port = 35357

   auth_protocol = http

   admin_tenant_name = admin

   admin_user = admin

   admin_password = password

* 分别修改 /etc/glance/glance-api.conf 和/etc/glance/glance-registry.conf ::

   sql_cOnnection= mysql://root:password@100.10.10.51/glance

   [paste_deploy]

   flavor = keystone

* 重启glance服务并同步glance数据库::

   service glance-api restart; service glance-registry restart

   glance-manage db_sync

* 测试glance 服务,不输出任何结果代表成功::

    glance index

* 上传个镜像::

   wget https://launchpad.net/cirros/trunk/0.3.0/+download/cirros-0.3.0-x86_64-disk.img

   glance image-create --name myFirstImage --is-public true --container-format bare

    --disk-format qcow2 < cirros-0.3.0-x86_64-disk.img

* 再查看一下::

   glance image-list

2.8. Quantum

-------------------

* 安装组件::

   apt-get install quantum-server quantum-plugin-openvswitch

* 修改 /etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini,移动后文件最后,有模板:: 

   [DATABASE]

   sql_cOnnection= mysql://root:password@100.10.10.51/quantum

   #Under the OVS section

   [OVS]

   tenant_network_type = gre

   tunnel_id_ranges = 1:1000

   enable_tunneling = True

* 修改 /etc/quantum/api-paste.ini ::

   [filter:authtoken]

   paste.filter_factory = keystone.middleware.auth_token:filter_factory

   auth_host = 100.10.10.51

   auth_port = 35357

   auth_protocol = http

   admin_tenant_name = admin

   admin_user = admin

   admin_password = password

* 重启 quantum server::

   service quantum-server restart

2.9. Nova

-------------------

* 安装组件::

   apt-get install -y nova-api nova-cert novnc nova-consoleauth nova-scheduler nova-novncproxy

* 修改 /etc/nova/api-paste.ini ::

   [filter:authtoken]

   paste.filter_factory = keystone.middleware.auth_token:filter_factory

   auth_host = 100.10.10.51

   auth_port = 35357

   auth_protocol = http

   admin_tenant_name = admin

   admin_user = admin

   admin_password = password

   signing_dirname = /tmp/keystone-signing-nova

* Modify the /etc/nova/nova.conf like this::

   [DEFAULT]

   logdir=/var/log/nova

   state_path=/var/lib/nova

   lock_path=/run/lock/nova

   verbose=True

   api_paste_cOnfig=/etc/nova/api-paste.ini

   scheduler_driver=nova.scheduler.simple.SimpleScheduler

   s3_host=100.10.10.51

   ec2_host=100.10.10.51

   ec2_dmz_host=100.10.10.51

   rabbit_host=100.10.10.51

   cc_host=100.10.10.51

   dmz_cidr=169.254.169.254/32

   metadata_host=100.10.10.51

   metadata_listen=0.0.0.0

   nova_url=http://100.10.10.51:8774/v1.1/

   sql_cOnnection=mysql://novaUser:novaPass@100.10.10.51/nova

   ec2_url=http://100.10.10.51:8773/services/Cloud 

   root_helper=sudo nova-rootwrap /etc/nova/rootwrap.conf

   # Auth

   use_deprecated_auth=false

   auth_strategy=keystone

   keystone_ec2_url=http://100.10.10.51:5000/v2.0/ec2tokens

   # Imaging service

   glance_api_servers=100.10.10.51:9292

   image_service=nova.image.glance.GlanceImageService

   # Vnc configuration

   novnc_enabled=true

   novncproxy_base_url=http://192.168.100.51:6080/vnc_auto.html

   novncproxy_port=6080

   vncserver_proxyclient_address=192.168.100.51

   vncserver_listen=0.0.0.0 

   # Network settings

   network_api_class=nova.network.quantumv2.api.API

   quantum_url=http://100.10.10.51:9696

   quantum_auth_strategy=keystone

   quantum_admin_tenant_name=admin

   quantum_admin_username=admin

   quantum_admin_password=password

   quantum_admin_auth_url=http://100.10.10.51:35357/v2.0

   libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver

   linuxnet_interface_driver=nova.network.linux_net.LinuxOVSInterfaceDriver

   firewall_driver=nova.virt.libvirt.firewall.IptablesFirewallDriver

   # Compute #

   compute_driver=libvirt.LibvirtDriver

   # Cinder #

   volume_api_class=nova.volume.cinder.API

   osapi_volume_listen_port=5900

* 初始化nova数据库::

   nova-manage db sync

* 重启所有nova服务::

   cd /etc/init.d/; for i in $( ls nova-* ); do sudo service $i restart; done   

* 检查nova服务,有笑脸图标,证明服务正常::

   nova-manage service list

    Binary           Host             Zone             Status     State Updated_At

    nova-cert        sm1u07           nova             enabled    :-)   2013-03-15 12:08:31

    nova-consoleauth sm1u07           nova             enabled    :-)   2013-03-15 12:08:30

    nova-scheduler   sm1u07           nova             enabled    :-)   2013-03-15 12:08:30

2.10. Cinder

-------------------

* 安装组件::

   apt-get install cinder-api cinder-scheduler cinder-volume iscsitarget open-iscsi iscsitarget-dkms

* 打开iscsi服务::

   sed -i 's/false/true/g' /etc/default/iscsitarget

   service iscsitarget start

   service open-iscsi start

* 修改 /etc/cinder/api-paste.ini 认证信息::

   [filter:authtoken]

   paste.filter_factory = keystone.middleware.auth_token:filter_factory

   service_protocol = http

   service_host = 100.10.10.51

   service_port = 5000

   auth_host = 100.10.10.51

   auth_port = 35357

   auth_protocol = http

   admin_tenant_name = admin

   admin_user = password

   admin_password = password

* 修改the /etc/cinder/cinder.conf to::

   [DEFAULT]

   rootwrap_cOnfig=/etc/cinder/rootwrap.conf

   sql_cOnnection= mysql://root:password@100.10.10.51/cinder

   api_paste_cOnfg= /etc/cinder/api-paste.ini

   iscsi_helper=ietadm

   volume_name_template = volume-%s

   volume_group = cinder-volumes

   verbose = True

   auth_strategy = keystone

* 初始化cinder数据库::

   cinder-manage db sync

* 创建cinder使用的物理卷及卷组::

   pvcreate /dev/sda5

   vgcreate cinder-volumes /dev/sda5

   service cinder-volume restart

   service cinder-api restart

2.11. 控制面板

-------------------

* 安装组件 ::

   apt-get install openstack-dashboard memcached

* dashboard依赖apache和memcache::

   service apache2 restart; service memcached restart

现在可以访问Dashboard了 **http://192.168.100.51/horizon** 用户名密码 **admin:password**.

3. 网络节点

=========================

3.1. 准备系统

------------------

* 安装ubuntu12.01::

   apt-get update

   apt-get upgrade

   apt-get dist-upgrade

    快速:

    apt-get update && apt-get dist-upgrade -y && apt-get install -y ntp vlan bridge-utils openvswitch-switch openvswitch-datapath-dkms quantum-plugin-openvswitch-agent quantum-dhcp-agent quantum-l3-agent

* 安装配置基本服务ntp,vlan,bridge-utils::

   apt-get install ntp vlan bridge-utils

   sed -i 's/server ntp.ubuntu.com/server 100.10.10.51/g' /etc/ntp.conf

   service ntp restart  

* 允许ip转发::

   vi /etc/sysctl.conf

   net.ipv4.conf.all.rp_filter = 0

   net.ipv4.conf.default.rp_filter = 0

   sysctl net.ipv4.ip_forward=1

3.2.配置网卡

------------

* 网络节点eth1网卡将做为虚拟机与互联网通讯端口,设置网卡为 promisc mode::

   #虚拟机外网出口

   auto eth1

   iface eth1 inet manual

   up ifconfig $IFACE 0.0.0.0 up

   up ip link set $IFACE promisc on

   down ip link set $IFACE promisc off

   down ifconfig $IFACE down

   #管理网络及内部通信

   auto eth0

   iface eth0 inet static

   address 100.10.10.52

   netmask 255.255.255.0

3.3. OpenVSwitch

------------------

* 安装虚拟交换机::

   apt-get install -y openvswitch-switch openvswitch-datapath-dkms

* 创建网桥::

   #br-int is used for VM integration

   ovs-vsctl add-br br-int

   #br-ex is used for accessing internet.

   ovs-vsctl add-br br-ex

   ovs-vsctl br-set-external-id br-ex bridge-id br-ex

   ovs-vsctl add-port br-ex eth1

   启动br-ex

   ip link set br-ex up

3.4. Quantum

------------------

* 安装quantum组件::

   apt-get -y install quantum-dhcp-agent quantum-l3-agent quantum-plugin-openvswitch-agent

* 编辑/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini :: 

   #Under the database section

   [DATABASE]

   sql_cOnnection= mysql://root:password@100.10.10.51/quantum

   #Under the OVS section

   [OVS]

   tenant_network_type = gre

   tunnel_id_ranges = 1:1000

   integration_bridge = br-int

   tunnel_bridge = br-tun

   local_ip = 100.10.10.52

   enable_tunneling = True

* 更新 /etc/quantum/l3_agent.ini::

   auth_url = http://100.10.10.51:35357/v2.0

   auth_region = RegionOne

   admin_tenant_name = admin

   admin_user = admin

   admin_password = password

   metadata_ip = 100.10.10.51

   metadata_port = 8775

   use_namespaces = False

* 修改 /etc/quantum/dhcp_agent.ini::

   use_namespaces = False

* 修改/etc/quantum/quantum.conf ::

   rabbit_host = 100.10.10.51

* 重启所有服务::

   service quantum-dhcp-agent restart

   service quantum-l3-agent restart

   service quantum-plugin-openvswitch-agent restart

4. 计算节点

=========================

4.1. 准备系统

------------------

* 更新升级::

   apt-get update

   apt-get upgrade

   apt-get dist-upgrade

   快速:

    apt-get update && apt-get dist-upgrade -y && apt-get install -y ntp vlan bridge-utils cpu-checker kvm libvirt-bin pm-utils openvswitch-switch openvswitch-datapath-dkms  quantum-plugin-openvswitch-agent nova-compute-kvm

* 安装 ntp vlan bridge-utils::

   apt-get install ntp vlan bridge-utils

   sed -i 's/server ntp.ubuntu.com/server 100.10.10.51/g' /etc/ntp.conf

   service ntp restart  

* 允许IP转发::

   vi /etc/sysctl.conf

   net.ipv4.conf.all.rp_filter = 0

   net.ipv4.conf.default.rp_filter = 0

   sysctl net.ipv4.ip_forward=1

4.2.配置网卡

------------

* vi /etc/network/interfaces ::

   # 管理网络和内部通讯网络

   auto eth0

   iface eth0 inet static

   address 100.10.10.53

   netmask 255.255.255.0

4.3 KVM

------------------

* 确认硬件支持虚拟化::

   apt-get install cpu-checker

   kvm-ok

* 安装kvm组件::

   apt-get install -y kvm libvirt-bin pm-utils

* 编辑libvirt设备列表支持tun  /etc/libvirt/qemu.conf::

   cgroup_device_acl = [

   "/dev/null", "/dev/full", "/dev/zero",

   "/dev/random", "/dev/urandom",

   "/dev/ptmx", "/dev/kvm", "/dev/kqemu",

   "/dev/rtc", "/dev/hpet","/dev/net/tun"

   ]

* 删除kvm默认网络配置 ::

   virsh net-destroy default

   virsh net-undefine default

* 允许动态迁移 ::

   vi /etc/libvirt/libvirtd.conf 

   listen_tls = 0

   listen_tcp = 1

   auth_tcp = "none"

   vi /etc/init/libvirt-bin.conf

   env libvirtd_opts="-d -l"

   vi /etc/default/libvirt-bin

   libvirtd_opts="-d -l"

   service libvirt-bin restart

4.4. OpenVSwitch

------------------

* 安装 openVSwitch::

   apt-get install -y openvswitch-switch openvswitch-datapath-dkms

* 创建网桥 bridges::

   #br-int will be used for VM integration

   ovs-vsctl add-br br-int

4.5. Quantum

------------------

* 安装 Quantum openvswitch agent::

   apt-get -y install quantum-plugin-openvswitch-agent

* 编辑OVS配置 /etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini:: 

   #Under the database section

   [DATABASE]

   sql_cOnnection= mysql://root:password@100.10.10.51/quantum

   #Under the OVS section

   [OVS]

   tenant_network_type = gre

   tunnel_id_ranges = 1:1000

   integration_bridge = br-int

   tunnel_bridge = br-tun

   local_ip = 100.10.10.53

   enable_tunneling = True

* 修改rabbitMQ IP ::

   vi /etc/quantum/quantum.conf

   rabbit_host = 100.10.10.51

* 重启所有服务::

   service quantum-plugin-openvswitch-agent restart

4.6. Nova

------------------

* 安装nova compute组件::

   apt-get install nova-compute-kvm

* 修改 /etc/nova/api-paste.ini::

   [filter:authtoken]

   paste.filter_factory = keystone.middleware.auth_token:filter_factory

   auth_host = 100.10.10.51

   auth_port = 35357

   auth_protocol = http

   admin_tenant_name = admin

   admin_user = admin

   admin_password = password

   signing_dirname = /tmp/keystone-signing-nova

* 编辑 /etc/nova/nova-compute.conf::

   [DEFAULT]

   libvirt_type=kvm

   libvirt_ovs_bridge=br-int

   libvirt_vif_type=ethernet

   libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver

   libvirt_use_virtio_for_bridges=True

* 修改 /etc/nova/nova.conf  ::

   [DEFAULT]

   logdir=/var/log/nova

   state_path=/var/lib/nova

   lock_path=/run/lock/nova

   verbose=True

   api_paste_cOnfig=/etc/nova/api-paste.ini

   scheduler_driver=nova.scheduler.simple.SimpleScheduler

   s3_host=100.10.10.51

   ec2_host=100.10.10.51

   ec2_dmz_host=100.10.10.51

   rabbit_host=100.10.10.51

   cc_host=100.10.10.51

   dmz_cidr=169.254.169.254/32

   metadata_host=100.10.10.51

   metadata_listen=0.0.0.0

   nova_url=http://100.10.10.51:8774/v1.1/

   sql_cOnnection=mysql://novaUser:novaPass@100.10.10.51/nova

   ec2_url=http://100.10.10.51:8773/services/Cloud 

   root_helper=sudo nova-rootwrap /etc/nova/rootwrap.conf

   # Auth

   use_deprecated_auth=false

   auth_strategy=keystone

   keystone_ec2_url=http://100.10.10.51:5000/v2.0/ec2tokens

   # Imaging service

   glance_api_servers=100.10.10.51:9292

   image_service=nova.image.glance.GlanceImageService

   # Vnc configuration

   novnc_enabled=true

   novncproxy_base_url=http://192.168.100.51:6080/vnc_auto.html

   novncproxy_port=6080

   vncserver_proxyclient_address=100.10.10.53

   vncserver_listen=0.0.0.0 

   # Network settings

   network_api_class=nova.network.quantumv2.api.API

   quantum_url=http://100.10.10.51:9696

   quantum_auth_strategy=keystone

   quantum_admin_tenant_name=admin

   quantum_admin_username=admin

   quantum_admin_password=password

   quantum_admin_auth_url=http://100.10.10.51:35357/v2.0

   libvirt_vif_driver=nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver

   linuxnet_interface_driver=nova.network.linux_net.LinuxOVSInterfaceDriver

   firewall_driver=nova.virt.libvirt.firewall.IptablesFirewallDriver

   # Compute #

   compute_driver=libvirt.LibvirtDriver

   # Cinder #

   volume_api_class=nova.volume.cinder.API

   osapi_volume_listen_port=5900

* Restart nova-* services::

   cd /etc/init.d/; for i in $( ls nova-* ); do sudo service $i restart; done   

* Check for the smiling faces on nova-* services to confirm your installation::

   nova-manage service list

5. 创建虚拟机

============

* 使用 管理虚拟机

* 编辑安全组,允许所有协议,tcp,udp,icmp

    root@sm1u07:~# nova secgroup-list-rules default

    Please enter password for encrypted keyring: 

+-------------+-----------+---------+-----------+--------------+

| IP Protocol | From Port | To Port | IP Range  | Source Group |

+-------------+-----------+---------+-----------+--------------+

| icmp        | -1        | 255     | 0.0.0.0/0 |              |

| tcp         | 1         | 65535   | 0.0.0.0/0 |              |

| udp         | 1         | 65535   | 0.0.0.0/0 |              |

+-------------+-----------+---------+-----------+--------------+

* 使用脚本 `quantum.sh `_ 为admin创建相关的网络,即虚拟机内网和外网

* 查看创建好的网络

    root@hp4u:~# quantum net-list

+--------------------------------------+-----------+--------------------------------------+

| id                                   | name      | subnets            |

+--------------------------------------+-----------+--------------------------------------+

| 14dbb282-c74a-4784-bfc3-351f7ca3d034 | ext_net   | 95bddb90-84dc-4579-99b8-798a393a3edf |

| d402e168-cbda-4345-8ffa-015e6a1c4aa1 | admin-net | 8ef3c4dd-a265-421c-afa2-6cff28ae2c74 |

+--------------------------------------+-----------+--------------------------------------+

    root@hp4u:~# quantum router-list

+--------------------------------------+-----------------+--------------------------------------------------------+

| id                                   | name            | external_gateway_info                |

+--------------------------------------+-----------------+--------------------------------------------------------+

| 623b68f4-967a-4028-9a92-dc5a7d3e16e8 | provider-router | {"network_id": "14dbb282-c74a-4784-bfc3-351f7ca3d034"} |

+--------------------------------------+-----------------+--------------------------------------------------------+

* 修改 /etc/quantum/l3_agent.ini :

     gateway_external_network_id = 14dbb282-c74a-4784-bfc3-351f7ca3d034

     router_id = 623b68f4-967a-4028-9a92-dc5a7d3e16e8

     service quantum-l3-agent restart  

* 使用控制面板创建一个虚拟机,并记录vm-uuid,勇冠vm-uuid获取vm的端口id

     quantum port-list -- --device_id

* 目前horizon不支持quantum的floatingip操作,通过quantum 命令行为vm 分配floatingip,

     quantum floatingip-create --port_id

* 大功告成,现在你可以去dashboard中用vnc登录vm,测试一下各个网络是否通畅


推荐阅读
  • docker镜像重启_docker怎么启动镜像dock ... [详细]
  • 搭建Jenkins、Ant与TestNG集成环境
    本文详细介绍了如何在Ubuntu 16.04系统上配置Jenkins、Ant和TestNG的集成开发环境,涵盖从安装到配置的具体步骤,并提供了创建Windows Slave节点及项目构建的指南。 ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • 本文探讨了为何相同的HTTP请求在两台不同操作系统(Windows与Ubuntu)的机器上会分别返回200 OK和429 Too Many Requests的状态码。我们将分析代码、环境差异及可能的影响因素。 ... [详细]
  • 本文详细介绍了一种通过MySQL弱口令漏洞在Windows操作系统上获取SYSTEM权限的方法。该方法涉及使用自定义UDF DLL文件来执行任意命令,从而实现对远程服务器的完全控制。 ... [详细]
  • yikesnews第11期:微软Office两个0day和一个提权0day
    点击阅读原文可点击链接根据法国大选被黑客干扰,发送了带漏洞的文档Trumps_Attack_on_Syria_English.docx而此漏洞与ESET&FireEy ... [详细]
  • ThinkPHP 数据库配置详解
    本文详细介绍了如何在 ThinkPHP 框架中正确配置数据库连接参数,包括数据库类型、服务器地址、数据库名称等关键配置项。 ... [详细]
  • Symfony是一个功能强大的PHP框架,以其依赖注入(DI)特性著称。许多流行的PHP框架如Drupal和Laravel的核心组件都基于Symfony构建。本文将详细介绍Symfony的安装方法及其基本使用。 ... [详细]
  • 深入解析ESFramework中的AgileTcp组件
    本文详细介绍了ESFramework框架中AgileTcp组件的设计与实现。AgileTcp是ESFramework提供的ITcp接口的高效实现,旨在优化TCP通信的性能和结构清晰度。 ... [详细]
  • 本文详细介绍了 phpMyAdmin 的安装与配置方法,适用于多个版本的 phpMyAdmin。通过本教程,您将掌握从下载到部署的完整流程,并了解如何根据不同的环境进行必要的配置调整。 ... [详细]
  • 本文详细介绍了如何检查和配置电脑上的PHP环境,包括位数、运行支持以及文件格式的打开方式。适合初学者了解PHP的基础知识和操作方法。 ... [详细]
  • 优化Flask应用的并发处理:解决Mysql连接过多问题
    本文探讨了在Flask应用中通过优化后端架构来应对高并发请求,特别是针对Mysql 'too many connections' 错误的解决方案。我们将介绍如何利用Redis缓存、Gunicorn多进程和Celery异步任务队列来提升系统的性能和稳定性。 ... [详细]
  • 访问一个网页的全过程
    准备:DHCPUDPIP和以太网启动主机,用一根以太网电缆连接到学校的以太网交换机,交换机又与学校的路由器相连.学校的这台路由器与一个ISP链接,此ISP(Intern ... [详细]
  • ArcXML:互联网空间数据交换的专用语言
    ArcXML是一种专为ArcIMS平台设计的数据交换协议,基于XML标准,用于在不同组件之间传输和描述地理空间数据。本文将详细介绍ArcXML的背景、用途及其与XML的关系。 ... [详细]
  • 软件工程课堂测试2
    要做一个简单的保存网页界面,首先用jsp写出保存界面,本次界面比较简单,首先是三个提示语,后面是三个输入框,然 ... [详细]
author-avatar
mobiledu2502925915
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有