You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Prerequisiti

  • aver configurato correttamente kubectl usando il plugin kubectl-openstack
  • aver verificato che esista nel progetto CloudVeneto il security group K8S cosi' definito:

    EgressIPv4AnyAny0.0.0.0/0
    EgressIPv6AnyAny::/0
    IngressIPv4ICMPAny0.0.0.0/0
    IngressIPv4TCP22 (SSH)0.0.0.0/0
    IngressIPv4TCPAny192.168.60.0/24
    IngressIPv4UDPAny192.168.60.0/24
    IngressIPv4TCPAny10.64.0.0/16
    IngressIPv4UDPAny10.64.0.0/16

Come creare un nuovo nodo

Per creare un nuovo nodo si usa kubectl, l'interfaccia standard di Kubernetes. Nello specifico il comando da utilizzare e' kubectl apply che richiede in input un file yaml.

Il file yaml richiesto per creare un nuovo nodo deve avere la seguente struttura:

---
apiVersion: osnode.infn.it/v1
kind: OpenStackNode
metadata:
  name: NODE_NAME
spec:
  flavor: FLAVOR_NAME
  keyPair: KEYPAIR_NAME
  policy: [shared | private ]


  • NODE_NAME: e' il nuovo univoco del nodo
  • FLAVOR_NAME: e' il nome del flavor definito in CloudVeneto
  • KEYPAIR_NAME: indica la chiave ssh definita dall'utente
  • shared | private: sono le due opzioni che indicano se condividere o meno il nodo con altri utenti appartenenti allo stesso progetto CloudVeneto

Nel seguente esempio, si richiede la creazione di due nodi (osn-01 e osn-02), il primo di tipo shared ed il secondo private e con flavor diversi, rispettivamente cloudveneto.medium e cloudveneto.large. La chiave ssh (keypair) e' la stessa per entrambi (my-key):

osnode.yml
---
apiVersion: osnode.infn.it/v1
kind: OpenStackNode
metadata:
  name: osn-01
spec:
  flavor: cloudveneto.medium
  keyPair: my-key
  policy: shared

---
apiVersion: osnode.infn.it/v1
kind: OpenStackNode
metadata:
  name: osn-02
spec:
  flavor: cloudveneto.large
  keyPair: my-key
  policy: private

$ kubectl apply -f osnode.yml
openstacknode.osnode.infn.it/osn-01 created
openstacknode.osnode.infn.it/osn-02 created

Come verificare lo stato di uno nodo o piu' nodi

Per verificare lo stato di un nodo si usa il comando kubectl get osn -o wide (l'opzione -o wide aggiunge informazioni relative alla VM):

$ kubectl get osn
NAME     PHASE     OWNER                 POLICY    PROVIDER      VM IPV4       AGE
osn-01   Running   zangrand-at-infn.it   private   CloudVeneto   10.64.53.40   169m
osn-02   Running   zangrand-at-infn.it   shared    CloudVeneto   10.64.53.67   169m

$ kubectl get osn -o wide
NAME     PHASE     OWNER                 POLICY    PROVIDER      VM FLAVOR            VM STATUS   VM IPV4       AGE
osn-01   Running   zangrand-at-infn.it   private   CloudVeneto   cloudveneto.medium   ACTIVE      10.64.53.40   169m
osn-02   Running   zangrand-at-infn.it   shared    CloudVeneto   cloudveneto.medium   ACTIVE      10.64.53.67   169m



  • No labels