Skip to content

Commit 66d96fa

Browse files
authored
[telemetry] Adding server and dsmsroot certs to start telemetry in auth mode (#1716)
Adding server and dsmsroot certs to start telemetry in auth mode - Declare server key/cer/csr under /group/all/vars inside telemetry_certs.yml - Create variables to hold values from telemetry_certs.yml - Create server and dsmsroot certs using private key and csr - Copy all certs on localhost - Copy certs from localhost to SONiC DUT
1 parent a70b44d commit 66d96fa

2 files changed

Lines changed: 142 additions & 1 deletion

File tree

ansible/config_sonic_basedon_testbed.yml

Lines changed: 132 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,137 @@
122122
delegate_to: localhost
123123
when: local_minigraph is defined and local_minigraph|bool == true
124124

125+
- block:
126+
- name: Init telemetry keys
127+
set_fact:
128+
server_key: ""
129+
server_csr: ""
130+
server_cer: ""
131+
dsmsroot_key: ""
132+
dsmsroot_csr: ""
133+
dsmsroot_cer: ""
134+
dir_path: ""
135+
136+
- name: read server key
137+
set_fact:
138+
server_key: "{{ telemetry_certs['server_key'] }}"
139+
when: telemetry_certs['server_key'] is defined
140+
141+
- name: read server csr
142+
set_fact:
143+
server_csr: "{{ telemetry_certs['server_csr'] }}"
144+
when: telemetry_certs['server_csr'] is defined
145+
146+
- name: read server cer
147+
set_fact:
148+
server_cer: "{{ telemetry_certs['server_cer'] }}"
149+
when: telemetry_certs['server_cer'] is defined
150+
151+
- name: read dsmsroot key
152+
set_fact:
153+
dsmsroot_key: "{{ telemetry_certs['dsmsroot_key'] }}"
154+
when: telemetry_certs['dsmsroot_key'] is defined
155+
156+
- name: read dsmsroot csr
157+
set_fact:
158+
dsmsroot_csr: "{{ telemetry_certs['dsmsroot_csr'] }}"
159+
when: telemetry_certs['dsmsroot_csr'] is defined
160+
161+
- name: read dsmsroot cer
162+
set_fact:
163+
dsmsroot_cer: "{{ telemetry_certs['dsmsroot_cer'] }}"
164+
when: telemetry_certs['dsmsroot_cer'] is defined
165+
166+
- name: read directory path
167+
set_fact:
168+
dir_path: "{{ telemetry_certs['dir_path'] }}"
169+
when: telemetry_certs['dir_path'] is defined
170+
171+
- name: Create telemetry directory
172+
file:
173+
path: "{{ dir_path }}"
174+
state: directory
175+
mode: '0755'
176+
become: true
177+
delegate_to: localhost
178+
179+
- name: Create telemetry server private key
180+
openssl_privatekey:
181+
path: "{{ server_key }}"
182+
size: 2048
183+
mode: '0755'
184+
become: true
185+
delegate_to: localhost
186+
187+
- name: create telemetry server csr
188+
openssl_csr:
189+
path: "{{ telemetry_certs['server_csr'] }}"
190+
privatekey_path: "{{ server_key }}"
191+
become: true
192+
delegate_to: localhost
193+
194+
- name: Generate a Self Signed OpenSSL telemetry server certificate
195+
openssl_certificate:
196+
path: "{{ server_cer }}"
197+
privatekey_path: "{{ server_key }}"
198+
csr_path: "{{ server_csr }}"
199+
subject:
200+
commonName: ndastreamingservertest
201+
provider: selfsigned
202+
become: true
203+
delegate_to: localhost
204+
205+
- name: Create telemetry dsmsroot private key
206+
openssl_privatekey:
207+
path: "{{ dsmsroot_key }}"
208+
size: 2048
209+
mode: '0755'
210+
become: true
211+
delegate_to: localhost
212+
213+
- name: create telemetry dsmsroot csr
214+
openssl_csr:
215+
path: "{{ dsmsroot_csr }}"
216+
privatekey_path: "{{ dsmsroot_key }}"
217+
become: true
218+
delegate_to: localhost
219+
220+
- name: Generate a Self Signed OpenSSL telemetry dsmsroot certificate
221+
openssl_certificate:
222+
path: "{{ dsmsroot_cer }}"
223+
privatekey_path: "{{ dsmsroot_key }} "
224+
csr_path: "{{ dsmsroot_csr }} "
225+
subject:
226+
commonName: ndastreamingclienttest
227+
provider: selfsigned
228+
become: true
229+
delegate_to: localhost
230+
231+
- name: Creates telemetry directory
232+
file:
233+
path: "{{ dir_path }}"
234+
state: directory
235+
mode: '0755'
236+
become: true
237+
238+
- name: copy server_key from local to remote
239+
copy:
240+
src: "{{ server_key }}"
241+
dest: "{{ server_key }}"
242+
become: yes
243+
244+
- name: copy server_cer from local to remote
245+
copy:
246+
src: "{{ server_cer }}"
247+
dest: "{{ server_cer }}"
248+
become: yes
249+
250+
- name: copy dsmsroot_key from local to remote
251+
copy:
252+
src: "{{ dsmsroot_key }}"
253+
dest: "{{ dsmsroot_key }}"
254+
become: yes
255+
125256
- block:
126257
- name: saved original minigraph file in SONiC DUT(ignore errors when file doesnot exist)
127258
shell: mv /etc/sonic/minigraph.xml /etc/sonic/minigraph.xml.orig
@@ -140,7 +271,7 @@
140271
delegate_to: localhost
141272

142273
- name: debug print stat_result
143-
debug:
274+
debug:
144275
msg: Stat result is {{ stat_result }}
145276

146277
- name: Copy corresponding configlet files if exist
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Configure telemetry server and dsmsroot key,cer
2+
3+
telemetry_certs:
4+
server_key: "/etc/sonic/telemetry/streamingtelemetryserver.key"
5+
server_csr: "/etc/sonic/telemetry/streamingtelemetryserver.csr"
6+
server_cer: "/etc/sonic/telemetry/streamingtelemetryserver.cer"
7+
dsmsroot_key: "/etc/sonic/telemetry/dsmsroot.key"
8+
dsmsroot_csr: "/etc/sonic/telemetry/dsmsroot.csr"
9+
dsmsroot_cer: "/etc/sonic/telemetry/dsmsroot.cer"
10+
dir_path: "/etc/sonic/telemetry"

0 commit comments

Comments
 (0)