esup-pod

Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.


Avertissement

Les commandes suivantes ont été lancées sur une distribution Debian 11.4

Sommaire

Environnement

Création de l'utilisateur Pod

...

Bloc de code
pod@pod:~$ sudo python3 -V
pod@pod:~$ sudo python -V
pod@pod:~$ sudo apt-get install -y python3-pip
pod@pod:~$ sudo pip3 install virtualenvwrapper

Depuis python 3.10, il n'est plus possible d'installer avec pip en dehors d'un environnement. Pour pouvoir installer virtualenvwrapper il faut ajouter à la fin de la ligne --break-system-packages


À la fin du .bashrc, il faut ajouter ces lignes :

...

Générer l'utilisateur pod pour ES :

Bloc de code
cd /etc/elasticsearch/
touch users
touch users_roles
chown root:elasticsearch users
chown root:elasticsearch users_roles
sudo /usr/share/elasticsearch/bin/elasticsearch-users useradd pod -p podpod -r superuser

...

Copier le fichier .p12 dans /etc/elasticsearch/

Bloc de code
sudo cp elastic-/usr/share/elasticsearch/elastic-stack-ca.p12 /usr/share/elasticsearch/elastic-certificates.p12 /etc/elasticsearch/
sudo chown pod:pod /etc/elasticsearch/elastic-stack-ca.p12 /etc/elasticsearch/elastic-certificates.p12
sudo chmod +r /etc/elasticsearch/elastic-stack-ca.p12 /etc/elasticsearch/elastic-certificates.p12

Dans /etc/elasticsearch/elasticsearch.yml :

...

Bloc de code
(django_pod3) pod@pod:/usr/share/elasticsearch$ cd ~/django_projects/podv3
(django_pod3) pod@pod:~/django_projects/podv3$ python manage.py create_pod_index
DELETE http://127.0.0.1:9200/pod [status:404 request:0.140s]
An error occured during index video deletion: 404-index_not_found_exception : no such index
Successfully create index Video
(django_pod3) pod@pod:~/django_projects/podv3$ curl -XGET "127.0.0.1:9200/pod/_search"
{"took":35,"timed_out":false,"_shards":{"total":2,"successful":2,"skipped":0,"failed":0},"hits":{"total":0,"max_score":null,"hits":[]}}

Si vous déportez l'elastic search sur une autre machine, rajoutez dans le fichier settings_local.py son URL d'accès :la commande python ne fonctionne pas, créez d'abord l'index à la main avec un curl  -XPUT "http://127.0.0.1:9200/pod" (options -k --noproxy -u <user>:<pwd> à prévoir si ES8 en mode security)


Si vous déportez l'elastic search sur une autre machine, rajoutez dans le fichier settings_local.py son URL d'accès :

Bloc de code
(
Bloc de code
(django_pod3) pod@pod:~/django_projects/podv3$ vim pod/custom/ vim pod/custom/settings_local.py

Copiez la ligne suivante :

Bloc de code
ES_URL = ['http://elastic.domaine.fr:9200/']


Avec le mode security et ES8, vous devrez parametrer les éléments suivants dans votre settings_local.py

...

Copiez la ligne suivante :

Bloc de code
languagepy
ES_URL = ['httphttps://elastic127.0.domaine0.fr1:9200/'] # ou votre instance déportée
ES_OPTIONS = {'verify_certs' : False, 'basic_auth' : ('es_user', 'password')} 


Installation des dépendances

...

Bloc de code
(django_pod3) pod@pod:~/django_projects/podv3$ sudo apt-get update
(django_pod3) pod@pod:~/django_projects/podv3$ sudo apt-get install -y ca-certificates curl gnupg
(django_pod3) pod@pod:~/django_projects/podv3$ sudo mkdir -p /etc/apt/keyrings
(django_pod3) pod@pod:~/django_projects/podv3$ curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
(django_pod3) pod@pod:~/django_projects/podv3$ NODE_MAJOR=18 && echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
(django_pod3) pod@pod:~/django_projects/podv3$ sudo apt update && sudo apt install -y nodejs
(django_pod3) pod@pod:~/django_projects/podv3$ sudo corepack enable


Info
titleCentOS

Alternativement, si vous êtes sur CentOS 8, installez les dépendances nodejs+npm et yarn ainsi :

root@pod:~/$ dnf module reset nodejs
root@pod:~/$ dnf module enable nodejs:14
root@pod:~/$ dnf module -y update nodejs
root@pod:~/$ yum install nodejs
root@pod:~/$ npm install yarn -g

...


Vous trouverez l'ensemble des variables disponibles sur cette page :

Configuration de la plateforme

SuperUtilisateur

Il faut créer un premier utilisateur qui aura tous les pouvoirs sur votre instance.

...

--> exemple : (django_pod3) pod@pod:~/django_projects/podv3$ python manage.py runserver pod.univ.fr:8080 --insecure

- Attention -

...

Quand le site est lancé, il faut se rendre dans la partie administration puis dans site pour renseigner le nom de domaine de votre instance de Pod (par défaut 'example.com').

Avant la mise en production, il faut vérifier le fonctionnement de la plateforme dont l'ajout d'une vidéo, son encodage et sa suppression.

Attention, pour ajouter une vidéo, il doit y avoir au moins un type de vidéo disponible. Si vous avez correctement peuplé votre base de données avec le fichier initial_data.json vous devez au moins avoir other/autres.

il faut vérifier l'authentification CAS, le moteur de recherche etc.