Accéder au contenu principal

Testing crossplane on Digital ocean

 

Crossplane brings the management of external resources into kubernetes through kubernetes APIs. This can in some situations be an alternative to other IaC such as terraform. 

In the example below, we will create a droplet on DO by applying a kubernetes manifest using kubectl.

The exemple suppose the kubernetes cluster in which crossplane will be installed is already up.


```bash
kubectl create namespace crossplane-system
helm repo add crossplane-stable https://charts.crossplane.io/stable
helm repo update


# install crossplane
helm install crossplane --namespace crossplane-system crossplane-stable/crossplane


# install the upjet digital ocean provider
cat <<EOF | kubectl apply -f -
apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
name: provider-upjet-digitalocean
spec:
package: crossplane-contrib/provider-upjet-digitalocean:v0.3.0
EOF


# create the upjet digital ocean provider secret
kubectl apply -f - <<EOF
apiVersion: v1
kind: Secret
metadata:
namespace: crossplane-system
name: upjet-digitalocean-creds
type: Opaque
data:
credentials: "$(echo -n '{"token":"dop_v1_***"}' | base64)" # provide the DO token
EOF




# create the upjet digital ocean config
kubectl apply -f - <<EOF
apiVersion: digitalocean.crossplane.io/v1beta1
kind: ProviderConfig
metadata:
name: do-upjet
spec:
credentials:
source: Secret
secretRef:
namespace: crossplane-system
name: upjet-digitalocean-creds
key: credentials
EOF



# create a droplet to test
kubectl apply -f - <<EOF
apiVersion: droplet.digitalocean.crossplane.io/v1alpha1
kind: Droplet
metadata:
name: example-droplet
spec:
forProvider:
name: example-droplet # This is required!
region: nyc3
size: s-1vcpu-1gb
image: ubuntu-20-04-x64
sshKeys: [] # Optional: Add your SSH key fingerprint(s)
backups: false
ipv6: false
monitoring: false
tags: ["crossplane", "demo"]
providerConfigRef:
name: do-upjet
EOF



Commentaires

Posts les plus consultés de ce blog

À quoi sert une carte ?

Il n’existe pas de planisphère exact. Il n’existe que des planisphères utiles, chacun pour une question précise. Petit tour des cartes que nous utilisons déjà tous les jours sans le savoir. Ouvrez trois cartes du monde. Sur la première, le Burkina Faso est une petite tache au sud d’un Sahara immense, sous une Europe imposante et un Groenland de la taille d’un continent. Sur la deuxième, l’Afrique s’est dilatée, le Groenland a fondu, mais la Norvège paraît écrasée comme sous une presse. Sur la troisième, la Terre est ronde, on voit l’Afrique entière et le Burkina au centre ; l’Australie, elle, a purement et simplement disparu. Laquelle est la vraie ? La question paraît légitime. Elle est pourtant mal posée, et c’est tout l’objet de cet article. Une carte n’est pas une photographie du monde ; c’est la réponse à une question. Avant de demander si une carte est juste, il faut demander à quoi elle doit servir. Le géomètre, le pilote, le climatologue, l’imam et l’élève ne posent pas la...

Gérer les requêtes USSD sur un MoDem avec les commandes AT

Introduction L'USSD (Universal Structured Service D) est un service des réseaux télécoms defini dans 3GPP TS 02.90 et dans 3GPP TS 23.090. Il permet à un terminal mobile d'effectuer des requetes ou une suite de requete à l'operateur. Il est courament utiliser pour consulter le solde. Dans ce tutoriel nous apprendrons à effectuer des requetes USSD depuis une connection serie avec une modem. Pré requis Pour utiliserons pour ce faire: un modem GSM (Huawei E1552) bien sur avec une carte SIM (AIRTEL Burkina) un ordinateur auquel sera connecte le modem un terminal (minicom) pour dialoger avec le modem depuis l'ordinateur perl, pour encoder et decoder les PDU Demarche Nous allons consulter le solde du compte de l'utilisateur. Pour l'opérateur courant il faut composer le code USSD *160#. connecter le modem Connectez le modem au port USB de l'ordinateur et retrouvez ses port series logiciels. Notre modem créé trois ports series (/dev/t...