interface.obsoleted

卢帆新5天前一日游12

  本文参考:https://docs.openstack.org/ocata/install-guide-rdo/index.html官方文档来手把手教你装置Ocata,装置文档中有缝隙的处所,本文都市提及。本指南不会给出所有号令的输出成效,只给出局部须要的表明,因此在装置时最好比较着官方文档停止。

  本文目录:

装置情况

认证办事

镜像办事

计较办事

网络办事

Dashboard

一、装置情况

1、示例架构

  依据官方文档,本文架构采纳一个管制节点和一个计较节点。

  (The example architecture requires at least twonodes (hosts) to launch a basic virtual machine or instance. )

  管制节点运行认证办事、镜像办事、计较办事的办理局部、网络办事的办理局部、各类网络代办署理以及Dashboard,还包含一些根底办事如数据库、消息行列步队以及NTP。

  计较节点上运行计较办事中办理实例的办理顺序局部。默认情况下,计较办事使用 KVM。还运行网络代办署理办事,用来衔接实例和虚拟网络以及经由过程平安组给实例提供防火墙办事。

  2、网络

公有网络

  公有网络选项以尽能够复杂的方法经由过程layer-2(网桥/交流机)办事以及VLAN网络的联系来布置OpenStack网络办事。实际上,它将虚拟网络桥接到物理网络,并依靠物理网络根底举措措施提供layer-3办事(路由)。别的,DHCP办事为实例提供IP地点。

私有网络

  私有网络选项扩展了公有网络选项,减少了layer-3(路由)办事,使用VXLAN近似的方法。实质上,它使用NAT路由虚拟网络到物理网络。别的,这个选项也提供高级办事的根底,比方LBaas和FWaaS。

  这里我们抉择私有网络。

  3、平安

  下面是各个需要暗码的办事以及表明,倡议这些暗码使用同一个,免得混合。

  

  4、主机网络配置

  管制节点

配置网络接口

  Controller:IP:192.168.0.112/24 GATEWAY:192.168.0.1

  网络配置完之后需要将防火墙和selinux敞开。

敞开防火墙:

  systemctl stop firewalld.service

制止防火墙开机启动

  systemctl disable firewalld.service

敞开selinux

  vim /etc/selinux/config,配置selinux=disabled

  # setenforce 0,使配置当即生效

配置地点剖析

  编纂/etc/hosts

  # controller

  192.168.0.112 controller

  # compute1

  192.168.0.113 compute1

  计较节点

配置网络接口。

  Compute:IP:192.168.0.113/24 GATEWAY:192.168.0.1

  同样需要配置地点剖析,参考管制节点。

  配置完成之后需要停止验证:

与外网连通性:

  别离在管制节点和计较节点上:

  # ping -c 4 www.baidu.com

管制节点和计较节点连通性:

  管制节点上输入# ping -c 4 compute1

  计较节点上输入# ping -c 4 controller

5、NTP

  管制节点

装置相关包

  # yum install chrony

编纂 /etc/chrony.conf

  server NTP_SERVER iburst

  可以依据需要将NTP_SERVER替换为适宜的NTP办事器,倡议不消改。而后添加:

  allow 192.168.0.0/24

  即允许计较节点同步。(计较节点IP网段属于192.168.0.0)

  # systemctl enable chronyd.service

  # systemctl start chronyd.service

  启动办事。

  计较节点

  编纂/etc/chrony.conf,可以将其他的几个同阵势址注释失。

  server controller iburst

  同步管制节点。

  # systemctl enable chronyd.service

  # systemctl start chronyd.service

  启动办事。(如果发明同步的不是管制节点,那么重启一下NTP办事即可。)

  # systemctl restart chronyd.service

  验证操纵:

  在管制节点上同步工夫。

  # chronyc sources

  带星号的是NTP当前同步的地点。

  计较节点上同步。

  # chronycsources

  210 Number of sources = 1

  MS Name/IP address

  Stratum Poll Reach LastRx Last sample

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

  ^* controller 3 9 377 421 +15us[ -87us] +/- 15ms

6、装置OpenStack包

  以下操纵在所有节点上停止。

启用OpenStack库:

  # yum install centos-release-openstack-ocata

完成装置

  1)在所有节点上进级包

# yum upgrade

  2)装置OpenStack 客户端

  # yum install python-openstackclient

  3)CentOS默认启用了SELinux,装置openstack-selinux来自动办理OpenStack办事的平安战略。

  # yum install openstack-selinux

  7、装置数据库

  数据库个别运行在管制节点上。

  装置并配置组件。

装置相关包。

  # yum install mariadb mariadb-server python2-PyMySQL

  创立并编纂/etc/my.cnf.d/openstack.cnf 文件,并完成以下操纵。在配置文件中添加以下配置:

  [mysqld]

  bind-address=192.168.0.112

  default-storage-engine=innodb

  innodb_file_per_table=on

  max_connections=4096

  collation-server=utf8_general_ci

  character-set-server=utf8

  此中bind-address为管制节点IP地点。

完成装置

  1)启动数据库并设置开机启动

  # systemctl enable mariadb.service

  # systemctl start mariadb.service

  2)运行mysql_secure_installation剧本来包管数据库平安,为root账户设置一个适宜的暗码

  # mysql_secure_installation

  8、消息行列步队

  OpenStack使用消息行列步队来协调办事之间的状态和操纵,消息行列步队办事个别运行在管制节点上。,OpenStack反对RabbitMQ,Qpid以及ZeroMQ等消息行列步队办事。本指南使用RabbitMQ消息行列步队办事。

装置相关包

  # yum install rabbitmq-server

启动消息行列步队并设置开机启动

  # systemctl enable rabbitmq-server.service

  # systemctl start rabbitmq-server.service

添加openstack用户

  #rabbitmqctl add_user openstack RABBIT_PASS

  Creating user "openstack" ...

  使用适宜的暗码替换失 RABBIT_PASS

允许openstack用户的配置、写、读权限

  #rabbitmqctl set_permissions openstack".*"".*"".*"

  Setting permissions for user "openstack" in vhost "/" ...

9、缓存令牌

  认证办事的认证机制使用Memcached来缓存令牌,个别运行在管制节点上。

装置相关包

  # yum install memcached python-memcached

  编纂 /etc/sysconfig/memcached文件并配置IP地点,将127.0.0.1改为管制节点IP。

完成装置

  启动 Memcached办事并设置开机启动。

  # systemctl enable memcached.service

  # systemctl start memcached.service

二、认证办事

  在 管制节点上配置。 1、前提条件

创立数据库

  以root身份登录数据库

$ mysql -u root -p

  创立keystone数据库

  MariaDB[(none)]> CREATE DATABASE keystone;

  给数据库付与适当的权限;

  MariaDB [(none)]> GRANT ALL PRIVILEGESON keystone.* TO 'keystone'@'localhost'

  IDENTIFIED BY 'KEYSTONE_DBPASS';

  MariaDB [(none)]> GRANT ALL PRIVILEGESON keystone.* TO 'keystone'@'%'

  IDENTIFIED BY 'KEYSTONE_DBPASS';

  用适宜的暗码替换KEYSTONE_DBPASS

  2、装置并配置组件

运行号令装置相关包

  # yum install openstack-keystone httpd mod_wsgi

  编纂文件/etc/keystone/keystone.conf

  在[database]选项配置数据库衔接

  [database]

  # ...

  connection=mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone

  替换失KEYSTONE_DBPASS

  在[token]选项中,配置,Fernet令牌提供者:

  [token]

  # ...

  provider=fernet

同步认证办事数据库

  # su -s/bin/sh -c "keystone-manage db_sync" keystone

初始化Fernetkey堆栈

  # keystone-manage fernet_setup --keystone-user keystone --keystone-

  groupkeystone

  # keystone-manage credential_setup --keystone-user keystone--keystone-groupkeystone

引导认证办事

  # keystone-manage bootstrap --bootstrap-password ADMIN_PASS

  --bootstrap-admin-urlhttps://controller:35357/v3/

  --bootstrap-internal-urlhttps://controller:5000/v3/

  --bootstrap-public-urlhttps://controller:5000/v3/

  --bootstrap-region-id RegionOne

  替换失ADMIN_PASS

配置Apache办事器

编纂/etc/httpd/conf/httpd.conf并配置ServerName选项,使之参考管制节点

给/usr/share/keystone/wsgi-keystone.conf文件创立一个链接

  # ln -s/usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/

完成装置

  1.启动Apache办事器并设置开机启动

  # systemctlenable httpd.service

  # systemctl start httpd.service

  2.配置办理账户

  $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=https://controller:35357/v3

  $export OS_IDENTITY_API_VERSION=3

3、创立一个域、名目、用户和脚色

本指南有一个service 名目,你添加的每一个办事都有独一的用户。

  $ openstack project create --domain default

  --deion "Service Project"service

普通的工作不该该使用具有特权的名目和用户。作为示例,本指南创立一个demo名目和用户。

  1、创立demo名目:

  $ openstack project create --domain default

  --deion "Demo Project"demo

  2、创立demo用户:

  ?

  $ openstack user create --domain default

  --password-prompt demo

  3、创立user脚色:

  $ openstack role create user

  4、将user脚色添加到demo名目和用户中。

  $ openstack role add --project demo --user demo user

4、验证操纵

出于平安性的原因,禁用失临时的认证令牌机制。

  编纂/etc/keystone/keystone-paste.ini文件,并从[pipeline:public_api], [pipeline:admin_api], 和[pipeline:api_v3]选项中删除admin_token_auth

  

勾销设置长期的OS_AUTH_URL和OS_PASSWORD情况变量:

  $unset OS_AUTH_URL OS_PASSWORD

使用admin用户,请求一个认证令牌;

  $ openstack --os-auth-url https://controller:35357/v3

  --os-project-domain-name default--os-user-domain-name default

  --os-project-name admin --os-username admintoken issue

  这里遇到谬误

  

  由于是Http谬误,所以返回Apache HTTP 办事配置的处所,重启Apache 办事,并从头设置办理账户:

  # systemctlrestart httpd.service

  $ 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=https://controller:35357/v3

  $ export OS_IDENTITY_API_VERSION=3

  

  谬误处理!

使用demo用户,请求认证令牌:

  $ openstack--os-auth-url https://controller:5000/v3

  --os-project-domain-namedefault --os-user-domain-name default

  --os-project-namedemo --os-username demo token issue

  Password:

  暗码为创立demo用户时的暗码。

  5、创立OpenStack客户端情况剧本:

  在后面章节中,我们使用情况变量和号令的组合来配置认证办事,为了愈加高效和不便,我们创立一个剧本不便今后的操纵。这些剧本包含一些大众的操纵,可是也反对自界说的操纵。

创立剧本

  创立并编纂admin-openrc文件,并添加以下内容:

  export OS_PROJECT_DOMAIN_NAME=Default

  export OS_USER_DOMAIN_NAME=Default

  export OS_PROJECT_NAME=admin

  export OS_USERNAME=admin

  export OS_PASSWORD=root

  export OS_AUTH_URL=https://controller:35357/v3

  export OS_IDENTITY_API_VERSION=3

  export OS_IMAGE_API_VERSION=2

  替换失OS_PASSWORD的暗码。

  创立并编纂demo-openrc文件,并添加以下内容:

  export OS_PROJECT_DOMAIN_NAME=Default

  export OS_USER_DOMAIN_NAME=Default

  export OS_PROJECT_NAME=demo

  export OS_USERNAME=demo

  export OS_PASSWORD=DEMO_PASS

  export OS_AUTH_URL=https://controller:5000/v3

  export OS_IDENTITY_API_VERSION=3

  export OS_IMAGE_API_VERSION=2

使用剧本

  加载剧本文件更新情况变量:

  $ . admin-openrc

  请求一个认证令牌;

  $ openstack token issue

  三、镜像办事

  1、前提条件

创立数据库

  衔接数据库,使用root登录。

  $ mysql -u root -p

  创立 glance 数据库

  MariaDB [(none)]> CREATE DATABASEglance;

  付与权限:

  MariaDB [(none)]> GRANT ALL PRIVILEGESON glance.* TO 'glance'@'localhost'

  IDENTIFIED BY 'GLANCE_DBPASS';

  MariaDB [(none)]> GRANT ALL PRIVILEGESON glance.* TO 'glance'@'%'

  IDENTIFIED BY 'GLANCE_DBPASS';

  替换GLANCE_DBPASS为适宜的暗码;

  退出数据库衔接。

导入admin证书来获取只有admin才干执行的号令行权限;

  $ . admin-openrc

创立办事认证:

  创立glance用户

  $ openstack user create --domain default --password-prompt glance

  添加办理员脚色到glance用户和service名目中:

  $ openstack role add --project service --user glance admin

创立glance办事实体

  创立镜像办事API端口:

interface.obsoleted

  $ openstack endpoint create --region RegionOne

  imagepublic https://controller:9292

  $ openstack endpoint create --region RegionOne

  image internal https://controller:9292

  $ openstack endpoint create --region RegionOne

  image admin https://controller:9292

2、装置并配置组件

装置相关包:

  # yum install openstack-glance

编纂/etc/glance/glance-api.conf文件,完成以下操纵;

  在[keystone_authtoken]和[paste_deploy]选项中,配置认证办事权限:

  [keystone_authtoken]

  # ...

  auth_uri=https://controller:5000

  auth_url=https://controller:35357

  memcached_servers=controller:11211

  auth_type=password

  project_domain_name=default

  user_domain_name=default

  project_name=service

  username=glance

  password=GLANCE_PASS

  [paste_deploy]

  # ...

  flavor=keystone

  替换失GLANCE_PASS暗码。删除或注释失其他[keystone_authtoken]参数。

  在[glance_store]选项中,配置当地文件零碎存储和镜像文件地位。

  [glance_store]

  # ...

  stores=file,http

  default_store=file

  filesystem_store_datadir=/var/lib/glance/images/

  编纂/etc/glance/glance-registry.conf文件,并完成以下操纵:

  在[database]选项中,配置数据库权限:

  [database]

  # ...

  connection=mysql+pymysql://glance:GLANCE_DBPASS@controller/glance

  替换失 GLANCE_DBPASS暗码。

  在[keystone_authtoken]和[paste_deploy]选项中,配置认证办事权限:

[keystone_authtoken]

  # ...

  auth_uri=https://controller:5000

  auth_url=https://controller:35357

  memcached_servers=controller:11211

  auth_type=password

  project_domain_name=default

  user_domain_name=default

  project_name=service

  username=glance

  password=GLANCE_PASS

  [paste_deploy]

  # ...

  flavor=keystone

  替换失GLANCE_DBPASS暗码。

  4、更新镜像办事数据库

  完成装置

启动镜像办事并设置开机启动。

  # systemctl enable openstack-glance-api.service

  openstack-glance-registry.service

  # systemctl start openstack-glance-api.service

  openstack-glance-registry.service

5、验证操纵

获取admin权限

  $ . admin-openrc

下载源镜像

  $ wget https://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img

上传镜像

  $ openstack image create "cirros"

  --file cirros-0.3.4-x86_64-disk.img

  --disk-format qcow2 --container-format bare

  --public

验证上传镜像:

  openstack image list

interface.obsoleted

四、计较办事

1、装置和配置管制节点

筹办条件

  创立数据库,与之前步调近似,这里不再详细列出

  $ mysql -u root -p

  MariaDB [(none)]> CREATE DATABASEnova_api;

  MariaDB [(none)]> CREATE DATABASE nova;

  MariaDB [(none)]> GRANT ALL PRIVILEGESON nova_api.* TO 'nova'@'localhost'

  IDENTIFIED BY 'NOVA_DBPASS';

  MariaDB [(none)]> GRANT ALL PRIVILEGESON nova_api.* TO 'nova'@'%'

  IDENTIFIED BY 'NOVA_DBPASS';

  MariaDB [(none)]> GRANT ALL PRIVILEGESON nova.* TO 'nova'@'localhost'

  IDENTIFIED BY 'NOVA_DBPASS';

  MariaDB [(none)]> GRANT ALL PRIVILEGESON nova.* TO 'nova'@'%'

  IDENTIFIED BY 'NOVA_DBPASS';

获取admin权限:

  $ . admin-openrc

  创立nova用户

  $ openstack user create --domain default

  --password-prompt nova

  设置适宜的暗码

  向nova用户中添加admin脚色。

  $ openstack role add --project service --user nova admin

  创立nova办事实体

  $ openstack service create --name nova

  --deion "OpenStack Compute" compute

  2、创立计较办事API端口

  $ openstack endpoint create --region RegionOne

  compute public https://controller:8774/v2.1/%(tenant_id)s

  $ openstack endpoint create --region RegionOne

  compute internal https://controller:8774/v2.1/%(tenant_id)s

  $ openstack endpoint create --region RegionOne

  compute admin https://controller:8774/v2.1/%(tenant_id)s

装置并配置组件

  装置相关包

  # yum install openstack-nova-api openstack-nova-conductor

  openstack-nova-console openstack-nova-novncproxy

  openstack-nova-scheduler

编纂 /etc/nova/nova.conf文件

  在[DEFAULT]选项中,开启计较和元数据API

  [DEFAULT]

  # ...

  enabled_apis=osapi_compute,metadata

  在 [api_database]和[database]选项中,配置数据库衔接

  [api_database]

  # ...

  connection=mysql+pymysql://nova:NOVA_DBPASS@controller/nova_api

  [database]

  # ...

  connection=mysql+pymysql://nova:NOVA_DBPASS@controller/nova

  替换NOVA_DBPASS暗码。

  在[DEFAULT]选项中,配置消息行列步队衔接。

  [DEFAULT]

  # ...

  transport_url=rabbit://openstack:RABBIT_PASS@controller

  替换失RABBIT_PASS

  在[api]和[keystone_authtoken]选项中,

  [api]

  # ...

  auth_strategy=keystone

  [keystone_authtoken]

  # ...

  auth_uri=https://controller:5000

  auth_url=https://controller:35357

  memcached_servers=controller:11211

  auth_type=password

  project_domain_name=default

  user_domain_name=default

  project_name=service

  username=nova

  password=NOVA_PASS

  替换失NOVA_PASS

  在[DEFAULT]选项中,配置my_ip

  [DEFAULT]

  # ...

  my_ip=10.0.0.11

  开启对网络办事的反对

  [DEFAULT]

  # ...

  use_neutron=True

  firewall_driver=nova.virt.firewall.NoopFirewallDriver

  在[vnc]选项中,配置VNC代办署理

  [vnc]

  enabled=true

  # ...

  vncserver_listen=$my_ip

  vncserver_proxyclient_address=$my_ip

  在[glance]选项中,配置镜像办事API的地位。

  [glance]

  # ...

  api_servers=https://controller:9292

  在[oslo_concurrency]选项中,配置锁定门路

  [oslo_concurrency]

  # ...

  lock_path=/var/lib/nova/tmp

  更新数据库

  #su -s /bin/sh -c"nova-manage api_db sync"nova

  #su -s /bin/sh -c "nova-manage db sync"nova

完成装置

  开启计较办事并设置开机启动;

  # systemctl enable openstack-nova-api.service

  openstack-nova-consoleauth.service openstack-nova-scheduler.service

  openstack-nova-conductor.service openstack-nova-novncproxy.service

  # systemctl start openstack-nova-api.service

  openstack-nova-consoleauth.service openstack-nova-scheduler.service

  openstack-nova-conductor.service openstack-nova-novncproxy.service

3、装置并配置计较节点

装置并配置组件

  装置相关包

  # yum install openstack-nova-compute

  编纂/etc/nova/nova.conf文件

  在[DEFAULT]选项中,开启计较和元数据API

  [DEFAULT]

  # ...

  enabled_apis=osapi_compute,metadata

  在[DEFAULT]选项中,配置消息行列步队权限

  [DEFAULT]

  # ...

  transport_url=rabbit://openstack:RABBIT_PASS@controller

  替换失RABBIT_PASS

  在[api]和[keystone_authtoken]选项中,配置认证办事权限

  [api]

  # ...

  auth_strategy=keystone

  [keystone_authtoken]

  # ...

  auth_uri=https://controller:5000

  auth_url=https://controller:35357

  memcached_servers=controller:11211

  auth_type=password

  project_domain_name=default

  user_domain_name=default

  project_name=service

  username=nova

  password=NOVA_PASS

  替换失NOVA_PASS

  在[DEFAULT]选项中,配置my_ip参数

  [DEFAULT]

  # ...

  my_ip=MANAGEMENT_INTERFACE_IP_ADDRESS

  替换MANAGEMENT_INTERFACE_IP_ADDRESS为计较节点IP

  在[DEFAULT]选项中,开启网络办事反对

  [DEFAULT]

  # ...

  use_neutron=True

  firewall_driver=nova.virt.firewall.NoopFirewallDriver

  在[vnc]选项中,开启并配置长途管制台权限

  [vnc]

  # ...

  enabled=True

  vncserver_listen=0.0.0.0

  vncserver_proxyclient_address=$my_ip

  novncproxy_base_url=https://controller:6080/vnc_auto.html

  在[glance]选项中,配置镜像办事API地点

  [glance]

  # ...

  api_servers=https://controller:9292

  在[oslo_concurrency]选项,配置锁定门路

  [oslo_concurrency]

  # ...

  lock_path=/var/lib/nova/tmp

  4、完成装置

反省你的计较节点是否反对硬件虚拟化

  $ egrep -c '(vmx|svm)' /proc/cpuinfo

  如果输出值大于即是1,那么不需要配置,不然,需要做一下配置

  编纂/etc/nova/nova.conf文件,配置[libvirt]

  [libvirt]

  # ...

  virt_type=qemu

开启计较办事并设置开机启动

  # systemctl enable libvirtd.serviceopenstack-nova-compute.service

  # systemctl start libvirtd.service openstack-nova-compute.service

验证操纵

  在管制节点上停止操纵。

  获取admin权限

  $ . admin-openrc

  列出办事组件来验证每个组件都乐成运行了

  $ openstack compute service list

  这里遇到问题:发明计较节点上办事没有启动

  

  

  检查计较节点日志:/var/log/nova/nova-compute.log发明

  

  外面提到需要配置placement,而官方文档并没有提到这一点。处理举措是装置openstack-nova-placement-api,并配置相关选项。

  在管制节点上,而后创立用户把用户placement添加到名目中去并创立placement范例的办事目录:

  

  

  最终创立端口:

  openstack endpoint create --regionRegionOne placement public https://192.168.0.112:8778

  openstack endpoint create --regionRegionOne placement admin https://192.168.0.112:8778

  openstack endpoint create --regionRegionOne placement intenal https://192.168.0.112:8778

  在计较节点上编纂文件:/etc/nova/nova.conf

  在placement选项中添加:

  auth_uri = https://controller:5000

  auth_url = https://controller:35357

  memcached_servers = controller:11211

  auth_type = password

  project_domain_name = default

  user_domain_name = default

  project_name = service

  username = nova

  password = root

  os_region_name = RegionOne

  替换失password,重启计较办事:

  # systemctl restartopenstack-nova-compute.service

  可以看到办事已经启动:

  

  管制节点上也显示正常:

  

  在此参考了

  https://superbigsea.blog.51cto.com/6862263/1901216,出格感激!

  下面接着验证操纵:

  3、列出认证办事中的API端口以反省连通性

  $ openstack catalog list

  

  4、列出镜像办事中的镜像以验证连通性;

  $ openstack image list

  

  下节持续配置网络办事和Dashboard。

  相关阅读:高端私有云名目交换群,欢送插手!

《运维火线》新书公布,十三位火线运维专家倾力贡献,现场送出30本。云技能社区、华章书院、优云联手倾力出色贡献!现场还有云技能社区定制数据线、北极熊袋子等精彩礼物!2017年首场专业运维集会,一线专家解密当前运维火线,扫码或许点击阅读原文当即报名!

《运维火线》一书是十三位一线运维专家的深度实践,云技能社区历经整整一年多策动出品,想要得到免费的《运维火线》,请来参与“运维之春---2017运维火线解密”沙龙。同时,《运维火线》下一本书也开始邀请作者插手,如果有意向分享自己的运维实践教训,请加微信:xiaolikvm。

  插手云技能社区技能交换微信群,联络北极熊微信:hadxiaer(加的时候请备注:姓名-都会-公司)

  

  

  

  

  交换 分享 晋升

  

  云技能社区建立于2014年,国内最大的云技能交换平台,分享在云计较/虚拟化名目实施中的资讯、教训和技能,保持干货。旗下经营:云技能实践、云技能、桌面云之云潮涌动等公家号,以及相关的微信群和QQ群,掩盖云计较范畴的技能人群,插手云技能社区微信、QQ群请点击订阅号菜单“群和勾当”。

  

  

相关文章

暴风城监狱在哪

暴风城监狱在哪

  看英文电影是提高英语水平的很好方式,不仅可以提高我们的听力和口语,还可以使我们更好的了解西方文化。今天给大家推荐的这30部英文电影,每一部都是经典,每一部都不可以错过,提升自己的英语水平从点滴做起...

高德回应导航致景区拥堵(高德地图导航会把堵车时间算在内吗)

高德回应导航致景区拥堵(高德地图导航会把堵车时间算在内吗)

近日,高德地图因导航误导游客导致景区拥堵的事件引起了广泛关注。对此,高德地图方面进行了回应,表示将加强技术优化和用户教育,以避免类似事件再次发生。 一、 事件回顾 据报道,近日有游客反映在前往...

初熏门

初熏门

梦魇初熏 txt全集小说附件已上传到百度网盘,点击免费下载内容预览***好吧既然钥匙无论如何也找不回来既然左格流传着逢魔时刻的说法既然夜里有诡异的事情发生了并还在发生着既然你被伤害到了那就等着我吧**...

长岛旅游景点门票(长岛旅游景区门票)

长岛旅游景点门票(长岛旅游景区门票)

长岛位于山东省烟台市,是一个以海滩、岛屿、海洋生物和温泉资源为主的旅游胜地。如果您计划前往长岛旅游,可以游览一下当地的景点,体验一下不同的旅游风情。下面就让我们来一起了解一下长岛的旅游景点门票吧!...

张东升表情包

张东升表情包

1在隐藏角落中走红的张东升,以他的“登山表情包”引发了网络热议表面上,张东升是一个整洁文质彬彬的人物,戴着一副眼镜,给人一种书生的印象然而,这样一个看似平和的绅士,曾在登山时笑容满面地与岳父母合影,下...

青岛海滩古堡酒店(青岛海滩古堡酒店电话)

青岛海滩古堡酒店(青岛海滩古堡酒店电话)

青岛海滩古堡酒店:让您在海滨度假中尽享舒适与便捷 作为中国山东省青岛市的一家五星级酒店,青岛海滩古堡酒店一直致力于为客人提供高品质、奢华的住宿服务。酒店坐落于青岛市市南区八大关,毗邻许多商业中心...