[ English | English (United Kingdom) | 中文 (简体, 中国) | Indonesia | русский | français | नेपाली | Deutsch | Esperanto | português (Brasil) | español | 한국어 (대한민국) ]

Permana instalado

Ĉi tiu paĝo kovras la bazan instaladon de horizon en produkta medio. Se vi serĉas programista medion, vidu: ref: quickstart.

Por la sistemaj dependecoj, vidu: doc: ‘system-requirements’.

Instalado

Note

En la sekvaj komandoj, anstataŭigu “<release>” kun via versio elektita, kiel “queens” aŭ “rocky”.

Se vi uzas la evoluigan version, anstataŭigu “stable/<release>” kun “master”.

  1. Klonu Horizon

    $ git clone https://opendev.org/openstack/horizon -b stable/<release> --depth=1
    $ cd horizon
    
  2. Instalu la horizon python modulon en vian sistemon

    $ sudo pip install -c https://opendev.org/openstack/requirements/raw/branch/stable/<release>/upper-constraints.txt .
    

Konfiguron

Ĉi tiu sekcio enhavas malgrandan resumon de la kritikaj agordoj necesaj por kuri horizon. Por pliaj detaloj, bonvolu rilati al :ref: install-settings.

Agordoj

Create openstack_dashboard/local/local_settings.py. It is usually a good idea to copy openstack_dashboard/local/local_settings.py.example and edit it. As a minimum, the follow settings will need to be modified:

DEBUG

Agordi al False

ALLOWED_HOSTS

Agordu al vian domajno nomo(j)n

OPENSTACK_HOST

Agordu al la IP de via Keystone finpunkto. Vi eble bezonas ŝanĝi OPENSTACK_KEYSTONE_URL

Note

La sekvaj paŝoj en la sekcio “Agordo” estas laŭvolaj, sed tre rekomendindaj en produktado.

Tradukoj

Kompili tradukajn mesaĝo katalogojn por internaciigo. Ĉi tiu paŝo ne estas necesa, se vi ne bezonas subteni lingvojn krom la US angla. La GNU gettext ilo estas necesa por kompili mesaĝajn katalogojn.

$ sudo apt install gettext
$ ./manage.py compilemessages

Statikaj Aĵoj

Densigi viajn statikajn dosierojn aldonante COMPRESS_OFFLINE = True al viaj local_settings.py, tiam kuru la sekvajn komandojn

$ ./manage.py collectstatic
$ ./manage.py compress

Protokolado

Horizon uzas la mekanismon de agordo de protokolado de Django, kiu povas esti personecigita ŝanĝante la LOGGING vortaro en local_settings.py. Defaŭlte, la protokolada ekzemplo de Horizon agordas la log-nivelon al `` INFO``.

Horizon ankaŭ uzas kelkajn ekstera-liveranto (3rd-party) klientojn, kiuj protokoladas aparte. La log-nivelo por ĉi tiuj ankoraŭ povas esti kontrolita per la agordo de LOGGING de Horizon, tamen kondutoj povas varii preter la kontrolo de Horizon.

Por pliaj informoj pri agordado de protokolado en Horizon, bonvolu legi la Django-logging-directive kaj la Python-logging-directive dokumentado. Horizon estas konstruita sur Python kaj Django.

Seanco Memorilo

Horizon uzas la Seanca Framo de Django por manipuli seanco-datumon. Ekzistas multaj seancoj, kiuj estas elektitaj per la SESSION_ENGINE en via `` local_settings.py``-dosiero.

Memcached

SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.memcached.PyMemcacheCache',
        'LOCATION': 'controller:11211',
    }
}

Ekstera kaŝmemorigado uzante aplikaĵon kiel memcached ofertas persistadon kaj komunan memorilon, kaj povas esti tre utila por malgrandskala disponigo kaj / aŭ disvolviĝo. Tamen, por distribuitaj kaj treaj-disponeblaj scenaroj memcached havas proprajn problemojn, kiuj estas preter la amplekso de ĉi tiu dokumentado.

Postuloj:

  • Memcached servo kuranta kaj alirebla

  • Python memcached modulo instalita

Datumbazo

SESSION_ENGINE = 'django.core.cache.backends.db.DatabaseCache'
DATABASES = {
    'default': {
        # Database configuration here
    }
}

Datumbazo-subtenitaj seancoj estas skaleblaj (uzante taŭgan datumbazan strategion), persista, kaj povas esti alt-konkuraj kaj tre-disponebla.

La malfacilaĵo al ĉi tiu aliro estas, ke datumbazoj-subtenitaj seancoj estas unu el la pli malrapidaj memorilaj seancoj, kaj kaŭzas aldonan superfluon sub peza uzado. Propra agordo de via datumbazo disponigo povas ankaŭ esti grava entrepreno kaj ne estas parto de ĉi tiu dokumentado.

Kaŝmemorigita Datumbazo

Por mildigi la rendimentajn problemojn de datumbazoj, vi povas ankaŭ konsideri uzadon de la cached_db seanco de la interno de Django, kiu uzas vian datumbazon kaj kaŝmemoran infrastrukturon por realigi skrib-tra (write-through) caching kaj efika reakiro. Vi povas ebligi ĉi tiun hibridan agordon per agordado de via datumbazo kaj kaŝmemoro kiel diskutante supre kaj poste uzante

SESSION_ENGINE = "django.contrib.sessions.backends.cached_db"

Disponigo

  1. Agordu retservilon kun WSGI-subteno. Ekzemple instali la Apache retservilon sur Ubuntu

    $ sudo apt install apache2 libapache2-mod-wsgi
    

    Vi povas uzi kaj la provizita openstack_dashboard/wsgi.py aŭ krei openstack_dashboard/horizon_wsgi.py dosiero kun la sekva komando (kiu detektas, ĉu vi uzas virtulan medion aŭ ne por aŭtomate krei adaptitan WSGI dosieron)

    $ ./manage.py make_web_conf --wsgi
    

    Poste agordu la retservilon por gastigi OpenStack-panelon per WSGI. Por apache2 retservilo, vi eble bezonos krei /etc/apache2/sites-available/horizon.conf. La ŝablono en DevStack estas bona ekzemplo de la dosiero. https://opendev.org/openstack/devstack/src/branch/master/files/apache-horizon.template. Aŭ vi povas aŭtomate generi apaĉan agordan dosieron. Se vi antaŭe generis dosieron openstack_dashboard/horizon_wsgi.py ĝi uzos tion, alie defaŭlte uzos openstack_dashboard/wsgi.py

    $ ./manage.py make_web_conf --apache > /etc/apache2/sites-available/horizon.conf
    

    Same kiel supre sed se vi volas SSL-subtenon

    $ ./manage.py make_web_conf --apache --ssl --sslkey=/path/to/ssl/key --sslcert=/path/to/ssl/cert > /etc/apache2/sites-available/horizon.conf
    

    Defaŭlte la apache agordo lanĉos kelkajn apache procezojn egalajn al la numero de CPUs + 1 de la maŝino, sur kiu vi lanĉos la komandon make_web_conf. Se la cela maŝino ne estas la sama aŭ se vi volas specifi la nombron de procezoj, aldonu la opcion --processes

    $ ./manage.py make_web_conf --apache --processes 10 > /etc/apache2/sites-available/horizon.conf
    
  2. Ebligu la antaŭan agordon kaj restartu la servilon

    $ sudo a2ensite horizon
    $ sudo service apache2 restart
    

Sekvaj paŝoj

  • Settings Reference listigas la disponeblajn agordojn por horizon.

  • : ref: ‘instali-agordi’ priskribas kiel agordi horizon.