ReleaseNotes/Kilo/ko

= OpenStack 2015.1.0 (Kilo) 릴리즈 노트 =

Erasure Code (beta)
Swift는 이제 erasure-code (EC) 스토리지 정책 타입을 지원합니다. 이를 통해 배포 대상들이 복제된 스토리지에서 보다 적은 용량을 사용하도록 하면서 매우 높은 지속성을 실현하도록 합니다. 그러나, EC는 보다 많은 CPU 및 네트워크 자원을 필요로 하므로, 모든 유스케이스에 좋은 것은 아닙니다. EC는 단일 region에서 많은 양의, 자주 액세스되지 않는 데이터를 저장 하기 위한 목적에 좋습니다.

Erasure code에 대한 Swift 구현은 최종 사용자에게 알기 쉬워야합니다. 복제된 스토리지와 EC 스토리지 간 API에 있어서의 차이점은 없습니다.

Erasure code를 지원하기 위해, Swift는 이제 PyECLib과 liberasurecode에 의존성을 갖습니다. liberasurecode는 선택에 따라 실제 EC 알고리즘을 구현하도록 하는 플러그인 형태의 라이브러리입니다.

전체 문서는 http://swift.openstack.org/overview_erasure_code.html 에 있습니다.

컴포지트 토큰
컴포지트 토큰은 다른 OpenStack 서비스들이 Swift 내 데이터를 클라이언트 자격으로 저장하도록 하여, 클라이언트와 서비스 모두에서 동의 없이 각각 데이터를 업데이트할 수 없도록 합니다.

예로 Nova에서 스냅샷을 저장하는 사용자 요청이 발생합니다. Nova는 이 요청을 Glance에 전달하고, Glance는 이미지를 Swift 컨테이너에 object set으로 기록합니다. 이 경우, 사용자는 서비스로부터 유요한 토큰을 가지고 있지 않으면 스냅샷을 수정할 수 없으며, 데이터를 업데이트 할 수 없습니다. 그러나 해당 데이터는 Swift내 사용자 계정에 여전히 저장이 되어있으며, 이는 단순히 accounting을 해줍니다.

전체 문서는 http://swift.openstack.org/overview_backing_store.html 에 있습니다

소형, 불균형 클러스터에 대한 데이터 배치 업데이트
Swift에서 데이터 배치는 장치 weight에 의해서 이루어집니다. 이틀 통해서 운영자들이 많은 데이터를 즉시 이동하도록 하지 않으면서, 새로운 zone과 region을 점차적으로 추가할 수 있도록 합니다. 또한, 클러스터가 불균형한 경우 (예: 한 zone의 용량이 다른 zone의 두 배인 두 개의 Zone으로 이루어진 클러스터에서), Swift는 보다 효율있게이용 가능 공간을 사용하고, replica가 클러스터 내에서 충분히 확산되지 않고 배치될때 경고를 줍니다.

글로벌 클러스터 복제 개선
region 사이의 복제가 이제 복제 실행 당 하나의 replica만을 이동시키게 됩니다. 이는 원격 region이 내부적으로 복제를 수행 가능하도록 기회를 제공하고 이에 따라 보다 많은 데이터가 WAN 상에서 이동하는 것을 막아줍니다.

알려진 이슈

 * 베타 릴리즈로, EC 지원은 거의 완벽한 특징으로 이루어져 있으나, multi-range 읽기와 같은 몇몇 특징들은 지원하지 않으며 완벽한 성능을 내지 못합니다. 해당 특징은 지속성을 위한 ssync에 의존하고 있습니다. 배포자들에게 있어 광범위한 테스팅과 함께 erasure 코드 스토리지 정책을 사용한 production 데이터 배포를 하지 않도록 권고합니다.

업그레이드 노트
항상 그렇듯이, 해당 버전의 Swift를 최종 사용자의 다운타임 없이 업그레이드 가능합니다.


 * erasure code를 지원하기 위해, Swift는 PyECLib (그리고 liberasurecode, transitively)에 대한 새로운 의존성을 갖고 있습니다. 또한, eventlet에 대한 최소 요구 버전이 올라갔습니다.

API v2.1

 * 다음 세대인 Nova API, v2.1을 첫 릴리즈합니다. v2.1은 v2.0과 강력한 API 검증과 함께 하위 호환성이 되도록 설계되었습니다. 모든 API에 대한 변화 사항을 advertise되는 마이크로버전으로 확인 가능합니다. 자세한 사항은 다음을 문서에서 볼 수 있습니다: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/api-microversions.html


 * Kilo에서는 기본으로 여전히 서버 v2.0 API 요청에 대해 v2.0 API 코드를 사용합니다. Liberty에서 v2.1이 v2.0 및 v2.1 모두에 대한 요청을 처리하는데 사용되어질 수 있도록 희망합니다.


 * Liberty를 위해 v2.0은 프리징되었고, 새로운 기능들은 이제 v2.1 API에 마이크로버전 메커니즘을 사용해 추가될 것입니다. Kilo에서 마이크로버전 증가를 통한 릴리즈 사항은 다음과 같습니다:
 * Windows WimRM에서 사용될 x509 인증서를 지원하기 위한 keypair API 확장은 v2.1 API에서 마이크로버전으로 추가되는 첫 API 기능들 중 하나입니다.
 * os-extended-server-attributes 내 부가적인 어트리뷰트 노출


 * python-novaclient는 아직 v2.1 API를 지원하지 않습니다.


 * Nova v2.1 API에 대한 정책 적용이 향상되었습니다.
 * 정책은 API 엔트리에만 적용됩니다.
 * 하나의 단일 API에 중첩된 rule이 더 이상 불가능합니다.
 * 모든 v2.1 API 정책은 rule이 'os_compute_api' 를 v2 API과 구분하기 위해 접두어로 사용합니다.
 * 하드코딩된 권한이 db 계층에서 확인이 이루어지기에, 이전에 Nova API의 일부는 정책에 의해 구성가능하지 않습니다. 이는 admin 사용자에게 있어 항상 필수입니다. Nova v2.1 API의 하드코딩된 권한 확인 중 일부가 API 정책을 구성 가능하도록 제거되었습니다. 나머지 하드코딩된 권한 확인 부분은 Liberty에서 제거될 것입니다.

업그레이드 지원

 * DB 마이그레이션 스크립트 내에서 발생하는 데이터 마이그레이션을 줄여서, 이제 DB 오브젝트 코드 안에서 "lazy" 방식으로 동작합니다. 해당 데이터를 강제로 마이그레이션하도록 돕는 nova-manage 명령어들이 있습니다. 자세한 세부 사항은 다음을 참고하였으면 합니다: http://specs.openstack.org/openstack/nova-specs/specs/kilo/approved/flavor-from-sysmeta-to-blob.html


 * https://review.openstack.org/#/c/97946/ 변경 사항은 null instances.uuid 레코드를 스캔하고 찾으면 fail하는 데이터베이스 마이그레이션 267을 추가하는데, 왜냐하면 해당 마이그레이션은 결국 instances.uuid을 null이 불가능한 상태로 만들고 해당 칼럼에 UniqueConstraint를 추가할 필요가 있기 때문입니다. Helper 스크립트가 제공되어 해당 데이터베이스 마이그레이션을 실행하기 전에 null instances.uuid 레코드를 검색합니다. 'nova-manage db sync'를 실행하기 전에, 디폴트로, 단지 검색한 후 결과를 덤프하여 아무것도 바꾸지 않는 'nova-manage db null_instance_uuid_scan' Helper 스크립트를 실행합니다. --delete 옵션을 null_instance_uuid_scan 커맨드에 전달하여 instances.uuid가 null이었던 null 레코드를 자동으로 제거합니다.

스케줄러

 * 성능 최적화에 대한 선택
 * 스케줄링을 진화 및 향상시키는 데 개선하도록 하는 스케줄러에 대한 구조적인 변경을 추진하도록 하는 과정에 있습니다. 이는 최종 사용자 관점에서는 나타나지 않습니다.

Cells v2

 * Cell v2에 대한 일부 몇몇 초기 지원이 추가되었지만, 해당 기능은 아직 사용하기에 준비되지는 않았습니다.
 * 새로운 'nova-manage api_db sync' 와 'nova-manage api_db version' 명령어들이 cell을 위한 새로운 api 데이터베이스와 함께 동작하지만, 이 데이터베이스를 이용하지 않으므로 설정할 필요가 없습니다.

Hyper-V

 * 2세대 VM 지원: https://blueprints.launchpad.net/nova/+spec/hyper-v-generation-2-vms
 * 현존하는 iSCSI 볼륨 지원과 함께 더불이 SMB 기반 볼륨 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/hyper-v-smbfs-volume-support.html
 * x509 인증서 기반 키페어 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/keypair-x509-certificates.html
 * 호스트 전원 액션이 이제 Hyper-V와 함께 동작합니다: https://blueprints.launchpad.net/nova/+spec/hyper-v-host-power-actions

Libvirt (KVM)

 * NFV와 연관된 기능:
 * NUMA 기반 스케줄링: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/input-output-based-numa-scheduling.html
 * 게스트 vCPU pinning: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/virt-driver-cpu-pinning.html
 * Large 페이지 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/virt-driver-large-pages.html
 * vhostuser VIF 드라이버: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/libvirt_vif_vhostuser.html
 * IBM System z에서 KVM 실행 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/libvirt-kvm-systemz.html
 * Parallels 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/pcs-support.html
 * SMB 기반 볼륨 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/libvirt-smbfs-volume-support.html
 * QEMU 게스트 에이전트를 사용한 Quiesce: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/quiesced-image-snapshots-with-qemu-guest-agent.html
 * Quobyte 볼륨 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/quobyte-nova-driver.html
 * QEMU iSCSI 초기자 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/qemu-built-in-iscsi-initiator.html

VMware

 * Ephemeral 디스크 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/approved/vmware-ephemeral-disk-support.html
 * vSAN 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/vmware-vsan-support.html
 * 기반 OVA 이미지 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/vmware-driver-ova-support.html
 * SPBM 기반 볼륨 정책 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/vmware-spbm-support.html

Ironic

 * Flavor 용량에 대한 ironic 전달 지원: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/pass-flavor-capabilities-to-ironic-virt-driver.html

알려진 이슈

 * Evacuate 복구 코드가 (VM 디스크) 데이터를 파괴할 가능성이 있습니다. nova-compute 시작시, 하이퍼바이저로부터 보고된 인스턴스가 중단되어 있는 동안 현 호스트로부터 이동되었는지 (즉, evacuate 되었는지)를 확인합니다. 만약 이동되었다고 판단되는 경우, 해당 VM들은 해당 지역에서 삭제됩니다. 이때 잘못 선택되어 인스턴스들이 예기치않게 파괴할 가능성이 있습니다. libvert 계열 노드들에는 호스트 이름을 변경함으로써 발생합니다. vmware 계열 노드들에서는 두 개의 다른 호스트에서 (다른 호스트 이름을 가진 상태) vc​enter 배포를 단일로 관리하려할때 발생합니다. 해당 이슈는 Liberty에서 수정될 예정이지만, 현재는 해당 기능을 배포 환경에서 비활성화하고자 할 경우 예방적인 차원에서 workarounds.destroy_after_evacuate=False로 설정하여 가능합니다. 참고: 이는 회귀가 아닌 초기부터의 evacuate 기능 설계에 대한 결함으로 판명되었습니다. 이에 대한 쉬운 문제 해결이 없기에, 해당 대처법은 손상에 대한 가능성을 제한하는 것입니다. liberty에서 제안된 수정은 여기서 확인 가능합니다: https://review.openstack.org/#/c/161444/.


 * 생성된 config 예제에 oslo와 연관된 구성이 빠져있을 가능성이 있습니다.

업그레이드 노트
다음 사항들은 업그레이드 때에 고려해야만 하는 사항들입니다. 가능한 경우에는, git commit hash가 자세한 정보를 찾도록 제공됩니다:


 * Nova 외부에서 작성된 경우에 대해, Neutron 포트들은 서버가 삭제된 이후에 더 이상 삭제되지 않습니다: 1153a46738fc3ffff98a1df9d94b5a55fdd58777
 * EC2 API 지원이 deprecated되어, kilo에서 삭제될 것입니다, 참고: f098398a836e3671c49bb884b4a1a1988053f4b2
 * Websocket 프록시는 API 노드에서 일련의 절차를 통해 업그레이드가 필요합니다. 왜냐하면 오래된 API 노드들은 콘솔 액세스에 승인될 때 access_url을 보내지 않을 것이고, 새로운 프록시 서비스 (해당 커밋 및 이후)들은 해당 요청에 승인 실패할 것이기 때문입니다. 9621ccaf05900009d67cdadeb1aac27368114a61
 * Kilo로 완전히 업그레이드된 이후 (즉, 모든 노드들이 kilo 코드를 실행 중), 이전 위치에서 새 위치로 flavor 정보에 대한 백그라운드 마이그레이션을 시작해야 합니다. Kilo conductor 노드는 이 작업을 필요로 할 때마다 그 때 그 때 할 것이지만, 다른 유휴 데이터들은 백그라운드에서 마이그레이션될 필요가 있습니다. 이는 오래된 이전 위치 지원이 사라질 Liberty 릴리즈 이전에 완료해야 하는 중요한 것입니다. "nova-manage migrate-flavor-data"를 사용하여 해당 변환을 수행하기 바랍니다.
 * Nova v2.1 API 정책 강제에 대한 개선으로 인해 v2.1 API 정책에 많은 변화가 이루어졌습니다. v2.1 API가 이전에 릴리즈된 적이 없었기 때문에, 해당 변화는 하위 호환성을 유지하지 않습니다. 이전 정책을 대신하여 정책 샘플 구성을 사용하는 것이 좋습니다.
 * VMware rescue VM 동작은 더 이상 새로운 VM을 생성하지 않고 해당 위치에서 발생합니다: cd1765459a24e52e1b933c8e05517fed75ac9d41
 * force_config_drive = always 가 deprecated되었고, force_config_drive = True 를 대신해서 사용해야 합니다: c12a78b35dc910fa97df888960ef2b9a64557254
 * Hyper-v 실행시, b4d57ab65836460d0d9cb8889ec2e6c3986c0a9b 이후, c8e9f8e71de64273f10498c5ad959634bfe79975 커밋 이전 코드를 배포하여 사용하는 경우 수동으로 해결해야 할 문제가 있습니다. 참고: c8e9f8e71de64273f10498c5ad959634bfe79975
 * multi_instance_display_name_template 디폴트 값을 변경합니다. 참고: 609b2df339785bff9e30a9d67d5c853562ae3344
 * DB 마이그레이션을 깔끔하게 적용하도록 보장하고자, "nova-manage db null_instance_uuid_scan"를 사용합니다. 참고: c0ea53ce353684b48303fc59393930c3fa5ade58

새로운 주요 기능

 * (oslo-incubator를 졸업하고) oslo.policy를 사용합니다. 구성 옵션 변경 사항 및 업데이트들은 etc/config 파일 트리에 있습니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/pass-targets-to-policy-enforcer.html
 * 이미지 비활성화가 가능합니다. 2개의 새로운 API 요청이 추가되어 정책에 대한 수정을 필요로 할 수 있습니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/deactivate-image.html
 * 이미지 import 진행 중 이미지 변환에 대해 지원합니다.. http://specs.openstack.org/openstack/glance-specs/specs/kilo/conversion-of-images.html
 * Glance 정렬이 향상 되었습니다. Images v2 API는 각 키에 대해 정렬 방향을 지정하는 기능을 포함하는 새로운 정렬 문법을 지원합니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/sorting-enhancements.html
 * Metadefs notification에 대응합니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/metadefs-notifications.html
 * VMware 스토리지 드라이버에 대한 여러 데이터저장소를 지원합니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/vmware-store-multiple-datastores.html
 * 이미지 import 진행 중, Glance 이미지 인트로스펙션을 지원합니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/introspection-of-images.html
 * Multivalue operator에 대한 Metadef 지원. http://specs.openstack.org/openstack/glance-specs/specs/kilo/metadata-multivalue-operators-support.html
 * 새로운 taskflow 처리기 추가하고, 기존 eventlet 처리기 제거하였습니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/taskflow-integration.html
 * 다이제스트 알고리즘을 이제 구성 가능합니다. SHA-1은 FIPS에 따르면 112비트 보안을 필요로하는 범용 목적의 디지털 서명 응용프로그램에 적합하지 않으며, 이러한 표준들 사이에서 선택할 수 있는 구성을 제공합니다.
 * Metadef 태그 지원합니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/metadefs-tags.html
 * API로부터 반환시 None 값을 허용합니다. Glance의 API v2는 이제 None 값을 가진 필드를 반환합니다.
 * 카탈로그 인덱싱 서비스에 대한 실험 API가 추가되었습니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/catalog-index-service.html
 * 스토리지 드라이버에 대해 보다 상세한 기능 옵션 지원합니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/store-capabilities.html
 * DB 스토리지에 대한 Semver 유틸리티를 지원합니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/semver-support.html
 * SIGHUP 시그컬에 대해 구성 파일을 다시 로드합니다. 다운 타임 없이 구성을 재로드합니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/sighup-conf-reload.html
 * 소프트웨어 메타데이터를 정의 하였습니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/software-metadefs.html
 * Glance Swift Store가 이미지를 저장하기 위해 여러 컨테이너를 사용 가능합니다. http://specs.openstack.org/openstack/glance-specs/specs/kilo/swift-store-multiple-containers.html

알려진 이슈

 * 이미지 멤버 추가 시 멤버 이름이 255자를 넘는 경우 500을 반환합니다. https://bugs.launchpad.net/glance/+bug/1424038
 * Glance v2 API에서 소유자 변경시 v1 API와 호환되지 않습니다. https://bugs.launchpad.net/glance/+bug/1420008
 * Glance scrubber가 trusted-auth 모드에서 registry 조작시 동작하지 않습니다. https://bugs.launchpad.net/glance/+bug/1439666

업그레이드 노트

 * Deprecated 옵션이었던 db_enforce_mysql_charset이 삭제되었습니다. 관련 커밋: efeb69f9033a57a1c806f71ee3ed9fd3f4d2475e
 * Metadef 자원에 대한 통지를 이제 지원합니다. 관련 커밋: fd547e3717dc4a3a92c1cb2104c18608a4f4872a
 * 몇몇 구성을 변경함으로써 VMware 여러 데이터저장소를 활성화할 수 있습니다. 관련 커밋: 96fb31d7459bd4e05e052053177dce4d38cdaf90
 * Eventlet 처리기를 제거하고 새로운 taskflow 처리기가 비동기 작업을 위해 추가되었습니다. 관련 커밋: ae3135e1d67df77697a24fddaee3efeadb34a0dd and a39debfd55f6872e5f4f955b75728c936d1cee4b
 * Snet 구성을 endpoint 구성으로 대체하였습니다. 관련 커밋: 41a9a065531ec946b4a9baf999f97d10fa493826
 * 다이제스트 알고리즘을 이제 구성 가능합니다. 관련 커밋: 82194e0c422966422f7a4e2157125c7ad8fbc5b5
 * 삭제시 'saving' 상태였던 이미지를 삭제하기 위한 청소 작업을 수행합니다. 관련 커밋: 0dc8fbb3479a53c5bba8475d14f4c7206904c5ea
 * Glance는 이제 (oslo incubator에서 졸업한) oslo.policy를 사용합니다. 관련 커밋: cb7d5a4795bbdaf4dc3eaaf0a6fb1add52c09011
 * 이미지를 이제 비활성화할 수 있습니다. deactivated라는 새로운 상태가 이미지 데이터 자산에 추가되었습니다. 관련 커밋: b000c85b7fabbe944b4df3ab57ff73883328f40d

새로운 주요 기능

 * 웹 통합인증(SSO)를 통한 연합 인증 지원 -- Keystone이 구성된 경우, 사용자는 배포시 지원을하는 인증 매커니즘을 선택하여 사용할 수 있습니다. 이 기능은 local_settings.py를 수정하여 활성화 할 수 있습니다. 관련 설정을 확인하려면 여기서 찾을 수 있습니다.


 * 테마 적용 지원 -- Horizon에 대해 사용자 정의 테마를 지정하는 단순한 메커니즘이 포함 되었습니다. 사용자 정의 CSS 뿐만 아니라 Bootstrap의 CSS 값과 Horizon 변수 또한 사용 가능합니다. 자세한 내용은 여기서 찾을 수 있습니다.


 * Sahara UX 개선 -- 클러스터 생성 가이드 및 job 생성 페이지 가이드 페이지 추가화 더불어 Sahara 사용자 경험이 크게 향상되었습니다.


 * 인스턴스 위자드 (beta) 출시 -- 인스턴스 워크 플로워에대한 전체 교체는 기존 인스턴스 워크 플로워의 사용성 문제를 해결 하기 위해 AngularJS를 이용하여 구현되었습니다. 그렇기에 늦게 추가되었고 제한된 테스트로 Kilo에 beta로 포기되어 포함되었으며 기본은 비활성화 상태입니다. 새로운 워크 플로워를 사용하기 위해선, local_settings.py를 변경해야됩니다: . 또한 기존 인스턴스 위자드 런처를 비활성화 해야합니다:  . 이 작업은 Horizon의 새로운 개발에대한 내용입니다.


 * Nova
 * 하이퍼바이저에 대한 서비스 disable/enable 허용
 * 호스트로부터 모든 인스턴스 마이그레이션
 * 시리얼 콘솔 노출


 * Cinder
 * 디폴트로 Cinder v2 사용
 * 관리/비관리 볼륨 지원 -- admin이 cinder에 의해 관리되지 않는 볼륨 및 비관리 볼륨을 관리하도록 허용합니다.
 * 프로젝트 간 볼륨 전송 지원
 * 볼륨 암호화 메타데이터 지원


 * Glance
 * Glance 메타데이터 정의를 관리자가 보기/추가/수정 가능하도록 허용하는 뷰가 추가되었습니다.


 * Heat
 * 스택 템플릿 뷰
 * 오케스트레이션 자원 패널
 * 스택에 대한 액션 중지/지속
 * 스택에 대한 미리보기 뷰를 통해 사용자들이 생성하기 전 템플릿에 명시된 스택을 미리볼 수 있습니다.


 * Trove
 * Trove 인스턴스 크기 재구성 -- 인스턴스 flavor 변경


 * Ceilometer
 * Ceilometer로부터 IPMI 미터 값 디스플레이


 * Horizon에서의 새로운 재사용 가능한 AngularJS 위젯:
 * AngularJS 테이블 구현
 * Table 그리기 -- 확장가능한 테이블 내용
 * 개선된 클라이언트/서버 검색
 * 테이블 위젯 전송


 * Horizon 웹 루트를 단지 '/'만 놓이도록 구성 가능

알려진 이슈

 * 스냅샷으로부터 생성된 볼륨이 비어있습니다 - https://bugs.launchpad.net/horizon/+bug/1447288
 * Django 1.8을 아직 완전히 지원하지 않습니다.

업그레이드 노트

 * Django 1.7을 지원합니다.

계층화된 multitenancy
프로젝트는 새로운 프로젝트를 생성할 때 기존 프로젝트에   속성을 설정하여 다른 프로젝트와 중첩하여 구성할 수 있습니다. API를 통하여 부모-자식 계층을제시할 수 있습니다.

Role 할당이 users와 groups을 모두 프로젝트 계층 내 서브트리로 할당 가능합니다.

이 기능을 보다 유용하게 사용하기 위해선 (계층적 quota와 같은) 다른 OpenStack 서비스들에 걸친 상응하는 지원을 필요로할 것입니다.

Fernet 토큰
데이터베이스에서 유지해야하는 UUID 토큰과는 달리, Fernet 토큰은 비 영구적으로 사용할 수 있습니다. 배포자는 에서  를 사용하여 Fernet 토큰 제공자를 활성화할 수 있습니다.

Fernet token는 대칭 암호화 키가 필요합니다. 를 사용하여 설정할 수 있으며, 를 사용하여 일정 기간동안 매번 확인합니다. 이러한 키는 다중 노드(또는 다중 region) 배포시 모든 Keystone 노드에서 공유됩니다. 그리고 한 노드에 의해 생성된 토큰이 즉시 다른 검증이 가능합니다.

Identity 페더레이션

 * Keystone이 이제 다른 Keystone 인스턴스에 로컬 사용자 SAML assertion을 발행하여 페더레이션된 인증 제공자 (IdP)로 동작 가능합니다. (ECP-wrapped 가능)
 * 페더레이션된 identity 인증 방식으로 OpenID 연결 지원이 추가되었습니다.
 * Keystone에서 단일 인증 제공을 위해 많은 "Remote ID"를 연관이 추가되었습니다.. 이는 많은 인증 제공자가 공통 매핑을 사용하는 경우 유용합니다.
 * 싱글 사인-온 페이지를 통해 기존 IdP에 웹 브라우저를 통한 사용자 인증 기능이 추가되었습니다.
 * 페더레이션 토큰이 이제  방식을 사용합니다.  과  도 계속 사용 가능합니다.
 * 페러레이션 사용자가 기존 로컬 identity에 매핑 가능합니다.
 * 매핑 ruleset에 지정된 그룹을 이름과 도메인을 통해 파악 가능합니다.
 * 페더레이션 인증 assertion 내 보이는 그룹은 이제 기존 로컬에 존재하던 그룹을 로컬 사용자 멤버쉽 매핑을 통해 자동으로 매핑 가능합니다. (화이트리스트 및 블랙리스트로 필터링)

LDAP

 * API 사용자에 의해 지정된 필터 매개변수가 Keystone 대신 이제 LDAP 스스로 처리됩니다.
 * HTTP API를 사용하여 도메인 고유의 인증 백엔드 SQL 구성를 HTTP API를 사용하여 저장하는 지원이 실험적으로 추가되었습니다. 이에 대한 주 사용 사례로는 새로운 도메인을 HTTP API를 통해 생성하고, Keystone을 재시작하지 않고 즉시 도메인 고유 LDAP 드라이버를 구성하는 것입니다.

인증

 * "assignment" 백엔드가 "resource" 백엔드 (도메인, 프로젝트, role 포함)와 권한 매핑 모델을 포함하는 "assignment" 백엔드로 분리되었습니다.
 * 트러스트 재위임에 대한 지원이 추가되었습니다. 트러스트가 초기 생성될 때 허용되면, 트러스트 대상은 다른 트러스트를 통해 해당 트러스트로부터 role을 재위임할 수 있습니다.
 * 사용자가  속성이 설정되어 있어도, Keystone으로부터 범위에 해당하지 않는 토큰을 명시적으로 요청할 수 있도록 하는 지원이 추가되었습니다.
 * 배포자는 이제  내  를 설정하여 범위 내 토큰에 대한 재범위 지정을 허용하지 않도록 할 수 있습니다.

업그레이드 노트

 * Keystone에서의 XML 지원이 Kilo에서 제거되었습니다. Juno에서 Kilo로 업그레이드시 Keystone Paste configuration에서 XML과 XmlBodyMiddleware를 제거할 것을 권장합니다. 이는 XML 미들웨어 필터 및 XML 필터를 포함할 수 있는 public_api, admin_api, api_v3, public_version_api, admin_version_api 및 다른 파이프라인으로부터의 레퍼런스에 대한 제거를 포함합니다.
 * 모든 이전 확장 (OS-FEDERATION, OS-OAUTH1, OS-ENDPOINT-POLICY 및 OS-EP-FILTER)이 디폴트로 활성화되고, "experimental" 또는 "stable"로 상응하여 표기되었습니다.
 * SQL 스키마 다운그레이드가 더 이상 지원되지 않습니다. 이 변경은 SQL 마이그레이션 다운그레이드가 충분히 테스트되지 않으며 많은 마이그레이션에서 발생하는 데이터 변경량에 대응하기 점차 어려워진다는 평가 결과에 의한 것입니다.
 * 다음 python 라이브러리들은 이제 필수 요소입니다: cryptography, msgpack-python, pysaml2 and oauthlib.
 * 사용으로 가 이제 deprecated되고 Liberty에서 제거 예정입니다.
 * ,,  ,  ,  ,  ,  ,  ,  과 같이 Eventlet에 특화된 구성 옵션이   구성 섹션에서  라는 새로운 구성 섹션으로 이동되었습니다. 비슷한 방식으로,  ,  ,  ,  ,  과 같은 Eventlet에 특화된 SSL 구성 옵션이   구성 섹션에서  로 이동되었습니다.
 * 로 인해 이 제거되었습니다.
 * 로 인해 가 제거되었습니다.
 * 로 인해  가 제거되었습니다.
 * 로 인해 가 제거되었습니다.
 * 로 인해 가 제거되었습니다.
 * 외부 도구 사용으로 인해 가 제거되었습니다.
 * 로 인해 가 제거되었습니다.
 * 외부 액세스 로깅으로 인해 가 제거되었습니다.
 * 로 인해 가 제거되었습니다.
 * 관련된 보안 강화 노력의 일부분으로  내  가 제거되었습니다.
 * 로 인해 가  에서 제거되었습니다.

새로운 주요 기능

 * Subnet allocation 시 주소정보를 직접 작성하지 않고 미리 정의된 주소pool로부터 subnet을 생성할 수 있습니다.
 * python-neutron-client에서 (관련기능) 지원(subnetpool-create/update/list/show/delete and subnet-create --subnetpool)
 * API 문서 작업 중
 * Horizon지원상황은 neutron-subnet-allocation blueprint에서 확인
 * DVR이 이제 VXLAN/GRE 뿐만 아니라 VLAN도 지원합니다.
 * ML2 계층화된 포트 바인딩
 * 새로운 LBaaS 버전 2 API
 * OVS ML2 드라이버를 위한 Portsecurity 지원
 * IPv6 다중 Prefixes (tenant guest interface에 복수의 IPv6 주소를 할당할 수 있습니다.)
 * IPv6 Router (guest들이 global IPv6주소를 할당받고 NAT지원없이 Internet에 접속할 수 있습니다.)
 * MTU (크기) 선택, (선택된 MTU 크기에 대해 guest OS)에 알리기 위한 API추가
 * NFV를 위한 VLAN trunking network 지원여부 확인 API 추가


 * Kilo에서 지원되는 새로운 플러그인들은 다음을 포함합니다:
 * A10 Networks LBaaS V2 드라이버
 * Brocade LBaaS V2 드라이버
 * MLX 및 ICX 스위치를 위한 Brocade ML2 드라이버
 * MLX 스위치를 위한 Brocade L3 라우팅 플러그인
 * Brocade Vyatta vRouter L3 플러그인
 * Brocade Vyatta vRouter Firewall 드라이버
 * Brocade Vyatta vRouter VPN 드라이버
 * Cisco CSR VPNaaS 드라이버
 * Dragonflow SDN 기반 분산 가상 라우터 L3 플러그인
 * Freescale FWaaS 드라이버
 * Intel Mcafee NGFW FWaaS 드라이버
 * IPSEC Strongswan VPNaaS 드라이버

알려진 이슈

 * Firewall-as-a-Service 프로젝트는 Kilo 릴리즈에서도 experimental로 표기됩니다.
 * 1438819 버그
 * 새로운 서브넷이 외부접속network에 생성될 때, 네트워크 게이트웨이의 모든 라우터들은 생성된 서브넷으로부터 새로운 주소를 할당 받습니다. IPv4 네트워크의 경우에, 이것은 전체 서브넷이 라우터 게이트웨이 포트들에 의해 소모되는 (문제를) 발생시킬 수 있습니다.

업그레이드 노트
Neutron은 Havana부터 (DHCP) lease (time) 데이터베이스를 지원하지 않았습니다 (https://bugs.launchpad.net/bugs/1202392). 그러나 지금까지 사용하지 않게된 환경 변수를 포함한 불필요한 코드들이 남아 있었습니다. 이 불필요한 코드를 제거하기 위해 (https://review.openstack.org/#/c/152398/), dhcp.filter가 수정되어야 합니다. 해당 라인:

dnsmasq: EnvFilter, dnsmasq, root, NEUTRON_NETWORK_ID=

를 다음과 깉이 수정합니다:

dnsmasq: CommandFilter, dnsmasq, root

확장 서비스들이 개별 패키지로 분리되고 서비스 각각 구성파일을 갖게되어(특히, etc/neutron/neutron_lbaas.conf, etc/neutron/neutron_fwaas.conf, etc/neutron/neutron_vpnaas.conf), 업그레이드 후에 활성화된 서비스 제공자들의 구성이 바뀔 수 있습니다. (특히, 디폴트 로드 밸런서(haproxy)와 vpn(openswan) 제공자들은 당신이 neutron.conf에 비활성화 했었더라도 활성화 될 수 있습니다.) 업그레이드 후에 서비스 제공자들이 원하는 상태로 되어있는지 점검하시기 바랍니다.

참고: neutron.conf 중에서 관련 서비스 플러그인이 로드되지 않은 경우에는 영향을 미치지 않습니다.


 * api_workers 기본값이 이제 호스트 내 CPU 개수와 일치합니다. 만일 현재 디폴트 값을 사용하는 경우, api_workers 값이 설치된 환경에 적절한 숫자로 설정되어 있는지 확인하십시오. (https://review.openstack.org/#/c/140493/)
 * neutron.allow_duplicate_networks 구성 옵션은 Kilo에서 deprecated되어 Liberty에서 제거되어, 디폴트 동작은 Neutron에서 동일 네트워크에 있는 인스턴스에 연결된 여러 포트를 단지 허용할 예정입니다. (https://review.openstack.org/163581)
 * linuxbridge 에이전트가 이제 디폴트로 VXLAN을 활성화합니다. (https://review.openstack.org/160826)
 * neutron-ns-metadata-proxy가 이제 non-root 권한으로 실행됩니다. (https://review.openstack.org/147437)

그 외 노트 (Deprecation/EOL 등)

 * Deprecation (비추천/폐지 예정)
 * Brocade VDX / VCS 시리즈에 해당하는 하드웨어 스위치에 대한 Brocade Monolithic 플러그인이 Liberty에서 deprecated 예정입니다. 이 플러그인으로 제공되는 기능은 현재 VDX 시리즈 하드웨어에 대한 사용 가능한 ML2 드라이버에 초점을 주고 있습니다. 해당 플러그인은 Liberty 출시 사이클 후에 제거 예정에 있습니다.
 * Nexus1000V에 대한 monolithic Cisco 메타 플러그인이 Liberty에서 deprecated 예정입니다. 이 플러그인으로 제공되던 기능은 현재 Nexus1000V ML2 메커니즘 드라이버로 사용 가능합니다. monolithic 플러그인은 Liberty 출시 사이클 후에 제거 예정에 있습니다.

새로운 주요 기능

 * 이번 릴리즈부터 계속해서 임의의 새로운 데이터베이스 스키마 업그레이드시 Cinder 서비스에 대한 즉각적인 재시작을 필요로하지 않을 것입니다. 해당 서비스가 이제 스키마 업그레이드와 독립적입니다. 이는 Cinder에 대해 롤링 업그레이드를 지원하는 것에 대한 일환입니다!
 * 기존 일관성 그룹으로부터 볼륨 추가/제거가 가능하게 되었습니다 자세한 정보에 대한 문서 읽기.
 * 기존 일관성 그룹 스냅샷에서 새 일관성 그룹을 만들 수 있게 되었습니다 자세한 정보에 대한 문서 읽기.
 * 스케줄러가 볼륨 백엔드를 어떻게 선택하는지를 설정하기 위해 보다 상세히 조정할 수 있는 필터/웨이터를 생성할 수 있습니다 자세한 정보에 대한 문서 읽기.
 * Cinder 백업 서비스를 사용하여 암호화된 볼륨 백업이 이제 가능합니다 자세한 정보에 대한 문서 읽기.
 * 개인 볼륨 유형을 생성할 수 있습니다. 이는 특정 tenant만 사용 가능한 볼륨 유형을 만들거나 새로운 볼륨 유형을 클라우드에서 사용하기 전에 테스트하기 위한 용도에 최적입니다. 이를 위해서는 cinder type-create --is-public을 사용합니다.
 * 씬-프로비저닝에 대한 오버-서브스크립션을 구성 가능합니다 자세한 정보에 대한 문서 읽기.
 * 볼륨 유형에 대한 설명을 추가할 수 있습니다. 이를 위해서는 cinder type-create 을 사용합니다.
 * Cinder가 이제 여러 iSCSI 경로 정보를 반환하여 iSCSI 커넥터가 첫 번째 경로가 다운된 경우에도 연결할 수 있습니다. (커넥터 다중 경로 기능을 사용하는 경우 또는 not 사용하지 않는 경우)
 * 로컬 lvm.conf 파일을 지정할 수 있습니다. LVM 드라이버를 사용하는 경우 이 옵션은 /etc/cinder/lvm.conf에서 Cinder 전용 lvm.conf 파일을 설정할 수 있습니다. 이를 통해 Cinder에서 사용하는 경우에만 선택되는 특정 LVM 설정과 필터를 활성화합니다.
 * Cinder 백업 서비스가 이제 NFS로 내보낸 파일시스템으로 백업할 수 있습니다 자세한 정보에 대한 문서 읽기.

업그레이드 노트

 * redis 위치를 지정하는 'host'라는 이름 충돌을 피하기 위해 cinder.conf에서 다중 스토리지 백엔드를 위한 'host' 구성 옵션이 'backend_host'로 이름 변경되었습니다. 이 옵션을 사용하는 경우, 구성 파일이 업데이트되어 있는지 확인하십시오.

새로운 주요 기능

 * pollster가 서비스 api를 동시에 쿼리하지 않도록 보장하기 위해 polling cycle에서의 jitter 추가를 지원합니다.
 * Ceilometer API RBAC 지원
 * 이벤트 지원 향상:
 * 이벤트에 대한 단일 처리 및 퍼블리싱을 활성화하기 위한 멀티 파이프라인 지원
 * 감사 및 사후 분석을 위한 raw 알림 메시지를 캡처하는 기능 활성화
 * ElasticSearch에 이벤트 저장 지원
 * 데이터베이스, http, file, kafka 및 oslo.messaging을 지원하는 메시지 큐에 발행 지원
 * 이벤트를 분할하여 각각 데이터베이스에 저장하는 옵션
 * Telemetry가 이제 모든 이벤트 유형 meter들을 이벤트로 수집 및 저장을 지원합니다. 새로운 옵션으로, disable_non_metric_meters가 추가되어 전체 이벤트 유형을 샘플로 저장하는 기능에 대해 끌 수 있도록 구성에서 제공합니다. 자세한 내용은 Telemetry 구성 레퍼런스를 참조하십시오.
 * 새로운 이벤트 섹션과 함께 OpenStack 매뉴얼 관리자 가이드가 업데이트되었습니다. 해당 기능에 대한 자세한 정보를 찾을 수 있습니다.
 * 개선된 파이프라인 발행 지원:
 * Kafka or HTTP 타겟에 이벤트 및 샘플 발행 지원
 * 데이터를 여러 큐에 발행
 * 추가된 meter
 * Hyper-V용 메모리 및 디스크 meter
 * LibVirt 용 디스크 meter
 * NodeManager에서의 전원, 온도 관련 IPMI meter, 다른 meter
 * Ceph meter 기능
 * Ceilometer에서 udp publisher 및 collector에 대한 IPv6 지원 활성화
 * ceilometer-collector를 위한 Gnocchi dispatch 지원
 * 자발적 비활성화가 가능한 pollster 메커니즘

업그레이드 노트
statistics: ceilometer statistics -m instance -g resource_metadata.instance_type
 * Deprecate된 meter:
 * instance: meter가 Kilo 릴리즈에서 deprecated됩니다. flavor에 기반한 샘플 또는 통계를 가져오기 위해 다음 쿼리를 사용할 수 있습니다:

samples: ceilometer sample-list -m instance -q metadata.instance_type=
 * Swift를 meter하기 위해 사용되던 미들웨어가 Ceilometer 내 패키징되었었는데 이제 deprecated됩니다. 라이브러리 eilometermiddleware로 이제 분리됩니다.
 * Juno 구성: http://docs.openstack.org/juno/install-guide/install/apt/content/ceilometer-swift.html
 * Kilo 구성: http://docs.openstack.org/kilo/install-guide/install/apt/content/ceilometer-swift.html

새로운 주요 기능

 * 중첩 스택 사용시 스케일링 향상
 * Heat은 템플릿을 기반으로 모든 리소스에 대해 RPC 액션을 취합니다. 이는 대규모의 복잡한 스택을 다룰 때 로드를 분산하도록 도와줍니다.
 * oslo 버전화된 객체
 * 데이터베이스 계층이 이제 추후 업그레이드를 도울 수 있도록 oslo 버전화된 객체를 사용합니다. 이는 이전 스키마를 가진 데이터베이스를 사용하면서 heat-engine을 새롭게 업그레이드 가능합니다. 참고로 해당 기능은 Kilo로 업그레이드에 도움을 주는 것은 아닙니다.
 * 새로운 템플릿 함수
 * "digest"과 "repeat" 2개의 새로운 함수가 포함된 새로운 HOT 템플릿 버전 "20150430"입니다.
 * Multiregion 스택
 * http://docs.openstack.org/hot-reference/content/OS__Heat__Stack.html
 * Heat 서비스 액세스
 * 관리자는 이제 다른 프로젝트와 마찬가지로 서비스에 액세스합니다. 이는 "heat-manage service-list"와 horizon을 통한 형태입니다. 이 기능은 활성화된 heat-engines을 보고합니다.
 * nova 및 neutron 속성에 대한 개선된 검증.
 * 주어진 리소스에 대한 스택 생성 / 업데이트 일시 정지 (스택 hook)
 * http://specs.openstack.org/openstack/heat-specs/specs/juno/stack-breakpoint.html
 * http://docs.openstack.org/developer/heat/template_guide/environment.html?highlight=hooks#pause-stack-creation-update-on-a-given-resource
 * 새로 추가된 자원
 * Mistral 자원
 * gnocchi 알람 https://blueprints.launchpad.net/heat/+spec/ceilometer-gnocchi-alarm
 * Project, Role, User 및 Group에 대한 Keystone v3 서버 지원에 따른 keystone 자원
 * 스택 라이프사이클 스케줄러 힌트
 * 소프트웨어-구성 개선
 * 배포 시그널에 대한 Swift TempURL 사용 옵션 http://specs.openstack.org/openstack/heat-specs/specs/kilo/software-config-swift-signal.html
 * 스택 외부에서 heat 명령줄로부터 배포 생성 및 모니터링 http://specs.openstack.org/openstack/heat-specs/specs/kilo/software-config-trigger.html

업그레이드 노트

 * 디폴트 구성 옵션 "num_engine_workers"가 기존 1에서 CPU 개수에 기반한 개수로 변경되었습니다. 이는 다른 프로젝트들에서 worker 개수를 설정하는 것과 이제 같은 방식입니다.
 * "max_nested_stack_depth" 디폴트 구성 옵션이 5로 증가되었습니다.
 * 새로운 구성 옵션 "convergence"는 기본값이 off입니다. 해당 기능은 아직 불완전하여 이 옵션을 off 상태로 두어야 합니다.
 * 다가오는 주요 기능 (convergence) 준비로 DC 스키마에 대한 상당한 변화가 있습니다. 스키마 업그레이드 도중 heat-engine을 중단할 것을 권장합니다.

Deprecation

 * OS::Heat::HARestarter 와 OS::Heat::CWLiteAlarm 자원들이 deprecated 됩니다.
 * The CloudWatch API (heat-api-cw)

새로운 주요 기능

 * 비동기 GTID 복제 (MySQL 5.6의 새로운 기능) 기반의 새로운 복제 방식에 대응
 * API 요청 하나에서 단일 마스터로부터의 여러 복제 생성을 이제 지원합니다.
 * 이제 새로운 'eject-master' API를 사용하여 응답하지 않는 마스터를 가장 최신의 슬레이브로의 장애 조치를 실현 가능하도록 지원합니다.
 * Trove 게스트 관리자에서 다음 새로운 데이터 저장소의 지원이 추가되었습니다:
 * Vertica, and Vertica Cluster
 * DB2
 * CouchDB
 * 확장된 현재 관리 API 계층 :
 * 삭제된 trove 인스턴스를 나열 및 보기를 지원하는 새로운 관리 API가 이제 있습니다.
 * RPM 메커니즘을 통해 데이터 저장소 게스트 에이전트에 ping을 수행하는 새로운 관리 API가 또한 추가되었습니다.
 * Trove 인스턴스 재조정 지원에 대한 Horizon 업데이트
 * 사용자가 Trove 인스턴스 이름을 수정/갱신 가능합니다.
 * OpenStack 프로젝트 공통 프로파일링 라이브러리 (OSProfiler)와 통합

업그레이드 노트

 * deprecated된 oslo-incubator 메시징 코드에서 공식 oslo.messaging python 모듈로 마이그레이션되었습니다. 이를 지원하기 위해 추가된 변경 (이력)된 구성 값들에 대한 자세한 사항은 git.openstack.org/cgit/openstack/trove/tree/etc/trove/trove.conf.sample#n18 에서 확인할 수 있습니다.
 * 임의의 CI에서 현재 테스트되지 않은 데이터저장소 및 방침들이 살펴보는 모듈에 해당하는 'experimental' 섹션으로 이동되었습니다. 데이터저장소와 방침들이 CI에서 적절한 테스트 실행 및 단계가 이루어지게 되면 'stable'로 졸업할 것입니다.
 * 다양한 데이터 저장소 Trove 게스트 이미지를 만드는 법을 설명하는 새로운 문서가 http://docs.openstack.org/developer/trove/dev/building_guest_images.html에 추가되었습니다.

새로운 주요 기능

 * 새로운 플러그인, 기능 및 버전:
 * MAPR
 * Apache Storm
 * Apache Hadoop 2.6.0이 추가되어, Apache Hadoop 2.4.1은 deprecated되었습니다.
 * HDFS, YARN, Spark, Oozie, HBase, ZooKeeper 및 기타 서비스에 대응하는 CDH 플러그인을 위한 새로운 서비스
 * Floating IP 사용을 개선하는 간접적인 VM 액세스 추가
 * 프로비저닝 진행 상태에 관한 상세한 정보를 살펴보기 위한 이벤트 로그 지원 추가
 * 플러그인 단위의 옵션 디폴트 노드 그룹 및 클러스터 템플릿
 * Horizon 업데이트:
 * 가이드화된 클러스터 생성 및 job 실행
 * 객체 검색에서의 필터링
 * 노드 그룹 템플릿과 클러스터 템플릿 편집이 구현되었습니다.
 * Oozie를 실행하는 클러스터에 대한 Shell Job 유형 추가
 * 지원하는 Job 유형 목록을 질의하는 새로운 Job 유형 endpoint

업그레이드 노트
세부 내용: http://docs.openstack.org/developer/sahara/userdoc/upgrade.guide.html#juno-kilo


 * Sahara는 이제 policy.json 구성 파일을 필요로합니다.

상태 머신
Ironic은 이제 각 노드가 관리하는 논리 상태에 대한 형식 모델을 사용합니다 (새로운 Ironic 상태 머신). 이를 통해 2개의 새로운 프로세스가 추가되었습니다: cleaning 및 inspection.
 * 테넌트 간 자동 디스크 삭제가 디폴트로 활성화됩니다. 이는 펌웨어 재적용, BIOS 설정 리셋 등과 같은 부가적인 cleaning 단계를 수행하도록 확장 가능합니다 (노드 클리닝).
 * in-band 및 out-of-band 메서드 모두 하드웨어 inspect에 사용 가능합니다. 해당 메서드들은 자동으로 Node 속성들을 갱신하는 데 사용 가능합니다 (하드웨어 검사).

버전 헤더
Ironic REST API는 각 HTTP[S] 요청에 전달되는 헤더가 새로운 X-OpenStack-Ironic-API-Version가 되도록 기대합니다. 해당 헤더를 통해 클라이언트 및 서버가 상호 지원되는 인터페이스를 확인할 수 있습니다 (REST API "마이크로" 버전). 해당 헤더가 없는 경우, REST 서비스는 디폴트로 호환성 모드로 동작하고 Juno 클라이언트들과 호환되는 응답을 반환합니다. 그러나, 이 모드에서는 Kilo에서 소개된 대부분의 기능에 액세스가 금지됩니다.

하드웨어 드라이버 변경사항
다음 새로운 드라이버들이 추가되었습니다:
 * AMT
 * iRMC
 * VirtualBox (테스팅 드라이버만)

기존 드라이버에 다음과 같은 개선이 있었습니다:
 * 필요한 경우 메타데이터 서비스 위치에서 "에이전트" 드라이버로 Configdrives를 사용할 수 있습니다.
 * 시리얼 콘솔에 SeaMicro 드라이버 지원
 * iLO 드라이버가 UEFI 보안 부팅을 지원합니다.
 * iLO driver가 out-of-band 노드 검사를 지원합니다.
 * iLO driver가 클리닝 도중 ilo 및 bios 리셋을 지원합니다.

서드파티 및 (소스) 트리 외부 드라이버에 대한 지원에 있어 다음 2가지 기능이 향상되었습니다:
 * 드라이버는 Node에 대한 자신의 "내부" 정보를 저장할 수 있습니다.
 * 드라이버는 Conductor에 의해 실행되는 자체 주기적인 작업들을 등록할 수 있습니다.
 * vendor_passthru 메서드가 이제 부가적인 HTTP 메서드 (예, PUT과 POST)를 지원합니다.
 * vendor_passthru 메서드를 이제 REST API에서 검색 가능합니다. node vendor passthru 및 driver vendor passthru를 참조하십시오.

기타 변화 사항

 * 표준 UUID 이외에 노드를 지정하는 데 있어 논리 이름을 사용할 수 있습니다.
 * 다양한 로컬 디스크가 포함된 서버에 대해, hints가 OS가 프로비저닝된 디스크 장치에 영향을 주도록 지정할 수 있습니다.
 * 커널, 램디스크 및 인스턴스 이미지를 HTTP[S] 소스로부터 직접 가져오는 지원이 추가되어 Glance와의 의존성을 제거하였습니다. ironic을 단일 서비스로 사용
 * Node를 REST API를 통해 유지관리 모드로 위치시킬 수 있습니다. 이 때, 옵션에 해당하는 유지관리 이유를 지정할 수 있습니다.

알려진 이슈

 * 1개 이상의 nova-compute 프로세스에 대한 실행은 공식적으로 지원하지 않습니다.
 * Ironic에 1개 이상의 nova-compute 프로세스를 Ironic과 함께 실행하게 도와주는 ClusteredComputeManager가 포함되어 있지만, expermental 상태로 간주되고 있으며 많은 알려진 문제점들이 있습니다.
 * "agent" 배포 메커니즘을 사용하는 드라이버들은 "rebuild --preserve-ephemeral"를 지원하지 않습니다.

업그레이드 노트

 * IPMI 암호는 REST API 응답에서 이제 난독화됩니다. 이는 API 정책 설정을 변경하여 비활성화 가능합니다.
 * "agent" 클래스에 해당하는 드라이버들은 이제 전체 디스크 및 파티션 기반 이미지들을 지원합니다.
 * "pxe_deploy_kernel" 및 "pxe_deploy_ramdisk"에 대한 driver_info 파라메터는 deprecated되어 "deploy_kernel" 및 "deploy_ramdisk"를 권장합니다.
 * vendor_passthru 메서드의 자체 버전을 구현한 드라이버들은 deprecated되어 새로운 @passthru 데코레이터를 권장합니다.

Juno에서 Kilo로
권장하는 업그레이드 과정이 여기에 문서화되어 있습니다:
 * http://docs.openstack.org/developer/ironic/deploy/upgrade-guide.html#upgrading-from-juno-to-kilo

Icehouse "nova-baremetal"로부터의 업그레이드
"baremetal" 드라이버를 사용한 Icehouse Nova 설치로부터 직접 Kilo Ironic으로의 업그레이트는 테스트되지 않았으며 미지원합니다. 대신, 다음 업그레이드 경로를 따르십시오:
 * 1) Icehouse Nova "baremetal" -> Juno Nova "baremetal"
 * 2) Juno Nova "baremetal" -> Juno Ironic
 * 3) Juno Ironic -> Kilo Ironic

단계 1 및 2에 대한 문서를 확인 가능합니다: https://wiki.openstack.org/wiki/Ironic/NovaBaremetalIronicMigration

OpenStack Documentation

 * 새로운 docs.openstack.org 기반 페이지와 최종 사용자 가이드 및 관리자 가이드에 대한 새로운 웹 디자인
 * 네트워킹 가이드에 대한 첫 릴리즈
 * 최종 사용자 가이드와 관리자 가이드에 대한 RST로의 마이그레이션
 * 새로운 스페셜리티 팀:
 * 설치 가이드
 * 네트워킹 가이드
 * 고가용성 가이드
 * 네트워킹 가이드
 * 사용자 가이드 (관리자 및 최종 사용자)
 * 첫 App 튜토리얼 sprint
 * 드라이버 문서 명확화 및 연결