先安装操作系统:Centos6.4

havana

Step 1: Software repositories
sudo yum install -y http://rdo.fedorapeople.org/rdo-release.rpm

Step 2: Install Packstack Installer
sudo yum install -y openstack-packstack

# 生产answer-file

packstack --gen-answer-file=/root/packstack-config.txt

配置packstack-config.txt中的选项,用以设置openstack环境

Step 3: Run Packstack to install OpenStack 
packstack --answer-file=/root/packstack-config.txt --debug

icehouse

Step 1: Software repositories
sudo yum install -y http://rdo.fedorapeople.org/openstack-icehouse/rdo-release-icehouse.rpm

Step 2: Install Packstack Installer
sudo yum install -y openstack-packstack

# 生产answer-file

packstack --gen-answer-file=/root/packstack-config.txt

配置packstack-config.txt中的选项,用以设置openstack环境

Step 3: Run Packstack to install OpenStack 
packstack --answer-file=/root/packstack-config.txt --debug

answer-file示例

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

[general]# Path to a Public key to install on servers. If a usable key has not
# been installed on the remote servers the user will be prompted for a
# password and this key will be installed so the password will not be
# required again
CONFIG_SSH_KEY=/root/.ssh/id_rsa.pub# Set to 'y' if you would like Packstack to install MySQL
CONFIG_MYSQL_INSTALL=y# Set to 'y' if you would like Packstack to install OpenStack Image
# Service (Glance)
CONFIG_GLANCE_INSTALL=y# Set to 'y' if you would like Packstack to install OpenStack Block
# Storage (Cinder)
CONFIG_CINDER_INSTALL=y# Set to 'y' if you would like Packstack to install OpenStack Compute
# (Nova)
CONFIG_NOVA_INSTALL=y# Set to 'y' if you would like Packstack to install OpenStack
# Networking (Neutron)
CONFIG_NEUTRON_INSTALL=y# Set to 'y' if you would like Packstack to install OpenStack
# Dashboard (Horizon)
CONFIG_HORIZON_INSTALL=y# Set to 'y' if you would like Packstack to install OpenStack Object
# Storage (Swift)
CONFIG_SWIFT_INSTALL=n# Set to 'y' if you would like Packstack to install OpenStack
# Metering (Ceilometer)
CONFIG_CEILOMETER_INSTALL=n# Set to 'y' if you would like Packstack to install OpenStack
# Orchestration (Heat)
CONFIG_HEAT_INSTALL=n# Set to 'y' if you would like Packstack to install the OpenStack
# Client packages. An admin "rc" file will also be installed
CONFIG_CLIENT_INSTALL=y# Comma separated list of NTP servers. Leave plain if Packstack
# should not install ntpd on instances.
CONFIG_NTP_SERVERS=# Set to 'y' if you would like Packstack to install Nagios to monitor
# OpenStack hosts
CONFIG_NAGIOS_INSTALL=n# Comma separated list of servers to be excluded from installation in
# case you are running Packstack the second time with the same answer
# file and don't want Packstack to touch these servers. Leave plain if
# you don't need to exclude any server.
EXCLUDE_SERVERS=# Set to 'y' if you want to run OpenStack services in debug mode.
# Otherwise set to 'n'.
CONFIG_DEBUG_MODE=n# Set to 'y' if you want to use VMware vCenter as hypervisor and
# storageOtherwise set to 'n'.
CONFIG_VMWARE_BACKEND=n# The IP address of the server on which to install MySQL
CONFIG_MYSQL_HOST=192.168.152.130# Username for the MySQL admin user
CONFIG_MYSQL_USER=root# Password for the MySQL admin user
CONFIG_MYSQL_PW=openstack# Set the server for the AMQP service
CONFIG_AMQP_SERVER=rabbitmq# The IP address of the server on which to install the AMQP service
CONFIG_AMQP_HOST=192.168.152.130# Enable SSL for the AMQP service
CONFIG_AMQP_ENABLE_SSL=n# Enable Authentication for the AMQP service
CONFIG_AMQP_ENABLE_AUTH=n# The password for the NSS certificate database of the AMQP service
CONFIG_AMQP_NSS_CERTDB_PW=5a04934738cc4f0b805629ca698a0ba5# The port in which the AMQP service listens to SSL connections
CONFIG_AMQP_SSL_PORT=5671# The filename of the certificate that the AMQP service is going to
# use
CONFIG_AMQP_SSL_CERT_FILE=/etc/pki/tls/certs/amqp_selfcert.pem# The filename of the private key that the AMQP service is going to
# use
CONFIG_AMQP_SSL_KEY_FILE=/etc/pki/tls/private/amqp_selfkey.pem# Auto Generates self signed SSL certificate and key
CONFIG_AMQP_SSL_SELF_SIGNED=y# User for amqp authentication
CONFIG_AMQP_AUTH_USER=amqp_user# Password for user authentication
CONFIG_AMQP_AUTH_PASSWORD=e09bb2bed547495e# The IP address of the server on which to install Keystone
CONFIG_KEYSTONE_HOST=192.168.152.130# The password to use for the Keystone to access DB
CONFIG_KEYSTONE_DB_PW=keystone# The token to use for the Keystone service api
CONFIG_KEYSTONE_ADMIN_TOKEN=admin# The password to use for the Keystone admin user
CONFIG_KEYSTONE_ADMIN_PW=admin# The password to use for the Keystone demo user
CONFIG_KEYSTONE_DEMO_PW=demo# Kestone token format. Use either UUID or PKI
CONFIG_KEYSTONE_TOKEN_FORMAT=PKI# The IP address of the server on which to install Glance
CONFIG_GLANCE_HOST=192.168.152.130# The password to use for the Glance to access DB
CONFIG_GLANCE_DB_PW=glance# The password to use for the Glance to authenticate with Keystone
CONFIG_GLANCE_KS_PW=service_pass# The IP address of the server on which to install Cinder
CONFIG_CINDER_HOST=192.168.152.130# The password to use for the Cinder to access DB
CONFIG_CINDER_DB_PW=cinder# The password to use for the Cinder to authenticate with Keystone
CONFIG_CINDER_KS_PW=service_pass# The Cinder backend to use, valid options are: lvm, gluster, nfs,
# vmdk
CONFIG_CINDER_BACKEND=lvm# Create Cinder's volumes group. This should only be done for testing
# on a proof-of-concept installation of Cinder.  This will create a
# file-backed volume group and is not suitable for production usage.
CONFIG_CINDER_VOLUMES_CREATE=y# Cinder's volumes group size. Note that actual volume size will be
# extended with 3% more space for VG metadata.
CONFIG_CINDER_VOLUMES_SIZE=10G# A single or comma separated list of gluster volume shares to mount,
# eg: ip-address:/vol-name, domain:/vol-name
CONFIG_CINDER_GLUSTER_MOUNTS=# A single or comma seprated list of NFS exports to mount, eg: ip-
# address:/export-name
CONFIG_CINDER_NFS_MOUNTS=# The IP address of the VMware vCenter datastore
CONFIG_VCENTER_HOST=# The username to authenticate to VMware vCenter datastore
CONFIG_VCENTER_USER=# The password to authenticate to VMware vCenter datastore
CONFIG_VCENTER_PASSWORD=# The IP address of the server on which to install the Nova API
# service
CONFIG_NOVA_API_HOST=192.168.152.130# The IP address of the server on which to install the Nova Cert
# service
CONFIG_NOVA_CERT_HOST=192.168.152.130# The IP address of the server on which to install the Nova VNC proxy
CONFIG_NOVA_VNCPROXY_HOST=192.168.152.130# A comma separated list of IP addresses on which to install the Nova
# Compute services
CONFIG_NOVA_COMPUTE_HOSTS=192.168.152.130# The IP address of the server on which to install the Nova Conductor
# service
CONFIG_NOVA_CONDUCTOR_HOST=192.168.152.130# The password to use for the Nova to access DB
CONFIG_NOVA_DB_PW=nova# The password to use for the Nova to authenticate with Keystone
CONFIG_NOVA_KS_PW=service_pass# The IP address of the server on which to install the Nova Scheduler
# service
CONFIG_NOVA_SCHED_HOST=192.168.152.130# The overcommitment ratio for virtual to physical CPUs. Set to 1.0
# to disable CPU overcommitment
CONFIG_NOVA_SCHED_CPU_ALLOC_RATIO=16.0# The overcommitment ratio for virtual to physical RAM. Set to 1.0 to
# disable RAM overcommitment
CONFIG_NOVA_SCHED_RAM_ALLOC_RATIO=1.5# Private interface for Flat DHCP on the Nova compute servers
CONFIG_NOVA_COMPUTE_PRIVIF=eth1# The list of IP addresses of the server on which to install the Nova
# Network service
CONFIG_NOVA_NETWORK_HOSTS=192.168.152.130# Nova network manager
CONFIG_NOVA_NETWORK_MANAGER=nova.network.manager.FlatDHCPManager# Public interface on the Nova network server
CONFIG_NOVA_NETWORK_PUBIF=eth0# Private interface for network manager on the Nova network server
CONFIG_NOVA_NETWORK_PRIVIF=eth1# IP Range for network manager
CONFIG_NOVA_NETWORK_FIXEDRANGE=192.168.32.0/22# IP Range for Floating IP's
CONFIG_NOVA_NETWORK_FLOATRANGE=10.3.4.0/22# Name of the default floating pool to which the specified floating
# ranges are added to
CONFIG_NOVA_NETWORK_DEFAULTFLOATINGPOOL=nova# Automatically assign a floating IP to new instances
CONFIG_NOVA_NETWORK_AUTOASSIGNFLOATINGIP=n# First VLAN for private networks
CONFIG_NOVA_NETWORK_VLAN_START=100# Number of networks to support
CONFIG_NOVA_NETWORK_NUMBER=1# Number of addresses in each private subnet
CONFIG_NOVA_NETWORK_SIZE=255# The IP address of the VMware vCenter server
CONFIG_VCENTER_HOST=# The username to authenticate to VMware vCenter server
CONFIG_VCENTER_USER=# The password to authenticate to VMware vCenter server
CONFIG_VCENTER_PASSWORD=# The name of the vCenter cluster
CONFIG_VCENTER_CLUSTER_NAME=# The IP addresses of the server on which to install the Neutron
# server
CONFIG_NEUTRON_SERVER_HOST=192.168.152.130# The password to use for Neutron to authenticate with Keystone
CONFIG_NEUTRON_KS_PW=neutron# The password to use for Neutron to access DB
CONFIG_NEUTRON_DB_PW=service_pass# A comma separated list of IP addresses on which to install Neutron
# L3 agent
CONFIG_NEUTRON_L3_HOSTS=192.168.152.130# The name of the bridge that the Neutron L3 agent will use for
# external traffic, or 'provider' if using provider networks
CONFIG_NEUTRON_L3_EXT_BRIDGE=br-ex# A comma separated list of IP addresses on which to install Neutron
# DHCP agent
CONFIG_NEUTRON_DHCP_HOSTS=192.168.152.130# A comma separated list of IP addresses on which to install Neutron
# LBaaS agent
CONFIG_NEUTRON_LBAAS_HOSTS=# The name of the L2 plugin to be used with Neutron
CONFIG_NEUTRON_L2_PLUGIN=openvswitch# A comma separated list of IP addresses on which to install Neutron
# metadata agent
CONFIG_NEUTRON_METADATA_HOSTS=192.168.152.130# A comma separated list of IP addresses on which to install Neutron
# metadata agent
CONFIG_NEUTRON_METADATA_PW=b18ba38af12e4687# A comma separated list of network type driver entrypoints to be
# loaded from the neutron.ml2.type_drivers namespace.
CONFIG_NEUTRON_ML2_TYPE_DRIVERS=local# A comma separated ordered list of network_types to allocate as
# tenant networks. The value 'local' is only useful for single-box
# testing but provides no connectivity between hosts.
CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=local# A comma separated ordered list of networking mechanism driver
# entrypoints to be loaded from the neutron.ml2.mechanism_drivers
# namespace.
CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=openvswitch# A comma separated  list of physical_network names with which flat
# networks can be created. Use * to allow flat networks with arbitrary
# physical_network names.
CONFIG_NEUTRON_ML2_FLAT_NETWORKS=*# A comma separated list of <physical_network>:<vlan_min>:<vlan_max>
# or <physical_network> specifying physical_network names usable for
# VLAN provider and tenant networks, as well as ranges of VLAN tags on
# each available for allocation to tenant networks.
CONFIG_NEUTRON_ML2_VLAN_RANGES=# A comma separated list of <tun_min>:<tun_max> tuples enumerating
# ranges of GRE tunnel IDs that are available for tenant network
# allocation. Should be an array with tun_max +1 - tun_min > 1000000
CONFIG_NEUTRON_ML2_TUNNEL_ID_RANGES=# Multicast group for VXLAN. If unset, disables VXLAN enable sending
# allocate broadcast traffic to this multicast group. When left
# unconfigured, will disable multicast VXLAN mode. Should be an
# Multicast IP (v4 or v6) address.
CONFIG_NEUTRON_ML2_VXLAN_GROUP=# A comma separated list of <vni_min>:<vni_max> tuples enumerating
# ranges of VXLAN VNI IDs that are available for tenant network
# allocation. Min value is 0 and Max value is 16777215.
CONFIG_NEUTRON_ML2_VNI_RANGES=# The name of the L2 agent to be used with Neutron
CONFIG_NEUTRON_L2_AGENT=openvswitch# The type of network to allocate for tenant networks (eg. vlan,
# local)
CONFIG_NEUTRON_LB_TENANT_NETWORK_TYPE=local# A comma separated list of VLAN ranges for the Neutron linuxbridge
# plugin (eg. physnet1:1:4094,physnet2,physnet3:3000:3999)
CONFIG_NEUTRON_LB_VLAN_RANGES=# A comma separated list of interface mappings for the Neutron
# linuxbridge plugin (eg. physnet1:br-eth1,physnet2:br-eth2,physnet3
# :br-eth3)
CONFIG_NEUTRON_LB_INTERFACE_MAPPINGS=# Type of network to allocate for tenant networks (eg. vlan, local,
# gre, vxlan)
CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE=gre# A comma separated list of VLAN ranges for the Neutron openvswitch
# plugin (eg. physnet1:1:4094,physnet2,physnet3:3000:3999)
CONFIG_NEUTRON_OVS_VLAN_RANGES=# A comma separated list of bridge mappings for the Neutron
# openvswitch plugin (eg. physnet1:br-eth1,physnet2:br-eth2,physnet3
# :br-eth3)
CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=# A comma separated list of colon-separated OVS bridge:interface
# pairs. The interface will be added to the associated bridge.
CONFIG_NEUTRON_OVS_BRIDGE_IFACES=# A comma separated list of tunnel ranges for the Neutron openvswitch
# plugin (eg. 1:1000)
CONFIG_NEUTRON_OVS_TUNNEL_RANGES=1:1000# The interface for the OVS tunnel. Packstack will override the IP
# address used for tunnels on this hypervisor to the IP found on the
# specified interface. (eg. eth1)
CONFIG_NEUTRON_OVS_TUNNEL_IF=# VXLAN UDP port
CONFIG_NEUTRON_OVS_VXLAN_UDP_PORT=4789# The IP address of the server on which to install the OpenStack
# client packages. An admin "rc" file will also be installed
CONFIG_OSCLIENT_HOST=192.168.152.130# The IP address of the server on which to install Horizon
CONFIG_HORIZON_HOST=192.168.152.130# To set up Horizon communication over https set this to "y"
CONFIG_HORIZON_SSL=n# PEM encoded certificate to be used for ssl on the https server,
# leave blank if one should be generated, this certificate should not
# require a passphrase
CONFIG_SSL_CERT=# Keyfile corresponding to the certificate if one was entered
CONFIG_SSL_KEY=# The IP address on which to install the Swift proxy service
# (currently only single proxy is supported)
CONFIG_SWIFT_PROXY_HOSTS=192.168.152.130# The password to use for the Swift to authenticate with Keystone
CONFIG_SWIFT_KS_PW=e8d67166d9a340ed# A comma separated list of IP addresses on which to install the
# Swift Storage services, each entry should take the format
# <ipaddress>[/dev], for example 127.0.0.1/vdb will install /dev/vdb
# on 127.0.0.1 as a swift storage device(packstack does not create the
# filesystem, you must do this first), if /dev is omitted Packstack
# will create a loopback device for a test setup
CONFIG_SWIFT_STORAGE_HOSTS=192.168.152.130# Number of swift storage zones, this number MUST be no bigger than
# the number of storage devices configured
CONFIG_SWIFT_STORAGE_ZONES=1# Number of swift storage replicas, this number MUST be no bigger
# than the number of storage zones configured
CONFIG_SWIFT_STORAGE_REPLICAS=1# FileSystem type for storage nodes
CONFIG_SWIFT_STORAGE_FSTYPE=ext4# Shared secret for Swift
CONFIG_SWIFT_HASH=f88c756ec1af4805# Size of the swift loopback file storage device
CONFIG_SWIFT_STORAGE_SIZE=2G# Whether to provision for demo usage and testing. Note that
# provisioning is only supported for all-in-one installations.
CONFIG_PROVISION_DEMO=n# Whether to configure tempest for testing. Note that provisioning is
# only supported for all-in-one installations.
CONFIG_PROVISION_TEMPEST=n# The CIDR network address for the floating IP subnet
CONFIG_PROVISION_DEMO_FLOATRANGE=172.24.4.224/28# The uri of the tempest git repository to use
CONFIG_PROVISION_TEMPEST_REPO_URI=https://github.com/openstack/tempest.git# The revision of the tempest git repository to use
CONFIG_PROVISION_TEMPEST_REPO_REVISION=master# Whether to configure the ovs external bridge in an all-in-one
# deployment
CONFIG_PROVISION_ALL_IN_ONE_OVS_BRIDGE=n# The IP address of the server on which to install Heat service
CONFIG_HEAT_HOST=192.168.152.130# The password used by Heat user to authenticate against MySQL
CONFIG_HEAT_DB_PW=57fe20d4f20a46b5# The encryption key to use for authentication info in database
CONFIG_HEAT_AUTH_ENC_KEY=f68eb75c27f24b4f# The password to use for the Heat to authenticate with Keystone
CONFIG_HEAT_KS_PW=9748ef5484dd4807# Set to 'y' if you would like Packstack to install Heat CloudWatch
# API
CONFIG_HEAT_CLOUDWATCH_INSTALL=n# Set to 'y' if you would like Packstack to install Heat
# CloudFormation API
CONFIG_HEAT_CFN_INSTALL=n# The IP address of the server on which to install Heat CloudWatch
# API service
CONFIG_HEAT_CLOUDWATCH_HOST=192.168.152.130# The IP address of the server on which to install Heat
# CloudFormation API service
CONFIG_HEAT_CFN_HOST=192.168.152.130# The IP address of the server on which to install Ceilometer
CONFIG_CEILOMETER_HOST=192.168.152.130# Secret key for signing metering messages.
CONFIG_CEILOMETER_SECRET=d28ed004d2a04164# The password to use for Ceilometer to authenticate with Keystone
CONFIG_CEILOMETER_KS_PW=65519106ce604b93# The IP address of the server on which to install mongodb
CONFIG_MONGODB_HOST=192.168.152.130# The IP address of the server on which to install the Nagios server
CONFIG_NAGIOS_HOST=192.168.152.130# The password of the nagiosadmin user on the Nagios server
CONFIG_NAGIOS_PW=8ac11819f3184a01# To subscribe each server to EPEL enter "y"
CONFIG_USE_EPEL=y# A comma separated list of URLs to any additional yum repositories
# to install
CONFIG_REPO=# To subscribe each server with Red Hat subscription manager, include
# this with CONFIG_RH_PW
CONFIG_RH_USER=# To subscribe each server with Red Hat subscription manager, include
# this with CONFIG_RH_USER
CONFIG_RH_PW=# To subscribe each server to Red Hat Enterprise Linux 6 Server Beta
# channel (only needed for Preview versions of RHOS) enter "y"
CONFIG_RH_BETA_REPO=n# To subscribe each server with RHN Satellite,fill Satellite's URL
# here. Note that either satellite's username/password or activation
# key has to be provided
CONFIG_SATELLITE_URL=# Username to access RHN Satellite
CONFIG_SATELLITE_USER=# Password to access RHN Satellite
CONFIG_SATELLITE_PW=# Activation key for subscription to RHN Satellite
CONFIG_SATELLITE_AKEY=# Specify a path or URL to a SSL CA certificate to use
CONFIG_SATELLITE_CACERT=# If required specify the profile name that should be used as an
# identifier for the system in RHN Satellite
CONFIG_SATELLITE_PROFILE=# Comma separated list of flags passed to rhnreg_ks. Valid flags are:
# novirtinfo, norhnsd, nopackages
CONFIG_SATELLITE_FLAGS=# Specify a HTTP proxy to use with RHN Satellite
CONFIG_SATELLITE_PROXY=# Specify a username to use with an authenticated HTTP proxy
CONFIG_SATELLITE_PROXY_USER=# Specify a password to use with an authenticated HTTP proxy.
CONFIG_SATELLITE_PROXY_PW=

使用RDO安装havana、icehouse版本的openstack(centos)相关推荐

  1. openstack icehouse版本glance上传镜像

    openstack icehouse 版本glance上传镜像的命令是: glance p_w_picpath-create --name "win2k8_x86_100GB" - ...

  2. [官版翻译]OpenStack centos版安装(二)

    2019独角兽企业重金招聘Python工程师标准>>> 原创作品:http://manual.blog.51cto.com/3300438/967858 在OpenStack第一天文 ...

  3. [更新问题]无法在安装新的版本前,为“./boot/vmlinuz-2.6.24-19-generic”做一个符号链接备份...

    2019独角兽企业重金招聘Python工程师标准>>> 关于更新中出现的问题:我在升级的时候,出现一个问题: E: /var/cache/apt/archives/linux-ima ...

  4. ubuntu下如何安装两个版本OpenCV?

    本文首发于微信公众号「3D视觉工坊」--ubuntu下如何安装两个版本OpenCV? 前言 由于在VSLAM技术研究过程中,经常会涉及OpenCV不同版本在ubuntu系统下的安装.因此小凡在此简单总 ...

  5. ubuntu18.04.4 安装 qq x64 版本

    文章目录 ubuntu18.04.4 安装 qq x64 版本 确定版本 根据你所使用的linux发行版选择格式: 1 代码安装 1 下载 2 安装qq 3 删除qq 2 图形化界面安装 1 下载 2 ...

  6. 安装的 Python 版本太多互相干扰?pyenv 建议了解一下。

    写在之前 我们都知道现在的 Python 有 Python2 和 Python3,但是由于各种乱七八糟的原因导致这俩哥们要长期共存,荣辱与共,尴尬的是这哥俩的差异还比较大,在很多时候我们可能要同时用到 ...

  7. 安装了低版本Jdk后eclipse无法打开的终极解决方法

    安装了低版本Jdk后eclipse无法打开的终极解决方法 参考文章: (1)安装了低版本Jdk后eclipse无法打开的终极解决方法 (2)https://www.cnblogs.com/MrLiu6 ...

  8. 无法通过windows installer服务安装此安装程序包。您必须安装带有更新版本windows Installer服务的Windows

    无法通过windows installer服务安装此安装程序包.您必须安装带有更新版本windows installer服务的Windows 出现这个问题不让安装程序,可以到微软网站更新Windows ...

  9. java 安装多版本_一台电脑安装多个版本的jdk

    一台电脑安装多个版本的jdk 我们平时在做Java开发的时候,有时需要使用多个版本的jdk, 那么一台电脑上需要安装多个JDK了. 那一台电脑上可不可以同时安装多个版本的jdk呢? 答案是可以的! 但 ...

最新文章

  1. Android应用开发经常使用知识
  2. lenovo 一键恢复6.0 NOVO下密码遗忘的解决方案
  3. 微信支付开发(7) 刷卡支付
  4. android缓存框架
  5. 从入门到精通:卷积神经网络初学者指南
  6. MATLAB gui 欢迎界面 插入图片
  7. vscode中前端vue项目详解_web前端Vue项目实战-Music
  8. pcl对点云进行直通滤波
  9. idea繁体字-中文输入法变繁体字
  10. Python学习笔记-基础篇
  11. 2021.07.22禾赛提前批一面面经
  12. [转] 看的逗得我差点没趴地上!
  13. p值>0.05,统计意义上不显著?
  14. ajax提交文件对象----form组件+form表单+FormData对象
  15. python 提取pdf格式电子发票并改名
  16. Vue基于python的用户兴趣的电影视频播放推荐系统django
  17. 百个免费API接口分享,调用完全不限次数...
  18. 既约分数(python)
  19. Java学习笔记 算法 Algorithms Fourth Edition
  20. C# wpf 实现Canvas内控件拖动

热门文章

  1. 机器学习 | 特征工程综述
  2. arcgis墨卡托与经纬度之间的互相转换
  3. 通过反射动态修改自定义注解属性值
  4. “10分钟把这个菜单整理成 Excel”,不会编程的老板发话了。
  5. 【算法】基于hoare快速排序的三种思想和非递归,基准值选取优化【快速排序的深度剖析-超级详细的注释和解释】你真的完全学会快速排序了吗?
  6. 【程序员毕业3年,失业在家,欠债3万,到底该怎么办?】
  7. No data is available for encoding 936. For information on defining a custom encoding, see the docume
  8. Linux命令`ll`的结果解析
  9. 双系统怎么用Linux做引导,使用easybcd 解决linux 与 Windows双系统引导问题
  10. 如何选择LIMS实验室系统供应商?